Red Hat Bugzilla – Bug 106630
evolution generates SMTP syntax errors, won't send mail
Last modified: 2007-11-30 17:10:32 EST
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4.1) Gecko/20031003
Description of problem:
Evolution refuses to send mail via SMTP from my Fedora Core 0.94 workstation.
This affected Severn 9.0.93 also, but it was fine in Red Hat Linux 9. I've
tried with several SMTP servers, both with and without authentication, and with
remote servers running Postfix, sendmail, and RHL 7.3 through 9. All fail with
an error similar to this:
Error while performing operation:
MAIL FROM response error: Command unreognized: ""
Running ethereal on the session generates a log similar to this (from the tcp
stream function; I've sanitzed the domains an IP addresses but the hostnames are
220 courses.example.com ESMTP Sendmail 8.11.6/8.11.6; Wed, 8 Oct 2003 15:29:00 -0400
EHLO mail mail.example.com
250-courses.example.com Hello gateway2.example.com [192.168.30.21], pleased to
500 5.5.1 Command unrecognized: ""
250 2.1.0 <firstname.lastname@example.org>... Sender ok
221 2.0.0 courses.example.com closing connection
The strange thing is that EHLO statement is wrong... there is no such host as
"mail.example.com" -- it just doesn't exist on our network in any DNS or hosts
file. "jeremy.example.com" is the name of my workstation that's connecting,
though reverse DNS doesn't exist. (A reverse map in /etc/hosts does exist
however.) courses.example.com is the mail server, which works just fine from
other clients. I'm wondering if this might be similar to Bug #105028 because of
the reverse DNS issue.
Also, in the main ethereal window the EHLO statement looks like this:
EHLO \t\tmail mail.example.com\n
There appears to be a \n newline at the end of the parameter which is strange.
Could there be an extra newline causing the Command Unrecognized: "" statement?
Not certain about this.
Thanks for any help, or if this should be sent upstream please let me know.
Version-Release number of selected component (if applicable):
I've seen this as well since May 2003.
This is a glibc (2.3??) bug in parsing /etc/hosts
You can reproduce the problem in 10 lines of C. No need for Evolution.
glibc needs to be fixed, I don't know if the glibc guys know about the problem.
The Ximian guys do for sure, but the attitude seems to be "not my problem".
The work arround is to remove all comments from your /etc/hosts file.
Thanks. I can confirm that removing all comments from /etc/hosts fixes the
problem. This explains the mystery of where the non-existant "mail.example.com"
came from in the above transcript; there was a comment with that string in it.
Should this bug be reassigned to glibc then?
Yeah, I think so.
I can't believe the /etc/hosts parsing is very complex or big amounts of code,
so the bug should be spotable by just inspecting the source code.
Does the patch in
help? (I'll do a build and throw it up under
http://people.redhat.com/~katzj/evolution-test/ when it's done, but I'm leaving
town this afternoon and it may not be done before I leave)
I've applied that patch and rebuilt (boy, evolution takes forever to build!) and
this solves the problem for me. Thanks a lot, Jeremy.
I will try to find out if the underyling glibc bug is known upstream to glibc
folks or not.
Okay, in my current tree and will be in the next build (should be -3)
Rawhide version working well for me; closing. Thanks!