Description

For whatever reason a user was able to add <200e> to his email address

This gives an error

[Tue May 27 13:04:56 2014] [error] [client localhost] mod_wsgi (pid=29728): Exception occurred processing WSGI script '/home/wiki-ssirc/moin.wsgi'.
[Tue May 27 13:04:56 2014] [error] [client localhost] Traceback (most recent call last):
[Tue May 27 13:04:56 2014] [error] [client localhost]   File "/usr/local/lib/python2.7/dist-packages/MoinMoin/support/werkzeug/wsgi.py", line 411, in __call__
[Tue May 27 13:04:56 2014] [error] [client localhost]     return self.app(environ, start_response)
[Tue May 27 13:04:56 2014] [error] [client localhost]   File "/usr/local/lib/python2.7/dist-packages/MoinMoin/wsgiapp.py", line 282, in __call__
[Tue May 27 13:04:56 2014] [error] [client localhost]     response = run(context)
[Tue May 27 13:04:56 2014] [error] [client localhost]   File "/usr/local/lib/python2.7/dist-packages/MoinMoin/wsgiapp.py", line 88, in run
[Tue May 27 13:04:56 2014] [error] [client localhost]     response = dispatch(request, context, action_name)
[Tue May 27 13:04:56 2014] [error] [client localhost]   File "/usr/local/lib/python2.7/dist-packages/MoinMoin/wsgiapp.py", line 136, in dispatch
[Tue May 27 13:04:56 2014] [error] [client localhost]     response = handle_action(context, pagename, action_name)
[Tue May 27 13:04:56 2014] [error] [client localhost]   File "/usr/local/lib/python2.7/dist-packages/MoinMoin/wsgiapp.py", line 195, in handle_action
[Tue May 27 13:04:56 2014] [error] [client localhost]     handler(context.page.page_name, context)
[Tue May 27 13:04:56 2014] [error] [client localhost]   File "/usr/local/lib/python2.7/dist-packages/MoinMoin/action/recoverpass.py", line 209, in execute
[Tue May 27 13:04:56 2014] [error] [client localhost]     msg = _do_recover(request)
[Tue May 27 13:04:56 2014] [error] [client localhost]   File "/usr/local/lib/python2.7/dist-packages/MoinMoin/action/recoverpass.py", line 40, in _do_recover
[Tue May 27 13:04:56 2014] [error] [client localhost]     return _do_email(request, u)
[Tue May 27 13:04:56 2014] [error] [client localhost]   File "/usr/local/lib/python2.7/dist-packages/MoinMoin/action/recoverpass.py", line 18, in _do_email
[Tue May 27 13:04:56 2014] [error] [client localhost]     is_ok, msg = u.mailAccountData()
[Tue May 27 13:04:56 2014] [error] [client localhost]   File "/usr/local/lib/python2.7/dist-packages/MoinMoin/user.py", line 1170, in mailAccountData
[Tue May 27 13:04:56 2014] [error] [client localhost]     text, mail_from=self._cfg.mail_from)
[Tue May 27 13:04:56 2014] [error] [client localhost]   File "/usr/local/lib/python2.7/dist-packages/MoinMoin/mail/sendmail.py", line 145, in sendmail
[Tue May 27 13:04:56 2014] [error] [client localhost]     server.sendmail(mail_from, to, msg.as_string())
[Tue May 27 13:04:56 2014] [error] [client localhost]   File "/usr/lib/python2.7/smtplib.py", line 727, in sendmail
[Tue May 27 13:04:56 2014] [error] [client localhost]     (code, resp) = self.rcpt(each, rcpt_options)
[Tue May 27 13:04:56 2014] [error] [client localhost]   File "/usr/lib/python2.7/smtplib.py", line 479, in rcpt
[Tue May 27 13:04:56 2014] [error] [client localhost]     self.putcmd("rcpt", "TO:%s%s" % (quoteaddr(recip), optionlist))
[Tue May 27 13:04:56 2014] [error] [client localhost]   File "/usr/lib/python2.7/smtplib.py", line 334, in putcmd
[Tue May 27 13:04:56 2014] [error] [client localhost]     self.send(str)
[Tue May 27 13:04:56 2014] [error] [client localhost]   File "/usr/lib/python2.7/smtplib.py", line 321, in send
[Tue May 27 13:04:56 2014] [error] [client localhost]     self.sock.sendall(str)
[Tue May 27 13:04:56 2014] [error] [client localhost]   File "/usr/lib/python2.7/socket.py", line 224, in meth
[Tue May 27 13:04:56 2014] [error] [client localhost]     return getattr(self._sock,name)(*args)
[Tue May 27 13:04:56 2014] [error] [client localhost] UnicodeEncodeError: 'ascii' codec can't encode character u'\\u200e' in position 39: ordinal not in range(128)

Steps to reproduce

a user was created and accidently a <200e> becomes added to the email address.

Example

Component selection

Input of userdata may be should filter for ASCII only if smtplib requires ascii.

Details

MoinMoin Version

1.9.6

OS and Version

linux

Python Version

2.7.3

Server Setup

apache2

Server Details

mod_wsgi

Language you are using the wiki in (set in the browser/UserPreferences)

Workaround

Discussion

Plan


CategoryMoinMoinBug

MoinMoin: MoinMoinBugs/CorruptEmailAddress (last edited 2014-05-27 11:15:36 by ReimarBauer)