Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Evergreen:11.1:Test
gnome-keyring
gnome-keyring-pam-stop-passwd.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File gnome-keyring-pam-stop-passwd.patch of Package gnome-keyring
Index: gnome-keyring-2.24.1/pam/gkr-pam-module.c =================================================================== --- gnome-keyring-2.24.1.orig/pam/gkr-pam-module.c +++ gnome-keyring-2.24.1/pam/gkr-pam-module.c @@ -925,7 +925,7 @@ pam_chauthtok_preliminary (pam_handle_t } static int -pam_chauthtok_update (pam_handle_t *ph, struct passwd *pwd) +pam_chauthtok_update (pam_handle_t *ph, struct passwd *pwd, uint args) { const char *password, *original; int ret, started_daemon = 0; @@ -967,6 +967,12 @@ pam_chauthtok_update (pam_handle_t *ph, return ret; ret = change_keyring_password (ph, pwd, password, original); + + /* if not auto_start, kill the daemon if we started it: we don't want + * it to stay */ + if (started_daemon && !(args & ARG_AUTO_START)) + stop_daemon (ph, pwd); + if (ret != PAM_SUCCESS) return ret; @@ -978,8 +984,11 @@ pam_sm_chauthtok (pam_handle_t *ph, int { const char *user; struct passwd *pwd; + uint args; int ret; + args = parse_args (argc, argv); + /* Figure out and/or prompt for the user name */ ret = pam_get_user (ph, &user, NULL); if (ret != PAM_SUCCESS) { @@ -997,7 +1006,7 @@ pam_sm_chauthtok (pam_handle_t *ph, int if (flags & PAM_PRELIM_CHECK) return pam_chauthtok_preliminary (ph, pwd); else if (flags & PAM_UPDATE_AUTHTOK) - return pam_chauthtok_update (ph, pwd); + return pam_chauthtok_update (ph, pwd, args); else return PAM_IGNORE; }
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor