2009-07-24 9 views
0

J'ai écrit un programme pour récupérer le courrier des serveurs POP3. L'un de ses utilisateurs rencontre le problème suivant ...Comment interpréter les caractères non imprimables dans l'horodatage envoyé par le serveur Lotus Notes POP3?

son serveur de messagerie lorsque mon programme se connecte à elle émet un message d'accueil:

+OK Lotus Notes POP3 server version X2.0 ready <PrintableCharacters.UnprintableCharacters> 

La partie entre crochets est un défi que l'on appelle l'autorisation APOP . Le défi (et toutes les autres chaînes du protocole POP3) ne contient généralement que des caractères ASCII. Mais cette fois le défi est composé de deux parties - la seconde contient des caractères non imprimables. Le motif est le suivant: d'abord 0x5, puis un caractère non-ASCII. Cela ressemble à special encoding introduced by Lotus Notes developers.

Lorsque j'extrais le challenge tel quel et l'utilise pour l'authentification APOP, le serveur décline. Après avoir soigneusement lu tout ce que j'ai pu trouver sur LMBSC, j'ai déduit ce qui suit. Le 0x5 est un préfixe pour indiquer ce que l'on appelle "Group 5" characters. Chaque caractère est en fait un caractère Win-1251 mais est précédé de 0x5. Avec cela, j'ai juste enlevé tous les 0x5 légaux laissant seulement l'ASCII légal et non-imprimable Win-1251 et les ai passés dans l'algorithme d'authentification APOP habituel. Cependant le serveur décline.

Est-ce la bonne façon de décoder LMBSC avec des caractères Win-1251 ou est-ce un problème côté serveur?

Répondre

1

J'ai vérifié certains serveurs domino (7.x, 8.x) et je n'ai pas trouvé d'horodatage APOP dans le message d'accueil du serveur. Ensuite, j'ai recherché et trouvé ceci: POP3 authentication failure using APOP commands

Il semble que le serveur POP Domino ne supporte pas APOP, mais les versions antérieures à 6.5.5 présentent quand même un horodatage dans le message d'accueil.

+0

Cela semble prometteur et j'ai donc écrit à IBM avec une demande. Ce qui me préoccupe, c'est qu'au bas du message se trouve le texte «Cette régression a été introduite en 6.0», ce qui signifie qu'avant le 6.0, le problème n'était pas là. Savez-vous comment X2.0 est lié (plus récent/plus ancien) à 6.0 et 6.5? – sharptooth

+0

J'ai vérifié avec un serveur Domino 5.x, et ce serveur POP3 s'est présenté comme "X2.0". Cependant, je ne pouvais pas voir l'horodatage dans la salutation là non plus. Sur Domino 7 et 8, la version présentée dans le message d'accueil semble être celle de Domino et non du sous-système POP3. –

+0

Nous nous sommes renseignés sur ce que le client Lotus avait - il était 6.5.4 qui est dans la gamme des versions affectées par exactement cette régression. Ils ont amélioré et maintenant le problème est parti. Merci beaucoup de fournir des données sur la façon dont les différentes versions se présentent dans le message d'accueil POP3. – sharptooth

Questions connexes