Net::SMTP 3.16 er ekki með fyrirframtengdan SOCKS-smið
Net::SMTP 3.16 skjalfestir engan smiðarvalkost fyrir fyrirframtengda innstungu. Haltu SMTP-kveðjunni, EHLO og TLS-röðinni óbreyttri þegar þú velur proxy-flutningssamþættingu.
Net::SMTP 3.16 skjalfestir ekki SOCKS- eða fyrirframtengda innstungusmiðarbreytu. Að vefja skráarlýsingu með arfgefna new_from_fd keyrir ekki SMTP-smið hans. Árangursrík SOCKS-tenging veitir straum, ekki frumstillt póstlotu.
Fyrir venjulegt SMTP, þar með talið síðari STARTTLS-uppfærslu, talar netþjónninn fyrst:
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 ...Þetta er skematískt; tilkynntar viðbætur eru mismunandi. Kveðjan sjálf getur spannað margar línur: svarkóði sem bandstrik fylgir heldur svarinu áfram, en síðasta lína hans endar það. Neyttu allri kveðjunni fyrir EHLO. Annars getur biðlarinn lesið gamalt 220 þegar hann væntir 250 frá EHLO og lent úr takti á heilbrigðri tengingu.
Óbeint TLS hefur aðra röð: SOCKS-tenging, TLS-handaband, síðan SMTP-kveðja inni í TLS. STARTTLS hefst með læsilegu kveðjunni og EHLO, uppfærir strauminn og fær síðan getu aftur.
Opinberi smiðurinn sér venjulega um innstungugerð, vistaðar tengibreytur og kveðjuupplýsingar, fyrsta svarið og EHLO með HELO-varaleið þar sem við á:
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;Þetta opinbera dæmi notar STARTTLS og stillir ekki SOCKS. Netþjónsnafnið velur póstáfangastað; Hello veitir SMTP-auðkenni biðlarans. Fyrir óbeint TLS skaltu nota skjalfesta SSL smiðarvalkostinn og port þjónustunnar.
SendHello => 0 bælir sjálfvirkt EHLO/HELO, ekki lestur kveðjunnar né byggingu flutningsins. Að kalla línulesara og svo hello() er heldur ekki skjalfest staðgengil fyrir frumstillingu: Net::Cmd flokkar lágstigs svarlesara sína sem verndaðar aðferðir undirflokks.
Ef SOCKS er skilyrði skaltu velja biðlara með studdu SOCKS-viðmóti eða halda við samþættingu við tiltekna Net::SMTP-útgáfu. Notaðu röðina hér að ofan sem samning hennar í stað þess að afrita einkareiti. Sérstakur TCP-adapter þarf líka vísvitandi TLS-auðkennimeðferð: vottorðið verður að auðkenna raunverulega póstþjónustuna og proxy-skírteini haldast aðskilin frá SMTP-innskráningu.