I only did a FSM version. Yours you have to answer that one.
maybe deleted messages should be completely ignored in all actions, so that they seem to be deleted immediately.
IIRC once deleted, messages cannot be "undelete" unless the port is shutdown and a new connection made.
you have to issue an RSET to undelete all messages at once.
and yes, they should be ignored in a positional scheme :)
You can RSET in transactional mode
@Andreas, did your pop3 scheme check every single line of data coming down for codes?
no, you only have to check the immediate response line or the line after that, depending on the command.
for message data (RETR) you know beforehand how many data you ought to receive.
then it's just a question if you want to rely on that, or be very defensive, assume the pop3 server is broken regarding size calculation and rather continuously check for `crlf #"." crlf` instead.
I'm being defensive and also checking for octet stuffing
unfortunately, quite a few pop3 servers indeed are broken in this regard, however, they typically err in giving too small sizes. so you can just read as much as you are told to and then switch to "dot-scanning".
Probably why my version times out on a 5Mb file after a minute
Graham, I made some corrections to the tls scheme so the problems(eg. write from connect and the port/data compatibility) you reported should be fixed. Please get it from here http://rebol.atwebpages.com/scripts/prot-tls.r and give it a try.
Ah, sorry. It seems the code is 'too new'..we need to make new release of R3 Saphirion fork so you are able to run it.
First 5 minutes of testing shows that in the new release, the tls port is now more like the tcp port
Could use R2 probably, but - can R3 read ftp? I will soon need small script for my LED screen client, who requests placing commercials himself. So my idea is to allow them to place it to FTP server, then my script takes it, downloads it, and rewrites the file locally ...
There's no ftp protocol built into R3, and I haven't heard of anyone making one. Maybe Kaj's curl wrapper can do ftp.
When I look at dev-net.c source it seems like UDP is only one switch. Would it be the UDP actor the same as for TCP or may it be less complicated?