Closed Bug 1158462 Opened 9 years ago Closed 8 years ago

ASSERTION: POP: authMethod pref invalid: 'false', file /var/tmp/portage/www-client/seamonkey-2.33.1/work/comm-release/mailnews/local/src/nsPop3Protocol.cpp, line 1607

Categories

(MailNews Core :: Networking: POP, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED
Thunderbird 52.0

People

(Reporter: mmokrejs, Assigned: aceman)

Details

Attachments

(2 files, 1 obsolete file)

User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:36.0) Gecko/20100101 Firefox/36.0 SeaMonkey/2.33.1
Build ID: 20150425013755

Steps to reproduce:

I compiled seamonkey-2.33.1 DEBUG build and see the following, likely during the periodic POP3 email fetches:

GetDiskSpaceAvailable returned: 1149141307392 bytes
[32592] ###!!! ASSERTION: POP: authMethod pref invalid: 'false', file /var/tmp/portage/www-client/seamonkey-2.33.1/work/comm-release/mailnews/local/src/nsPop3Protocol.cpp, line 1607
Begin mail message delivery.
Abort mail message delivery.
GetDiskSpaceAvailable returned: 1149141307392 bytes
[32592] ###!!! ASSERTION: POP: authMethod pref invalid: 'false', file /var/tmp/portage/www-client/seamonkey-2.33.1/work/comm-release/mailnews/local/src/nsPop3Protocol.cpp, line 1607
Begin mail message delivery.
Abort mail message delivery.
GetDiskSpaceAvailable returned: 1149141307392 bytes
[32592] ###!!! ASSERTION: POP: authMethod pref invalid: 'false', file /var/tmp/portage/www-client/seamonkey-2.33.1/work/comm-release/mailnews/local/src/nsPop3Protocol.cpp, line 1607
Begin mail message delivery.
Abort mail message delivery.
GetDiskSpaceAvailable returned: 1149144072192 bytes
[32592] ###!!! ASSERTION: POP: authMethod pref invalid: 'false', file /var/tmp/portage/www-client/seamonkey-2.33.1/work/comm-release/mailnews/local/src/nsPop3Protocol.cpp, line 1607
Begin mail message delivery.
Abort mail message delivery.
GetDiskSpaceAvailable returned: 1149144199168 bytes
[32592] ###!!! ASSERTION: POP: authMethod pref invalid: 'false', file /var/tmp/portage/www-client/seamonkey-2.33.1/work/comm-release/mailnews/local/src/nsPop3Protocol.cpp, line 1607
Begin mail message delivery.
Abort mail message delivery.
GetDiskSpaceAvailable returned: 1149143384064 bytes
[32592] ###!!! ASSERTION: POP: authMethod pref invalid: 'false', file /var/tmp/portage/www-client/seamonkey-2.33.1/work/comm-release/mailnews/local/src/nsPop3Protocol.cpp, line 1607
Begin mail message delivery.
Abort mail message delivery.






Expected results:

BTW, the "Abort mail message delivery." seems too harsh. would "Finished mail message delivery." or "Abort mail message delivery (nothing to deliver)." be more appropriate?
Component: General → Networking: POP
OS: Unspecified → Linux
Product: SeaMonkey → MailNews Core
Hardware: Unspecified → x86_64
Version: SeaMonkey 2.33 Branch → 36
So what is your value of the authMethod preference for that server?
Attached image authMethod.png
I don't see any related to POP3 account. Clues?
So a value of 7 seems to be nsMsgAuthMethodValue::External. There is a comment that this method means "/// Auth External is cert-based authentication". Somehow this one is not acceptable for POP3. How did you set the prefs like that? Please go into account settings and review the security of the connection and password sending of each pop3 account.
The window in "Security" was all greyed-out (with placeholder for values for GPG/S-MIME crypto I guess). Here are values from "Server settings":

Server name: 192.168.251.1
Port: 110
Connection security: None
Auth method: TLS Cert

Server name: pop.gmail.com (I bet this one is the culprit)
Port: 995
Connection security: SSL/TLS
Auth method: Normal password

Server name: 192.168.251.1
Port: 110
Connection security: None
Auth method: TLS Cert

Server name: pop3.seznam.cz (should be unused)
Port: 995
Connection security: SSL/TLS
Auth method: Normal password

Server name: xx.xx.xx.xx (should be unused)
Port: 110
Connection security: None
Auth method: Password, transmitted insecurely

