[ Home | Liste | F.A.Q. | Risorse | Cerca... ]


[ Data: precedente | successivo | indice ] [ Argomento: precedente | successivo | indice ]


Archivio: Settembre 2002 ml@sikurezza.org
Soggetto: Re: pop3: top n m
Mittente: antirez
Data: 19 Sep 2002 20:48:02 -0000
On Wed, Sep 18, 2002 at 09:59:58PM +0200, Alessio wrote:
> Allora.... TOP n m, se il server e' RFC 1939 compliant come dovrebbe,
> manda l'header del messaggio n piu' m righe del suo body.

Sempre per l'RFC1939 il comando TOP e' opzionale. Questo significa che
se il client riceve -ERR alla richiesta di fare un TOP dovrebbe
switchare a RETR automaticamente. Fetchmail sembra ignorare tutto
questo allegramente.

> Risultato: LIST, TOP, RETR.

Molto spesso LIST, UIDL, RETR.

> Fetchmail invece se non ricordo male (sono tutte informazioni che avevo
> appreso scrivendo il mio pop3d) usa fare TOP 1 99999999 invece di RETR.
> Outlook, usa soltanto RETR, non fa TOP.

Gia'. Fetchmail e' attualmente uno dei programmi piu' penosi che
possono vantare una diffusione tale... fa TOP 1 99999999 per evitare
dei problemi con un subset minimo di server, proprio perche' TOP
non marca il messaggio come 'letto', poi pero' se ne impipa se
il server seguendo l'RFC ha voluto non implementare il comando
TOP. Per non parlare di una sleep() random subito dopo il comando STAT
(provare per credere), il mancato supporto per il pipelining eccetera.

> Comunque, secondo "le regole" TOP non si usa per leggere la mail, ma
> per farne un'anteprima. E' invece il comando RETR quello che "legge" la mail.

Si, spesso si usa per i seguenti motivi:

1) Per leggere solo gli header con propositi di filtering
2) Per leggere solo gli header con propositi di UIDL-like
3) Per avere un'anteprima della email di 8MB che ti hanno cortesemente
   spedito e vedere se e' il caso di comprimerla con il comando DELE.

> Inoltre, a parte fetchmail, e' quasi certo che un client connesso per leggere
> la posta usi prima o poi il RETR, mentre non e' detto per il TOP.

Esatto, in praticolare se il server ha il supporto per UIDL, ed il
client non da alcuna scelta all'utente su quali email
scaricare dopo aver mostrato mittente/subject, non c'e' alcun motivo
per usare TOP. Che bene o male e' sempre un comando opzionale,
dunque se se ne puo' fare a meno...

> Risultato: i webmail, per non sbagliare, preferiscono flaggare il messaggio
> al RETR e non al TOP.
> Corollario: tu non ti accorgi che alcune tue mail magari vengono lette, ma se
> non avessi il webmail non lo sapresti mai, perche' non e' una cosa
> prevista dal protocollo POP3.

E comunque anche per le vecchie implementazioni per cui potevi
scoprire la stessa cosa tramite LAST, c'e' sempre il comando RSET
ad eliminare la traccia della lettura.

> Soluzione: usate imap :p

E' meglio di POP da certi punti di vista, e molto peggio da certi
altri... ma di certo non e' un sostituto di POP.
Inoltre scrivere una implementazione sicura di un POP server e'
una ambizione giustamente umana, mentre grazie alla sintassi
e al modo di funzionamento di IMAP diventa quasi una aspirazione
divina.

Inoltre, anche con IMAP, non c'e' modo di sapere se qualcuno
ha letto la tua posta, visto che si possono settare i flag
a piacere, e ci sono anche li i FETCH parziali e molto di piu'.
Anzi, c'e' pure SEARCH per i curiosi che cercano direttamente
le email piu' interessanti.

ciao,
antirez

-- 
Salvatore Sanfilippo <antirez at invece dot org> s/at/@/ s/dot/\./
          finger antirez@tella.alicom.org for PGP key
      "Don't worry about what anybody else is going to do.
 The best way to predict the future is to invent it." (Alan Kay)

________________________________________________________
http://www.sikurezza.org - Italian Security Mailing List




[ Home | Liste | F.A.Q. | Risorse | Cerca... ]

www.sikurezza.org - Italian Security Mailing List
(c) 1999-2005