diff -urbB Python-2.4.2.org/Lib/smtplib.py Python-2.4.2/Lib/smtplib.py --- Python-2.4.2.org/Lib/smtplib.py 2004-07-10 23:14:29.000000000 +0000 +++ Python-2.4.2/Lib/smtplib.py 2005-11-03 15:58:45.086681576 +0000 @@ -252,6 +252,12 @@ self.local_hostname = fqdn else: # We can't find an fqdn hostname, so use a domain literal + if hasattr(self, 'sock'): + addr = self.sock.getsockname() + addr = addr[0] + if addr == '0.0.0.0': + addr = socket.gethostbyname(socket.gethostname()) + else: addr = socket.gethostbyname(socket.gethostname()) self.local_hostname = '[%s]' % addr