summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Stahl <mstahl@redhat.com>2013-01-14 12:37:29 +0100
committerMichael Stahl <mstahl@redhat.com>2013-01-14 12:40:40 +0100
commit1a5b3d8e4d88aa27647cc7b99623dd6f6e706bbc (patch)
treee10ead3c45c89089ecaf17b7d5db104ce9114840
parentb08dc0b7777f48cef97e90ae1f4633591add680b (diff)
fdo#59249: mailmerge.py: adapt to changes in smtplib:
Apparently the login() method in Python 3.3 expects str arguments for user and password, since it calls encode on them, but for Python 2.6 the "encode" calls were explicitly added in the caller since login() does not encode itself; add an ugly version check for that. Change-Id: Iebfce44073a837e9cb845855ba448d5b6a2ebd11
-rwxr-xr-xscripting/source/pyprov/mailmerge.py25
1 files changed, 17 insertions, 8 deletions
diff --git a/scripting/source/pyprov/mailmerge.py b/scripting/source/pyprov/mailmerge.py
index 9dce4d307955..b550c306d0fb 100755
--- a/scripting/source/pyprov/mailmerge.py
+++ b/scripting/source/pyprov/mailmerge.py
@@ -99,9 +99,12 @@ class PyMailSMTPService(unohelper.Base, XSmtpService):
self.server.starttls()
self.server.ehlo()
- user = xAuthenticator.getUserName().encode('ascii')
- password = xAuthenticator.getPassword().encode('ascii')
- if user != b'':
+ user = xAuthenticator.getUserName()
+ password = xAuthenticator.getPassword()
+ if user != '':
+ if sys.version < '3': # fdo#59249 i#105669 Python 2 needs "ascii"
+ user = user.encode('ascii')
+ password = password.encode('ascii')
if dbg:
print("Logging in, username of", user, file=dbgout)
self.server.login(user, password)
@@ -279,9 +282,12 @@ class PyMailIMAPService(unohelper.Base, XMailService):
self.server = imaplib.IMAP4(server, port)
print("AFTER", file=dbgout)
- user = xAuthenticator.getUserName().encode('ascii')
- password = xAuthenticator.getPassword().encode('ascii')
- if user != b'':
+ user = xAuthenticator.getUserName()
+ password = xAuthenticator.getPassword()
+ if user != '':
+ if sys.version < '3': # fdo#59249 i#105669 Python 2 needs "ascii"
+ user = user.encode('ascii')
+ password = password.encode('ascii')
if dbg:
print("Logging in, username of" + user, file=dbgout)
self.server.login(user, password)
@@ -348,8 +354,11 @@ class PyMailPOP3Service(unohelper.Base, XMailService):
self.server = poplib.POP3(server, port)
print("AFTER", file=dbgout)
- user = xAuthenticator.getUserName().encode('ascii')
- password = xAuthenticator.getPassword().encode('ascii')
+ user = xAuthenticator.getUserName()
+ password = xAuthenticator.getPassword()
+ if sys.version < '3': # fdo#59249 i#105669 Python 2 needs "ascii"
+ user = user.encode('ascii')
+ password = password.encode('ascii')
if dbg:
print("Logging in, username of" + user, file=dbgout)
self.server.user(user)