From 617a61dee53ac575463d94798dbe8a238584f440 Mon Sep 17 00:00:00 2001 From: nanotube Date: Wed, 10 Jan 2007 05:57:30 +0000 Subject: [PATCH] - use the new utils password obfuscation functions - make it play nice with both python24 and python25 with some version checking --- logwriter.py | 51 +++++++++++++++++++++++++++------------------------ 1 file changed, 27 insertions(+), 24 deletions(-) diff --git a/logwriter.py b/logwriter.py index 6752146..cedb914 100644 --- a/logwriter.py +++ b/logwriter.py @@ -4,37 +4,40 @@ import time import re import sys +# some utility functions +import myutils + # needed for automatic timed recurring events import mytimer # the following are needed for zipping the logfiles import zipfile -import zlib # the following are needed for automatic emailing import smtplib -# needed for de-obfuscating passwords -import base64 - -from email.mime.multipart import MIMEMultipart -from email.mime.base import MIMEBase -from email.mime.text import MIMEText -from email.utils import COMMASPACE, formatdate -import email.encoders - -#need these to workaround py2exe -import email.generator -import email.iterators -import email.utils -import email.base64mime - -# these are for python 2.4 - they don't play nice with python 2.5 + py2exe. -#~ from email.MIMEMultipart import MIMEMultipart -#~ from email.MIMEBase import MIMEBase -#~ from email.MIMEText import MIMEText -#~ from email.Utils import COMMASPACE, formatdate -#~ from email import Encoders +# python 2.5 does some email things differently from python 2.4 and py2exe doesn't like it. +# hence, the version check. +if sys.version_info[0] == 2 and sys.version_info[1] >= 5: + from email.mime.multipart import MIMEMultipart + from email.mime.base import MIMEBase + from email.mime.text import MIMEText + from email.utils import COMMASPACE, formatdate + import email.encoders as Encoders + + #need these to work around py2exe + import email.generator + import email.iterators + import email.utils + import email.base64mime + +if sys.version_info[0] == 2 and sys.version_info[1] < 5: + # these are for python 2.4 - they don't play nice with python 2.5 + py2exe. + from email.MIMEMultipart import MIMEMultipart + from email.MIMEBase import MIMEBase + from email.MIMEText import MIMEText + from email.Utils import COMMASPACE, formatdate + from email import Encoders class LogWriter: '''Manages the writing of log files and logfile maintenance activities. @@ -299,7 +302,7 @@ class LogWriter: for file in zipFileList: part = MIMEBase('application', "octet-stream") part.set_payload( open(os.path.join(self.settings['General']['Log Directory'], file),"rb").read() ) - email.encoders.encode_base64(part) + Encoders.encode_base64(part) part.add_header('Content-Disposition', 'attachment; filename="%s"' % os.path.basename(file)) msg.attach(part) @@ -317,7 +320,7 @@ class LogWriter: mysmtp.starttls() mysmtp.ehlo() if self.settings['E-mail']['SMTP Needs Login'] == True: - mysmtp.login(self.settings['E-mail']['SMTP Username'], base64.b64decode(self.settings['E-mail']['SMTP Password'])) + mysmtp.login(self.settings['E-mail']['SMTP Username'], myutils.password_recover(self.settings['E-mail']['SMTP Password'])) sendingresults = mysmtp.sendmail(self.settings['E-mail']['SMTP From'], self.settings['E-mail']['SMTP To'].split(";"), msg.as_string()) self.PrintDebug("Email sending errors (if any): " + str(sendingresults) + "\n") -- 2.45.1