thunderbird / thunderbird/thunderbird-android

Update of K9-Mail led to settings corruption and "Sender address rejected: Not owned by username@domain.tld"

Open
#7,057 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Kotlin
Stars
14k
Forks
2.8k
Avg merge
3d 3h
Merged PRs (30d)
57

Description

Checklist
  • I have used the search function to see if someone else has already submitted the same bug report.
  • I will describe the problem with as much detail as possible.
App version

6.602

Where did you get the app from?

F-Droid

Android version

LineageOS 19-202306XX (no gapps)

Device model

FP3+

Steps to reproduce

An Update of K9-Mail to the latest version led to a settings corruption and led to the problem mentioned in https://github.com/thundernest/k-9/issues/1547

I updated the App via F-Droid.

Expected behavior

Expected behavior is probably to keep the unmodified settings when updating K9 Mail?

Actual behavior

I updated the App via F-Droid.

When receiving E-Mails, everything behaved exactly the same (with the correct login methods on the server-side, using password authentication via imaps)

When sending/replying to E-Mails, the update changed the behavior, and started to use username@domain.tld as the login for username, and therefore failed on the server-side, which expected only "username" to be used for the AUTH step.

The response from postfix was kinda super useless in terms of googling the problem, because it was simply "username@domain.tld: sender address rejected. Not owned by user username." even though there were no aliases or anything fancy configured on the server-side, and the username itself is the owner of the mailbox username@domain.tld.

Afterwards, I verified on Thunderbird with identical client settings that the server is still working, while in parallel diffing all server configuration files to rule out that an update on the server changed the configuration files or implied defaults there.

When I didn't find any solutions online (and basically figured out that all stackoverflow answers are super useless on these keywords), I tried to clear the cache and storage of the Android App, Uninstall the App, went to the Files app to remove all remaining folders, and reinstalled K9-Mail.

Following the wizard with identical client settings for imap/smtp, it worked again.

I think there might have been a quirk when updating the app or that there might be a settings migration feature of an old settings format that led to the "username@domain.tld" being used behind the scenes, instead of using the "username" as a login!? That's the only way this bug makes sense to me, because in the UI the settings were identical and both using the "username" as the preferred login.

Logs

No response

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce an update from app version 6.602 via F-Droid on the reported Android setup, then compare the SMTP login before and after the update. Verify the settings migration preserves the username and that sending or replying succeeds without the sender-address rejection.

Written by the indexing model from the issue text.

Assessment

Tech stack
android
Domain
authentication, mobile
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.