From 2edb61e3f955bfcc9dd3cb6b3b1acfe4806234a6 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Mon, 20 Sep 2004 00:16:11 +0000 Subject: Update. * sysdeps/unix/sysv/linux/setegid.c [HAVE_PTR__NPTL_SETXID]: Call callback to set IDs in all other threads as well. * sysdeps/unix/sysv/linux/seteuid.c: Likewise. * sysdeps/unix/sysv/linux/i386/setegid.c: Likewise. * sysdeps/unix/sysv/linux/i386/seteuid.c: Likewise. * sysdeps/unix/sysv/linux/i386/setgid.c: Likewise. * sysdeps/unix/sysv/linux/i386/setuid.c: Likewise. * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise. * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise. * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise. * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise. * sysdeps/unix/sysv/linux/setuid.c: New file. * sysdeps/unix/sysv/linux/setgid.c: New file. * sysdeps/unix/sysv/linux/setreuid.c: New file. * sysdeps/unix/sysv/linux/setregid.c: New file. * sysdeps/unix/sysv/linux/setresuid.c: New file. * sysdeps/unix/sysv/linux/setresgid.c: New file. * sysdeps/unix/sysv/linux/i386/sysdep.h: Define INTERNAL_SYSCALL_NCS. * sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: Likewise. * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc32/setegid.c: Use x86 version. * sysdeps/unix/sysv/linux/sparc/sparc32/seteuid.c: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc32/setresgid.c: New file. * sysdeps/unix/sysv/linux/sparc/sparc32/setresuid.c: New file. * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list: Remove setresgid and setresuid. * nscd/aicache.c: Use pthread_seteuid_np instead of seteuid. * nscd/grpcache.c: Likewise. * nscd/hstcache.c: Likewise. * nscd/pwdcache.c: Likewise. --- nscd/aicache.c | 4 ++-- nscd/grpcache.c | 4 ++-- nscd/hstcache.c | 4 ++-- nscd/pwdcache.c | 4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-) (limited to 'nscd') diff --git a/nscd/aicache.c b/nscd/aicache.c index 7fddd7d98c..8c2f3f1489 100644 --- a/nscd/aicache.c +++ b/nscd/aicache.c @@ -80,7 +80,7 @@ addhstaiX (struct database_dyn *db, int fd, request_header *req, if (db->secure) { oldeuid = geteuid (); - seteuid (uid); + pthread_seteuid_np (uid); } static service_user *hosts_database; @@ -426,7 +426,7 @@ addhstaiX (struct database_dyn *db, int fd, request_header *req, _res.options = old_res_options; if (db->secure) - seteuid (oldeuid); + pthread_seteuid_np (oldeuid); if (dataset != NULL && !alloca_used) { diff --git a/nscd/grpcache.c b/nscd/grpcache.c index bf4a225edd..d9d9139991 100644 --- a/nscd/grpcache.c +++ b/nscd/grpcache.c @@ -419,7 +419,7 @@ addgrbyX (struct database_dyn *db, int fd, request_header *req, if (db->secure) { oldeuid = geteuid (); - seteuid (uid); + pthread_seteuid_np (uid); } while (lookup (req->type, key, &resultbuf, buffer, buflen, &grp) != 0 @@ -456,7 +456,7 @@ addgrbyX (struct database_dyn *db, int fd, request_header *req, } if (db->secure) - seteuid (oldeuid); + pthread_seteuid_np (oldeuid); cache_addgr (db, fd, req, keystr, grp, uid, he, dh, errval); diff --git a/nscd/hstcache.c b/nscd/hstcache.c index 4066aeec7f..d001e6526c 100644 --- a/nscd/hstcache.c +++ b/nscd/hstcache.c @@ -442,7 +442,7 @@ addhstbyX (struct database_dyn *db, int fd, request_header *req, if (db->secure) { oldeuid = geteuid (); - seteuid (uid); + pthread_seteuid_np (uid); } while (lookup (req->type, key, &resultbuf, buffer, buflen, &hst) != 0 @@ -480,7 +480,7 @@ addhstbyX (struct database_dyn *db, int fd, request_header *req, } if (db->secure) - seteuid (oldeuid); + pthread_seteuid_np (oldeuid); cache_addhst (db, fd, req, key, hst, uid, he, dh, h_errno == TRY_AGAIN ? errval : 0); diff --git a/nscd/pwdcache.c b/nscd/pwdcache.c index 93049bab12..bfc9ec0e07 100644 --- a/nscd/pwdcache.c +++ b/nscd/pwdcache.c @@ -415,7 +415,7 @@ addpwbyX (struct database_dyn *db, int fd, request_header *req, if (db->secure) { oldeuid = geteuid (); - seteuid (c_uid); + pthread_seteuid_np (c_uid); } while (lookup (req->type, key, &resultbuf, buffer, buflen, &pwd) != 0 @@ -452,7 +452,7 @@ addpwbyX (struct database_dyn *db, int fd, request_header *req, } if (db->secure) - seteuid (oldeuid); + pthread_seteuid_np (oldeuid); /* Add the entry to the cache. */ cache_addpw (db, fd, req, keystr, pwd, c_uid, he, dh, errval); -- cgit v1.2.3