Manchmal sind Fehlermeldungen von Programmen nicht wirklich hilfreich, sondern führen einen gezielt in die falsche Richtung: Ein Kunde mit einem Mac nutzt seinen Firmen-Exchange-Server und holt vom Mac aus die Mails per IMAP4 ab und verschickt diese mit SMTP. Doch heute meldet das Mailprogramm von Apple plötzlich, es könne keine Mails verschicken, evtl. sei der Server nicht erreichbar, man solle es später erneut versuchen.

Nachdem dieser Zustand einige Stunden anhielt, der Kunde seinen Mac schon mehrfach neu gestartet hatte, rief der Kunde uns an. Ein Test mittels Telnet auf den Port 25 des Exchange-Servers ergab, dass dieser problemlos erreichbar war. Was für ein Problem lag vor? Wir schalteten auf dem Exchange die SMTP-Protokollierung ein, um die Kommunikation zwischen Apple-Mailprogramm und Server zu analysieren. Und tatsächlich: Das Protokoll sah merkwürdig aus: Ein EHLO, ein MAIL (-FROM), ein RCPT (-TO) und ein QUIT. Wo  war das DATA, wo wurde der Mailtext übertragen?

Im Protokoll des Exchange-Servers werden hinter jedem Befehl die vom Mailprogramm übergebenen Parameter und dann der Rückgabecode des Servers protokolliert. Ordnungsgemäße Rückmeldungen liegen im 200er-Bereich. Aber hinter „RCPT“ wurde ein Rückgabecode 501 angegeben. Der SMTP-Code 501 bedeutet „Syntax error in parameters or arguments“. Also einen genaueren Blick auf die RCPT-Parameter geworfen. Und tatsächlich hatte sich in die Empfänger-E-Mail-Adresse ein merkwürdiges und offensichtlich unerlaubtes Zeichen eingeschlichen.

Löschen und Neuschreiben der Empfängeradresse im Apple-Mailprogramm führte dann auch zu einer korrekt verschickten Mail, der Fehler war behoben.

Fazit:

  1. Apple-Mail überprüft eingegebene Empfängeradressen offensichtlich nicht auf die Zulässigkeit der eingegebenen Zeichen.
  2. Apple-Mail liefert verwirrende Fehlermeldungen, schlimmer noch, Apple-Mail unterdrückt hilfreiche Fehlermeldungen des Servers.