Server name: 192.168.252.1
Port: 110
Connection security: None
Auth method: TLS Cert
I never noticed that "TLS Certificate" option in the Auth method list. But I see it now. I don't know how it is supposed to work and why POP3 rejects it as unknown value. Then why is it even offered in the account settings.

Rkent, would you have an idea who could know something about this?
Flags: needinfo?(rkent)
No, I don't know anything about this option. I woiuld have to research it.
Flags: needinfo?(rkent)
It still happens with seamoneky-2.38:

[4464] ###!!! ASSERTION: POP: authMethod pref invalid: 'false', file /var/tmp/portage/www-client/seamonkey-2.38/work/comm-release/mailnews/local/src/nsPop3Protocol.cpp, line 1610
Still happens with:

[27536] ###!!! ASSERTION: POP: authMethod pref invalid: 'false', file /scratch/var/tmp/portage/www-client/seamonkey-2.42.3.0_p0/work/thunderbird-45.3.0/mailnews/local/src/nsPop3Protocol.cpp, line 1627
So when reading the code in that file, I think this happens:
1.The TLS certificate method is not supported in our POP3 handling.
2.if this value is set in account settings, the assertion is printed out.
3.Then the code falls back to supporting all the other methods, and matching with what the server advertises, chooses one of the other methods.

Martin, do you actually expect it to use any TLS certificate? Do you have any set in TB for this purpose (but I don't know how that is done)?
Can you try any of the other Auth options, like Normal password? I'd guess one of them will work as one of them is actually used even if you have TLS cert.

I see nsMsgAuthMethodValue::External being supported for IMAP.
So if my theory is true, we can hide this method for POP3 so that users do not run into it by mistake.

Wayne, I CC you here as this "TLS cert" method could be in use in enterprises. In case it actually works for somebody and we mistakenly disable it here, you may remember this bug :)
Assignee: nobody → acelists
So, looking at the Certificate for the 192.168.251.1 server I see it is anyway expired. Second, if I revert to Connection security: "None" and Auth method: "None, password transmitted insecurely", the ASSERT is gone. I agree now it is probably a misconfiguration on my side. So, the below combination should probably be banned:

Port: 110
Connection security: None
Auth method: TLS Cert
Attached patch patch (obsolete) — Splinter Review
Ok, let's hide it from the menu.
My reading of the code indicates External is not supported for POP3:
https://dxr.mozilla.org/comm-central/rev/a94bcdb65d806805648ad6c9e1251a2edb8d1df4/mailnews/local/src/nsPop3Protocol.cpp#1600
It is only for IMAP:
https://dxr.mozilla.org/comm-central/rev/a94bcdb65d806805648ad6c9e1251a2edb8d1df4/mailnews/imap/src/nsImapProtocol.cpp#5504
Attachment #8794548 - Flags: review?(mkmelin+mozilla)
Status: UNCONFIRMED → ASSIGNED
Ever confirmed: true
OS: Linux → All
Hardware: x86_64 → All
Version: 36 → Trunk
Comment on attachment 8794548 [details] [diff] [review]
patch

Review of attachment 8794548 [details] [diff] [review]:
-----------------------------------------------------------------

::: mailnews/base/prefs/content/am-server.js
@@ +34,3 @@
>    document.getElementById("authMethod-oauth2").hidden = (serverType != "imap");
> +  if (serverType != "imap")
> +    hideUnlessSelected(document.getElementById("authMethod-external"));

I think you should just use .hidden like for oauth2. If someone has it selected, it's not a working account anyway.
Attachment #8794548 - Flags: review?(mkmelin+mozilla) → review+
As you can see in the bug report, the account is working thanks to the fallback to other methods. The user only noticed because he was observing warnings from a DEBUG build (thanks!).

I worried that if we just hide it in the AM, if the user has the value selected, visiting the Server settings panel will reset the value to some other value (potentially choosing a method that does not work). But it seems to preserve the value so let's try it with your version.
Attached patch patch v2Splinter Review
Attachment #8794548 - Attachment is obsolete: true
Attachment #8794623 - Flags: review+
Keywords: checkin-needed
https://hg.mozilla.org/comm-central/rev/75c57c9dc363
Status: ASSIGNED → RESOLVED
Closed: 8 years ago
Keywords: checkin-needed
Resolution: --- → FIXED
Target Milestone: --- → Thunderbird 52.0
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: