Reformat Date to GMT timestamps

This commit is contained in:
Chuck 2013-07-10 18:10:54 +07:00
parent c7375b050b
commit cccb043b67
3 changed files with 17 additions and 4 deletions

View File

@ -2739,7 +2739,7 @@ class settingsDialog(QtGui.QDialog):
shared.config.get('bitmessagesettings', 'stripmessageheaders')) shared.config.get('bitmessagesettings', 'stripmessageheaders'))
except: except:
self.ui.checkBoxStripMessageHeaders.setChecked(True) self.ui.checkBoxStripMessageHeaders.setChecked(True)
self.ui.lineEditMessageHeadersToStrip.setText('Message-ID, User-Agent') self.ui.lineEditMessageHeadersToStrip.setText('User-Agent')
if shared.appdata == '': if shared.appdata == '':
self.ui.checkBoxPortableMode.setChecked(True) self.ui.checkBoxPortableMode.setChecked(True)

View File

@ -2,7 +2,7 @@ from cStringIO import StringIO
from pyelliptic.openssl import OpenSSL from pyelliptic.openssl import OpenSSL
import asynchat import asynchat
import base64 import base64
from email import parser, generator from email import parser, generator, utils
import errno import errno
import shared import shared
import smtpd import smtpd
@ -341,6 +341,17 @@ class bitmessageSMTPServer(smtpd.SMTPServer):
@staticmethod @staticmethod
def stripMessageHeaders(message): 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: try:
if not shared.config.getboolean('bitmessagesettings', 'stripmessageheadersenable'): if not shared.config.getboolean('bitmessagesettings', 'stripmessageheadersenable'):
return return
@ -350,7 +361,7 @@ class bitmessageSMTPServer(smtpd.SMTPServer):
try: try:
headersToStrip = shared.config.get('bitmessagesettings', 'stripmessageheaders') headersToStrip = shared.config.get('bitmessagesettings', 'stripmessageheaders')
except: except:
headersToStrip = "Message-ID, User-Agent" headersToStrip = "User-Agent"
headersToStrip = [x.strip() for x in headersToStrip.split(',') if len(x.strip()) > 0] headersToStrip = [x.strip() for x in headersToStrip.split(',') if len(x.strip()) > 0]
for h in headersToStrip: for h in headersToStrip:
@ -374,7 +385,7 @@ class bitmessageSMTPServer(smtpd.SMTPServer):
gen = generator.Generator(fp, mangle_from_=False, maxheaderlen=128) gen = generator.Generator(fp, mangle_from_=False, maxheaderlen=128)
gen.flatten(message) gen.flatten(message)
message_as_text = fp.getvalue() message_as_text = fp.getvalue()
with shared.printLink: with shared.printLock:
print(message_as_text) print(message_as_text)
checksum = hashlib.sha256(message_as_text).digest()[:2] checksum = hashlib.sha256(message_as_text).digest()[:2]

View File

@ -35,6 +35,8 @@ def loadConfig():
shared.config.set('bitmessagesettings', 'pop3address', '127.0.0.1') shared.config.set('bitmessagesettings', 'pop3address', '127.0.0.1')
shared.config.set('bitmessagesettings', 'pop3port', '10110') shared.config.set('bitmessagesettings', 'pop3port', '10110')
shared.config.set('bitmessagesettings', 'pop3ssl', 'false') shared.config.set('bitmessagesettings', 'pop3ssl', 'false')
shared.config.set('bitmessagesettings', 'stripmessageheadersenable', 'true')
shared.config.set('bitmessagesettings', 'stripmessageheaders', 'User-Agent')
shared.config.set( shared.config.set(
'bitmessagesettings', 'timeformat', '%%a, %%d %%b %%Y %%I:%%M %%p') 'bitmessagesettings', 'timeformat', '%%a, %%d %%b %%Y %%I:%%M %%p')
shared.config.set('bitmessagesettings', 'blackwhitelist', 'black') shared.config.set('bitmessagesettings', 'blackwhitelist', 'black')