When smtp_username is specified the MFA dialogue in the WebUI only asks for password but never for verification code. When you delete the smtp_username it does work.
Steps to Reproduce
set smtp_username, password, host and port
set mfa-provider to webui
restart docker container
Expected Behavior
First ask for a password. Then ask for the verification code.
Actual Behavior
Only asks for a password and never asks for the verification.
Context
The code contains:
if icloud.requires_2fa:
**if raise_error_on_2sa:
raise TwoStepAuthRequiredError("Two-factor authentication is required")**
logger.info("Two-factor authentication is required (2fa)")
if mfa_provider == MFAProvider.WEBUI:
request_2fa_web(icloud, logger, status_exchange)
else:
request_2fa(icloud, logger)
elif icloud.requires_2sa:
if raise_error_on_2sa:
raise TwoStepAuthRequiredError("Two-step authentication is required")
logger.info("Two-step authentication is required (2sa)")
request_2sa(icloud, logger)
I believe that you should not raise the 2SA error on 2FA request. And raising an exception prevents from running request_2fa_web.
Overview
When smtp_username is specified the MFA dialogue in the WebUI only asks for password but never for verification code. When you delete the smtp_username it does work.
Steps to Reproduce
Expected Behavior
First ask for a password. Then ask for the verification code.
Actual Behavior
Only asks for a password and never asks for the verification.
Context
The code contains:
I believe that you should not raise the 2SA error on 2FA request. And raising an exception prevents from running request_2fa_web.