diff --git a/src/bitmessageqt/__init__.py b/src/bitmessageqt/__init__.py index 86eefc7b..9cea267a 100644 --- a/src/bitmessageqt/__init__.py +++ b/src/bitmessageqt/__init__.py @@ -2739,7 +2739,7 @@ class settingsDialog(QtGui.QDialog): shared.config.get('bitmessagesettings', 'stripmessageheaders')) except: self.ui.checkBoxStripMessageHeaders.setChecked(True) - self.ui.lineEditMessageHeadersToStrip.setText('Message-ID, User-Agent') + self.ui.lineEditMessageHeadersToStrip.setText('User-Agent') if shared.appdata == '': self.ui.checkBoxPortableMode.setChecked(True) diff --git a/src/class_smtpServer.py b/src/class_smtpServer.py index c7fd0709..5d06e391 100644 --- a/src/class_smtpServer.py +++ b/src/class_smtpServer.py @@ -2,7 +2,7 @@ from cStringIO import StringIO from pyelliptic.openssl import OpenSSL import asynchat import base64 -from email import parser, generator +from email import parser, generator, utils import errno import shared import smtpd @@ -341,6 +341,17 @@ class bitmessageSMTPServer(smtpd.SMTPServer): @staticmethod def stripMessageHeaders(message): + # Convert Date header into GMT + if 'Date' in message: + oldDate = message['Date'] + del message['Date'] + + message['Date'] = utils.formatdate(utils.mktime_tz(utils.parsedate_tz(oldDate)), localtime=False) + + with shared.printLock: + print 'old date --', oldDate + print 'new date --', message['Date'] + try: if not shared.config.getboolean('bitmessagesettings', 'stripmessageheadersenable'): return @@ -350,7 +361,7 @@ class bitmessageSMTPServer(smtpd.SMTPServer): try: headersToStrip = shared.config.get('bitmessagesettings', 'stripmessageheaders') except: - headersToStrip = "Message-ID, User-Agent" + headersToStrip = "User-Agent" headersToStrip = [x.strip() for x in headersToStrip.split(',') if len(x.strip()) > 0] for h in headersToStrip: @@ -374,7 +385,7 @@ class bitmessageSMTPServer(smtpd.SMTPServer): gen = generator.Generator(fp, mangle_from_=False, maxheaderlen=128) gen.flatten(message) message_as_text = fp.getvalue() - with shared.printLink: + with shared.printLock: print(message_as_text) checksum = hashlib.sha256(message_as_text).digest()[:2] diff --git a/src/helper_startup.py b/src/helper_startup.py index 0ebc3fa0..ebf69278 100644 --- a/src/helper_startup.py +++ b/src/helper_startup.py @@ -35,6 +35,8 @@ def loadConfig(): shared.config.set('bitmessagesettings', 'pop3address', '127.0.0.1') shared.config.set('bitmessagesettings', 'pop3port', '10110') shared.config.set('bitmessagesettings', 'pop3ssl', 'false') + shared.config.set('bitmessagesettings', 'stripmessageheadersenable', 'true') + shared.config.set('bitmessagesettings', 'stripmessageheaders', 'User-Agent') shared.config.set( 'bitmessagesettings', 'timeformat', '%%a, %%d %%b %%Y %%I:%%M %%p') shared.config.set('bitmessagesettings', 'blackwhitelist', 'black')