Net::SMTP 3.16 کې د مخکې نښلول شوی SOCKS جوړوونکی نشته
Net::SMTP 3.16 د مخکې نښلول شوي ساکټ لپاره مستند جوړوونکی انتخاب نه وړاندې کوي. د پراکسي لېږد ادغام غوره کولو پر مهال د SMTP سلام، EHLO او TLS ترتیب بدل نه کړئ.
Net::SMTP 3.16 د SOCKS یا مخکې نښلول شوي ساکټ د جوړوونکي پیرامیټر مستند نه کوي. د فایل تشریح د میراثي new_from_fd سره تړل د هغې SMTP جوړوونکی نه چلوي. بریالۍ SOCKS اړیکه یو بهیر ورکوي، نه پیل شوې برېښنالیک ناسته.
د ساده SMTP لپاره، په شمول د وروسته STARTTLS لوړول، سرور لومړی خبرې کوي:
SOCKS: connection to smtp.example.net:587 succeeds
server: 220 smtp.example.net ready
client: EHLO client.example.net
server: 250-smtp.example.net
server: 250-STARTTLS
server: 250 AUTH ...دا شماتیک دی؛ اعلان شوي غزونې توپیر لري. خود سلام کېدای شي څو کرښو ته وغځیږي: د ځواب کوډ چې وروسته یې د تړونکې کرښې وي ځواب ته دوام ورکوي، خو وروستۍ کرښه یې پای ته رسوي. د EHLO دمخه ټول سلام مصرف کړئ. که نه، کلاینټ کېدای شي زوړ 220 ولولي کله چې د EHLO 250 ته انتظار لري او په روغه اړیکه کې له تال ووځي.
پټ TLS بل ترتیب لري: SOCKS اړیکه، TLS لاس ورکول، بیا د TLS دننه SMTP سلام. STARTTLS د لوستلو وړ سلام او EHLO سره پیل کیږي، بهیر لوړوي او وروسته بیا وړتیاوې ترلاسه کوي.
عامه جوړوونکی معمولاً د ساکټ ترتیب، خوندي شوي اړیکې پیرامیټرونه او د سلام معلومات، لومړني ځواب او د EHLO سره د HELO بیرته راګرځېدل هغه چې مناسب وي سمبالوي:
use Net::SMTP;
my $smtp = Net::SMTP->new(
'smtp.example.net',
Port => 587,
Hello => 'client.example.net',
Timeout => 30,
) or die "SMTP connection failed: $@";
$smtp->starttls()
or die "STARTTLS failed: " . $smtp->message;دا عامه بېلګه STARTTLS کاروي او SOCKS نه ترتیبوي. د سرور نوم د برېښنالیک منزل ټاکي؛ Hello د کلاینټ SMTP هویت وړاندې کوي. د پټ TLS لپاره مستند SSL جوړوونکی انتخاب او د خدمت پورټ وکاروئ.
SendHello => 0 اتوماتیک EHLO/HELO ځپي، نه د سلام لوستل یا د لېږد جوړول. د کرښې لوستونکي غوښتل او بیا hello() غوښتل هم د پیل مستند بدیل نه دی: Net::Cmd خپل ټیټې کچې ځواب لوستونکي د ساتل شوو فرعي طبقې میتودونو په توګه طبقه بندي کوي.
که SOCKS اجباري وي، د ملاتړ شوي SOCKS انٹرفیس لرونکی کلاینټ غوره کړئ یا د ځانګړي Net::SMTP نسخې په وړاندې ادغام وساتئ. د شخصي ډګرونو د کاپي کولو پر ځای پورتنی ترتیب د هغې تړون په توګه وکاروئ. جلا TCP اډاپټر هم د TLS هویت پوهاوی غواړي: سند باید ریښتیني برېښنالیک خدمت وپېژني، او د پراکسي اعتبارونه د SMTP ننوتلو څخه جلا پاتې کیږي.