diff options
Diffstat (limited to 'security/gnome-keyring3/files/patch-pam_gkr-pam-client.c')
-rw-r--r-- | security/gnome-keyring3/files/patch-pam_gkr-pam-client.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/security/gnome-keyring3/files/patch-pam_gkr-pam-client.c b/security/gnome-keyring3/files/patch-pam_gkr-pam-client.c new file mode 100644 index 000000000..05a0306e6 --- /dev/null +++ b/security/gnome-keyring3/files/patch-pam_gkr-pam-client.c @@ -0,0 +1,18 @@ +--- pam/gkr-pam-client.c.orig 2008-10-07 12:25:23.000000000 -0400 ++++ pam/gkr-pam-client.c 2008-10-07 12:38:36.000000000 -0400 +@@ -96,12 +96,12 @@ check_peer_same_uid (int sock) + struct xucred xuc; + socklen_t xuc_len = sizeof (xuc); + +- if (getsockopt (sock, SOL_SOCKET, LOCAL_PEERCRED, &xuc, &xuc_len) == 0 && +- xuc_len == sizeof (xuc)) { ++ if (getsockopt (sock, 0, LOCAL_PEERCRED, &xuc, &xuc_len) == 0 && ++ xuc.cr_version == XUCRED_VERSION) { + uid = xuc.cr_uid; + } else { + syslog (GKR_LOG_ERR, "could not get gnome-keyring-daemon socket credentials, " +- "(returned len %d/%d)\n", xuc_len, (int)sizeof (xuc)); ++ "(returned version %d/%d)\n", xuc.cr_version, XUCRED_VERSION); + return -1; + } + |