Description: |
|
|||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Testing Done: |
|
Port wincred keyring to PurpleCredentialManager
Review Request #466 — Created Jan. 30, 2021 and submitted
Information | |
---|---|
QuLogic | |
pidgin/pidgin | |
default | |
PIDGIN-17489 | |
Reviewers | |
pidgin | |
- Inline PURPLE_PLUGIN_INIT in wincred.
- Add skeleton of wincred PurpleCredentialProvider object.
- Implement password reading.
- Implement wincred password writing.
- Implement wincred password clearing.
- Autoload wincred keyring plugin.
- Cleanup formatting.
Added XMPP account, saved password, disabled and re-enabled account which kept the password. Restarted Pidgin and password was still saved. Removed XMPP account, and password was deleted from Credential Manager.
I'm not sure that the password needs to be converted from UTF-8 to "Unicode", as I did not test modifying the password in Credential Manager.
-
-
libpurple/plugins/keyrings/wincred.c (Diff revision 1) We should probably still clear this for security concerns as other programs could read it after the memory is freed back to the operating system.
-
libpurple/plugins/keyrings/wincred.c (Diff revision 1) we should probably move purple_utf16_wipe to here (i believe it's the only use) or memset it to make sure it's nuked from memory.