This is actually two related patches. The patch to tlshand.c fixes an inability to work with some POP servers. In particular some (e.g. the yahoo server that hosts AT&T service) do send 0 bytes with the certificate request, so I've removed the check for 0. The man page change just brings it up to date with the source code, specifically the existance of the pops and apops protocols. Reference: /n/sources/patch/applied/pops_tls Date: Wed Apr 15 18:13:59 CES 2009 Signed-off-by: blstuart@bellsouthnet --- /sys/src/libsec/port/tlshand.c Wed Apr 15 18:11:36 2009 +++ /sys/src/libsec/port/tlshand.c Wed Apr 15 18:11:29 2009 @@ -1150,7 +1150,7 @@ nn = get16(p); p += 2; n -= 2; - if(nn == 0 || n != nn) + if(n != nn) goto Short; /* cas */ i = 0; --- /sys/man/4/upasfs Wed Apr 15 18:11:41 2009 +++ /sys/man/4/upasfs Wed Apr 15 18:11:39 2009 @@ -266,9 +266,13 @@ .B apop cleartext POP with challenge-response (APOP) authentication .TP +.B pops +.TP .B poptls TLS-encrypted POP with password authentication .TP +.B apops +.TP .B apoptls TLS-encrypted POP with challenge-response (APOP) authentication .TP @@ -288,20 +292,16 @@ .B apoptls connect to port 110 in plaintext and start TLS using the POP STLS command. -.B Imaps -connects to port 993 and starts TLS before initiating the IMAP conversation. -There should probably be -.BR pops , -.BR apops , -and -.B imaptls -protocols as well. -.RB ( Pops +.B Pops and .B apops -would connect to port 995 and start TLS before initiating the POP conversation, -and +connect to port 995 and start TLS before initiating the POP conversation. +.B Imaps +connects to port 993 and starts TLS before initiating the IMAP conversation. +There should probably be an .B imaptls +protocol as well. +.RB ( Imaptls would connect to port 143 in plaintext and start TLS using the IMAP STARTTLS command. (That's the nice thing about standards\(emthere's so many to choose from.))