summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbwarsaw2000-09-11 15:33:03 +0000
committerbwarsaw2000-09-11 15:33:03 +0000
commite1c7fe7c907277bd48ad58312f1c52455bf94fcd (patch)
tree0cdfdc9afb4d15c24e94dd9e2460e0073cde8aac
parent3862b53977f4201fd6b6f935628b1f1ed1503c4c (diff)
downloadmailman-e1c7fe7c907277bd48ad58312f1c52455bf94fcd.tar.gz
mailman-e1c7fe7c907277bd48ad58312f1c52455bf94fcd.tar.zst
mailman-e1c7fe7c907277bd48ad58312f1c52455bf94fcd.zip
GetOptionsURL(): Email addresses can have strange characters in them,
which are legal re: RFC822, but aren't valid for URLs. urllib.quote() the address part of the URL. Closes SF bug #113787.
-rw-r--r--Mailman/MailList.py3
1 files changed, 2 insertions, 1 deletions
diff --git a/Mailman/MailList.py b/Mailman/MailList.py
index 418d0815d..64f04b7f7 100644
--- a/Mailman/MailList.py
+++ b/Mailman/MailList.py
@@ -29,6 +29,7 @@ import re
import shutil
import socket
from types import StringType, IntType, DictType, ListType
+import urllib
from urlparse import urlparse
from Mailman import mm_cfg
@@ -195,7 +196,7 @@ class MailList(MailCommandHandler, HTMLFormatter, Deliverer, ListAdmin,
url = self.GetScriptURL('options', absolute)
if obscure:
addr = Utils.ObscureEmail(addr)
- return '%s/%s' % (url, addr)
+ return '%s/%s' % (url, urllib.quote(addr))
def GetUserOption(self, user, option):
"""Return user's setting for option, defaulting to 0 if no settings."""