Tworzę skrypt do przechowywania plików na poczcie email.
Z racji większej dostępności skrzynek POP3, a mniejszej IMAP,
w swojej aplikacji skupiłem się na implementacji obsługi tego pierwszego protokołu

Moim problemem jest bariera w następującym logicznym toku:
1. Wysyłam wiadomość z załącznikiem na serwer SMTP roboczo nazywanym tutaj "A" na serwer docelowy "B".
Tytułem (Subject:) wiadomości jest identyfikator zawierający informacje o ID pliku oraz ID porcji danych, z racji tego, ze plik dzielony jest na 512 KB kawałeczki..
W tym miejscu pojawia się problem, jak odczytać subject wiadomosci bez pobrierania jej w calosci (ponad 512 KB)
Uyzwajac komendy "LIST Command" Niestety nie dostaje listy tematów, jedynie, ID znaczajacy doklady czas wyslania wiadomosci oraz wielkosc.
Wydaje mi sie ze musze sciagac caaaaaaala wiadomosc aby sprawdzic subject i powiazac plik..
.......
Ah, eureka, podczas pisania tego posta wymyslilem jak to mozna łobejsc...
Bede dbal aby na jeden serwer poczty nie byl jednoczesnie wysylany wiecej niz 1 plik.
Potem pobiore pierwszą nieznaną wcześniej wiadomosc, piszypisze ja do opdpowiedniego kawalka pliku, a potem "w ciemno" powiaza kazdą nastepna wiadmosc z kolejnymi kawalkami, zakladajac ze przeciez musialy przyjsc na poczte w takiej samej kolejnosci w jakiej sie wysylaly... jednak przed ostatecznym wyslaniem na wyjscie takiej porcji danych, sprawdze jeszcze czy tematem wiadmosci jest rzeczywiscie ID jakiego szukam, w razie bledu pobiore juz bez zgadywanek kazda wiadomosc, tak jak to chcialem robic na poczatku...
No chyba ze ma ktos lepsiejszy sposob.
Źródła:
PEAR POP3, PEAR MAIL
http://www.ietf.org/rfc/rfc1939.txt
jeszcze drobna modyfikacjia ostatniej linijki
"w razie bledu pobiore juz bez zgadywanek kazda wiadomosc, tak jak to chcialem robic na poczatku..."
W razie bledu obciore wczesniej kilka (z 5) kolejnych wiadomosci, dopiero jesli wsreod nich nie znajde zaczne zmudne pobieranie wszystkich wiadmosci...
/edit
Hmm, jest jeszcze jedna mozliwosc, odczytac kazda wiadmosci, ale nie w calosci, tylko pierwsze XX bajtow, bo przeciez temat znajduje sie gdzies u gory.