chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
util: unify SO_PEERCRED/SO_PEERSEC invocations
[elogind.git]
/
src
/
login
/
pam-module.c
diff --git
a/src/login/pam-module.c
b/src/login/pam-module.c
index 45428a090f40e767bbd500350cc20f50efeab309..89623aa765747e5bc93c0e2a3191dba3eb8f2b7d 100644
(file)
--- a/
src/login/pam-module.c
+++ b/
src/login/pam-module.c
@@
-120,7
+120,6
@@
static int get_seat_from_display(const char *display, const char **seat, uint32_
_cleanup_free_ char *p = NULL, *tty = NULL;
_cleanup_close_ int fd = -1;
struct ucred ucred;
_cleanup_free_ char *p = NULL, *tty = NULL;
_cleanup_close_ int fd = -1;
struct ucred ucred;
- socklen_t l;
int v, r;
assert(display);
int v, r;
assert(display);
@@
-144,10
+143,9
@@
static int get_seat_from_display(const char *display, const char **seat, uint32_
if (connect(fd, &sa.sa, offsetof(struct sockaddr_un, sun_path) + strlen(sa.un.sun_path)) < 0)
return -errno;
if (connect(fd, &sa.sa, offsetof(struct sockaddr_un, sun_path) + strlen(sa.un.sun_path)) < 0)
return -errno;
- l = sizeof(ucred);
- r = getsockopt(fd, SOL_SOCKET, SO_PEERCRED, &ucred, &l);
+ r = getpeercred(fd, &ucred);
if (r < 0)
if (r < 0)
- return
-errno
;
+ return
r
;
r = get_ctty(ucred.pid, NULL, &tty);
if (r < 0)
r = get_ctty(ucred.pid, NULL, &tty);
if (r < 0)