Skip to content

Draft: credential rework

Thomas Guillem requested to merge tguillem/vlc:keystore into master

MR from an abandoned patch set more than one year ago: https://mailman.videolan.org/pipermail/vlc-devel/2020-December/141201.html

  • Add a flag to force the user interaction (via dialogs). It will be used via LibVLC and VLC interfaces. This can be used to change the logged username.

  • Send the logged user to LibVLC and VLC interfaces. For the Qt UI, we could add a widget near the URL widget displaying "logged as ", if clicked, it will force a reload with a forced user interaction.

  • Always save on the memory keystore (even if the system one is available), speed up parsing, and allow using credentials in background (preparsing).

NB: if accepted, I will implement interacted_forced (if needed) and user propagation on all other accesses.

There was one comment from @Courmisch : https://mailman.videolan.org/pipermail/vlc-devel/2020-December/141218.html that lead to my unanswered question:

I have no strong arguments on that matter and it's the right time to change the current behavior. So, to resume, we have 2 choices:

  • Always enable and use the system keystore (even when parsing in background). The system keystore will have a priority higher than the cache keystore. So, if the system keystore is unlocked, the cache keystore will never be used. /!\ WARNING: It may trigger a dialog from the OS asking for a pin/passphrase to unlock the wallet. It should not have a big impact since most OSses generally unlock the keystore when the user logs in.

  • Keep the behavior I proposed on the ML The system keystore is not used for background parsing. Therefore, background parsing will only work if the user specifically request it from (from a direct or indirect action).

Merge request reports