Age | Commit message (Collapse) | Author | Files | Lines |
|
A header was missing
|
|
So that it can be used in other parts of gnome-keyring.
|
|
|
|
In order to shut up automake 1.14
|
|
|
|
|
|
libcrypt no longer supports setting our own threading callbacks,
and is thread-safe if we call gcry_check_version() before creating
threads.
Unfortunately we can't guarantee that we call gcry_check_version()
early enough, we try our best. Most of the callers of Gcr either
don't use libgcrypt, or also initialize it appropriately themselves.
Bump libgcrypt dependency to 1.4.5+, and have earlier versions use
the native pthread implementation of locking.
|
|
|
|
Merge the latest pot.
|
|
NULL or empty passwords are also valid passwords, so add a separate flag
to determine whether to pass --login.
https://bugzilla.gnome.org/show_bug.cgi?id=736085
|
|
|
|
|
|
Instead we use the 'struct passwd' that we looked up earlier.
This causes issues when the PAM stack is not running as the user
but as root or someone else.
https://bugzilla.gnome.org/show_bug.cgi?id=733418
|
|
|
|
|
|
GNOME has migrated to Git, so the error message should no longer refer
to the GNOME CVS.
https://bugzilla.gnome.org/show_bug.cgi?id=730340
|
|
|
|
|
|
|
|
This reverts commit b324fe2d976512b7705beca57ff9a62630cc6c83.
|
|
This reverts commit 8ac66bf0d2befdef3b8c96ef147e4e60fa7df0f7.
This broke the build. Probably srcdir != builddir troubles.
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=727010
|
|
|
|
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=726909
|
|
|
|
Make build with --disable-pam work again. And enforce that we have
all the optional components when doing a 'make distcheck'
|
|
|
|
If a user (needs to) change their password while authenticating (via
GDM for example), and pam_gnome_keyring is configured to start the
daemon from the session PAM stage, then we were failing to pass the
changed password to our session handler.
Fix this issue so that this workflow works.
https://bugzilla.gnome.org/show_bug.cgi?id=726196
|
|
If XDG_RUNTIME_DIR is not in the PAM envlist, but *is* in the
process environment, then steal it from there similar to how
we handle DISPLAY.
https://bugzilla.gnome.org/show_bug.cgi?id=726196
|
|
This happens when doing auto-login. The various side effects
of unlock_keyring (including setting *need_daemon) are valuable
even in the cases where password is NULL.
Add a test that checks that the daemon starts as expected when
the user did not authenticate.
http://bugzilla.gnome.org/show_bug.cgi?id=726245
|
|
Some PAM callers want this even though we don't do anything
interesting in here.
https://bugzilla.gnome.org/show_bug.cgi?id=726245
|
|
Quit control messages are a bit strange because the daemon will quit
shortly afterwards. There are three syncronization issues here.
1. We need the response to be written right away, because if
we wait for the main loop it might not be written.
2. Callers may want to wait for the daemon to exit, so keep the
socket open until we do.
3. Prevent additional connections on the control socket.
|
|
We exit with the DBus session bus. Remove this clutter from the
environment. PAM module no longer cares about the lifetime of
the deamon, except in one case: where it started the daemon in
order to change a password and the auto_start argument wasn't set.
https://bugzilla.gnome.org/show_bug.cgi?id=725801
|
|
In cases where we're using $XDG_RUNTIME_DIR to create a predictable
control socket directory, stop setting the $GNOME_KEYRING_CONTROL
environment variable.
Note that we don't use the $XDG_RUNTIME_DIR fallback. This is because
two of our clients don't link in GLib, both the pam and pkcs11
modules. Getting involved in the whole tree of fallback possibilities
for how to resolve $XDG_RUNTIME_DIR is not something I'm interested
in duplicating.
So instead what we do is if $XDG_RUNTIME_DIR is not set, we fall back
to using the old $GNOME_KEYRING_CONTROL environment variable.
We use the GLib logic when looking for XDG_RUNTIME_DIR. The variable
is considered present even when empty.
https://bugzilla.gnome.org/show_bug.cgi?id=725801
|
|
We create a predictable location under $XDG_RUNTIME_DIR. GNOME does
not support multiple GUI sessions per user, so using a predictable
directory works well for us.
If someone somewhere still wants an alternate location use the
--control-directory argument.
https://bugzilla.gnome.org/show_bug.cgi?id=725801
|
|
This was broken and would cause the daemon to fail internally.
The daemon wasn't being initialized due to the --login argument.
|
|
These require you to install some pam configs into /etc/pam.d. You
can do it with the following commands:
$ make enable-pam-tests
$ make disable-pam-tests
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=711537
|
|
|
|
This races with things connecting over the control socket and
trying to initialize the daemon
|
|
|
|
|
|
|
|
Rather than our own home rolled version.
|
|
We don't do this via the standard mechanism, as it means that libdbus
just calls _exit() (not even exit()) when the connection goes away.
This can lead to inconsistent state. Shutdown should be orderly.
https://bugzilla.gnome.org/show_bug.cgi?id=708765
|
|
Combine some code for starting a test daemon into a new internal
utility functions.
|
|
|
|
Call 'rm' to cleanup the directory instead of removing files ourselves.
We want to use nested directories in some tests.
|
|
This indicates to the caller both that it's the end of the environment
variables, and also provides a synchronization point where tests can
wait for the daemon.
|