From cbd4374f4fe9e9c71335fecb4c99a37ee45f0f51 Mon Sep 17 00:00:00 2001 From: catborise Date: Thu, 5 Nov 2026 10:49:54 +0300 Subject: [PATCH] fix(accounts): mailing an OTP QR code waits at most 10 seconds for the SMTP server EMAIL_TIMEOUT was not set, and Django's SMTP connection then waits for a server without end: one that accepts the connection and stops answering held the request's thread for good, also on the login page's Email OTP form, which anyone may post. The settings template sets 10 seconds. An administrator whose mail fails is told why on the account page instead of getting an error page. --- accounts/tests/test_admin_email_otp.py | 6 ++++++ accounts/tests/test_audit_rows.py | 6 +++--- accounts/views.py | 15 ++++++++++----- locale/tr/LC_MESSAGES/django.mo | Bin 191753 -> 191903 bytes locale/tr/LC_MESSAGES/django.po | 11 ++++++++--- locale/zh/LC_MESSAGES/django.mo | Bin 179286 -> 179427 bytes locale/zh/LC_MESSAGES/django.po | 11 ++++++++--- webvirtcloud/settings.py.template | 2 ++ 8 files changed, 37 insertions(+), 14 deletions(-) diff --git a/accounts/tests/test_admin_email_otp.py b/accounts/tests/test_admin_email_otp.py index 1cb139e1..f3d14f41 100644 --- a/accounts/tests/test_admin_email_otp.py +++ b/accounts/tests/test_admin_email_otp.py @@ -30,3 +30,9 @@ class AdminEmailOtpTestCase(TestCase): response = self.client.post(self.url) self.assertEqual(response.status_code, 302) mock_send.assert_called_once() + + def test_the_smtp_connection_waits_a_bounded_time(self): + from django.core.mail.backends.smtp import EmailBackend + + # None would wait for a server that stopped answering forever + self.assertIsNotNone(EmailBackend().timeout) diff --git a/accounts/tests/test_audit_rows.py b/accounts/tests/test_audit_rows.py index 17b68a65..c75a4f42 100644 --- a/accounts/tests/test_audit_rows.py +++ b/accounts/tests/test_audit_rows.py @@ -85,9 +85,9 @@ class AdminAccountRowTests(TestCase): with patch("accounts.views.send_email_with_otp") as send: self.client.post(url) send.assert_called_once() - with patch("accounts.views.send_email_with_otp", side_effect=SMTPException("refused")), \ - self.assertRaises(SMTPException): - self.client.post(url) + with patch("accounts.views.send_email_with_otp", side_effect=SMTPException("refused")): + response = self.client.post(url, follow=True) + self.assertContains(response, "The OTP QR code could not be mailed to bob: refused") self.assertEqual(rows(), [ ("User bob: mail OTP QR code: no email address", False), ("User bob: mail OTP QR code", True), diff --git a/accounts/views.py b/accounts/views.py index 52a29a02..f85b1b52 100644 --- a/accounts/views.py +++ b/accounts/views.py @@ -343,11 +343,16 @@ def admin_email_otp(request, user_id): user = get_object_or_404(get_user_model(), pk=user_id) subject = f"User {user.username}" if user.email != "": - with audit(request, None, subject, "mail OTP QR code"): - send_email_with_otp(user, get_user_totp_device(user)) - messages.success( - request, _("OTP QR code was emailed to user %(user)s") % {"user": user} - ) + try: + with audit(request, None, subject, "mail OTP QR code"): + send_email_with_otp(user, get_user_totp_device(user)) + except OSError as err: # the SMTP server refused it, or did not answer within EMAIL_TIMEOUT + messages.error(request, _("The OTP QR code could not be mailed to %(user)s: %(error)s") % { + "user": user, "error": err}) + else: + messages.success( + request, _("OTP QR code was emailed to user %(user)s") % {"user": user} + ) else: failed(request, None, subject, "mail OTP QR code", "no email address") messages.error(request, _("User email not set, failed to send QR code")) diff --git a/locale/tr/LC_MESSAGES/django.mo b/locale/tr/LC_MESSAGES/django.mo index c0e036c5362389feedbff18616057d88f9988500..0db7dc959eacf09f7f023d79cb5fdbdde32923f1 100644 GIT binary patch delta 37926 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, 2020\n" "Language-Team: Turkish (https://www.transifex.com/catborise/teams/110663/tr/)\n" @@ -636,12 +636,17 @@ msgstr "OTP %(email)s ye gönderildi" msgid "Email OTP" msgstr "OTP E-Postası" -#: accounts/views.py:349 +#: accounts/views.py:350 +#, python-format +msgid "The OTP QR code could not be mailed to %(user)s: %(error)s" +msgstr "OTP QR kodu %(user)s kullanıcısına e-postayla gönderilemedi: %(error)s" + +#: accounts/views.py:354 #, python-format msgid "OTP QR code was emailed to user %(user)s" msgstr "OTP QR kodu %(user)s kullanıcısına gönderildi" -#: accounts/views.py:353 +#: accounts/views.py:358 msgid "User email not set, failed to send QR code" msgstr "Kullanıcı e-postası girilmemiş, QR kod gönderimi başarısız" diff --git a/locale/zh/LC_MESSAGES/django.mo b/locale/zh/LC_MESSAGES/django.mo index 06b5670b69c38ef272977d5df0a53da5223a349c..6bf6d42b3ee49aafaa08fc150c6597cb05c14e36 100644 GIT binary patch delta 37953 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 V|Fz|tx4dy++TBCi1>R`+{{TXXm$3i< delta 37817 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 BS$hBg diff --git a/locale/zh/LC_MESSAGES/django.po b/locale/zh/LC_MESSAGES/django.po index 9a7cf0a1..4ce41557 100644 --- a/locale/zh/LC_MESSAGES/django.po +++ b/locale/zh/LC_MESSAGES/django.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-11-05 06:39+0000\n" +"POT-Creation-Date: 2026-11-05 07:49+0000\n" "PO-Revision-Date: \n" "Last-Translator: \n" "Language-Team: \n" @@ -623,12 +623,17 @@ msgstr "OTP 已发送至 %(email)s" msgid "Email OTP" msgstr "邮件发送 OTP" -#: accounts/views.py:349 +#: accounts/views.py:350 +#, python-format +msgid "The OTP QR code could not be mailed to %(user)s: %(error)s" +msgstr "无法将 OTP 二维码通过邮件发送给 %(user)s:%(error)s" + +#: accounts/views.py:354 #, python-format msgid "OTP QR code was emailed to user %(user)s" msgstr "OTP 二维码已通过邮件发送给用户 %(user)s" -#: accounts/views.py:353 +#: accounts/views.py:358 msgid "User email not set, failed to send QR code" msgstr "未设置用户邮箱,无法发送二维码" diff --git a/webvirtcloud/settings.py.template b/webvirtcloud/settings.py.template index 1d81179e..788fbfb3 100644 --- a/webvirtcloud/settings.py.template +++ b/webvirtcloud/settings.py.template @@ -401,6 +401,8 @@ EMAIL_PORT = int(os.getenv("EMAIL_PORT", "587")) EMAIL_HOST_USER = os.getenv("EMAIL_HOST_USER", "") ## password associated with above email-id EMAIL_HOST_PASSWORD = os.getenv("EMAIL_HOST_PASSWORD", "") +# seconds an SMTP server may take to answer; without it a server that stops answering holds the request for good +EMAIL_TIMEOUT = 10 # LDAP Config #