Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
By the term "prompt-driven" I mean two-way conversation between the
screensaver dialog and the PAM stack. As you probably know, PAM works
by conversation with a dialog program asking the user to enter
something in answer to each message it sends. In the most conventional
case, the only question is "Password:" and the password is the only
data the user enters. But in general, the number of questions and
messages are not limited to that.
The previous support of PAM helper (gs-auth-helper.c) was written and
worked for the mentioned "only password" authentication scheme. For
other schemes it wasn't enough. New implementation fixes that
limitation.
Same as the previous version of gs-auth-helper.c, the new version uses
pipe interface for interprocess communication and synchronization.
However, unlike the previous version, new version uses two pipes
instead of a single pipe: the first one is used to transfer
prompt text from PAM via the helper to the screensaver dialog, and the
second one is used to transfer the user input from the dialog to
helper (and then the helper replies with it back to PAM). Having that
bidirectional prompt/reply channel it is possible to make as many
prompt/reply passes as required by PAM.
The present helper program (see the helper/ dir) is based on the
helper written by [email protected], which is in turn loosely based on
unix_chkpwd by Andrew Morgan.
All new code is untabified under the assumption the tab width is 8.
Signed-off-by: Paul Wolneykien <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Taken from downstream Debian patch.
Make keyboard translatable.
Add translator notes.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
This patch is adopted from xfce4-screensaver:
https://git.xfce.org/apps/xfce4-screensaver/commit/?id=9e53bb2866
Modified to match screen locking behavior of mate-power-manager.
Introduced new Inhibitor lock to make sure lock was in place and
user will be greeted with unlock dialog when resumes from suspend/
hibernate.
|
|
|
|
gtk_style_context_add_provider_for_screen (gdk_screen_get_default(),
GTK_STYLE_PROVIDER (style_provider),
GTK_STYLE_PROVIDER_PRIORITY_USER);
https://developer.gnome.org/gtk3/stable/GtkStyleContext.html#gtk-style-context-add-provider-for-screen
css data is located at /usr/share/mate-screensaver/lock-dialog-THEME.css,
XDG_CONFIG_HOME/gtk-3.0/gtk.css, /usr/share/themes/...
/usr/share/mate-screensaver/lock-dialog-THEME.css file has highest priority, if exists:
$ gsettings get org.mate.screensaver lock-dialog-theme
'test'
$ grep lock-dialog /usr/share/mate-screensaver/lock-dialog-test.css
.lock-dialog.background {
.lock-dialog frame {
.lock-dialog notebook {
.lock-dialog entry,
.lock-dialog entry:focus {
.lock-dialog button,
.lock-dialog button:focus {
.lock-dialog button:hover,
.lock-dialog button:hover:active {
...
Otherwise:
/usr/share/themes folder if lock-dialog-theme is set to 'debault'
$ gsettings get org.mate.screensaver lock-dialog-theme
'default'
$ gsettings get org.mate.interface gtk-theme
'TraditionalOk'
$ grep lock-dialog /usr/share/themes/TraditionalOk/gtk-3.0/*.css
/usr/share/themes/TraditionalOk/gtk-3.0/mate-applications.css:.lock-dialog {
/usr/share/themes/TraditionalOk/gtk-3.0/mate-applications.css:.lock-dialog notebook {
Priority order: https://developer.gnome.org/gtk3/stable/GtkStyleProvider.html
|
|
|
|
The X server hasn't implemented it in over 10 years.
and it was dropped from debian since a long time.
fixes https://github.com/mate-desktop/mate-screensaver/issues/199
|
|
|
|
Reuses WITH_SYSTEMD #define to reduce #ifdef mess.
ELOGIND is not officially supported, but since it's
a subset of systemd, it should work out of the box.
Co-authored-by: Joakim Tjernlund <[email protected]>
|