User:Standard8/MailNews Password Manager Migration
From MozillaWiki
Contents
Current Status
- Main Core changes in place (PW migration, nsIAuthPrompt handling).
- May require further changes to PW migration routines
- LDAP URL Patch updated and submitted for review bug 419595
- Patches for SM Prefs, tools menu, front-end bug 390025
- May be out-of-date
- Build config & installer patch on bug 239131, need to get reviews when a bit closer.
- TB UI patch needs updating bug 239131
- Backend-changes required (see below)
Backend changes/information
Protocols versus urls registered within MailNews
Ones I'm worried about:
Protocol | Handler | Url | Url derived from nsMsgMailNewsUrl? | Status |
---|---|---|---|---|
ldap | nsLDAPProtocolHandler.js | nsLDAPUrl | No | patch in bug 419595 |
ldaps | nsLDAPProtocolHandler.js | nsLDAPUrl | No | patch in bug 419595 |
|
|
nsIMAPUrl | Yes | Complete |
news | nsNntpService.cpp | nsNewsUrl | Yes | bug 470439 fixes password migration. Protocol hander tests already in. |
|
|
N/A | N/A | N/A |
|
|
N/A | N/A | N/A |
|
|
N/A | N/A | N/A |
smtp | nsSmtpProtocolHandler.js | nsSmtpUrl | Yes | patch in bug 469807 |
smtps | nsSmtpProtocolHandler.js (patch in bug 469807) | nsSmtpUrl | Yes | patch in bug 469807 |
|
|
N/A | N/A | N/A |
|
N/A | N/A | N/A | N/A |
|
|
nsMailboxUrl | Yes | Complete |
Others:
- addbook
- Address book printing.
- cid
- Something to do with generating HTML
Current Problems
- News logins probably won't migrate properly.
- Mail logins may not migrate properly if username has been changed since account was created (the uri uses the original account username) - or if they do, it'll be confusing to the user.
- Need to check consistency of nsIURI::path for the mailnews uris.
- Need to provide smtp protocol handler for mailnews (and any others that are missing).
- Need secure version of LDAP protocol handler.
- Some incorrect refcount or something causing cycle collector issues?
Notes to self
- mailbox = pop3
- ldap/ldaps is correct
Current formats of urls
Site | Username | nsIAuthPrompt Calls |
imap://username@host | username | PromptPassword |
ldap://localhost:389/dc=test | <> | PromptPassword |
mailbox://username@host | username | PromptPassword |
smtp://username@host | <> | PromptPassword and PromptUsernameAndPassword |
news://localhost:119/#password news://localhost:119/#username |
<> <> |
Prompt and PromptPassword |
Proposed new format
Hostname (site) | httpRealm | username | nsIAuthPrompt Calls |
imap://host | imap://host | username | PromptPassword |
ldap://localhost | ldap://localhost/dc=test | username +++ | PromptPassword |
mailbox://host | mailbox://host | username | PromptPassword |
smtp://host | smtp://host | username | PromptPassword and PromptUsernameAndPassword |
news://localhost/ | news://localhost/ | username | PromptUsernameAndPassword |
smtp needs migration for smtps and port.
Misc Notes
- formSubmitURL is always not set.
- httpRealm is always set as you must set on of httpRealm or formSubmitURL (in LDAP case we need this anyway).
- +++ username for LDAP won't be used straight away as it needs other bugs fixing first.