mirror of
git://sourceware.org/git/glibc.git
synced 2024-11-27 03:41:23 +08:00
2002-08-13 Jakub Jelinek <jakub@redhat.com>
* include/unistd.h (seteuid, setegid): Add libc_hidden_proto. * sysdeps/generic/seteuid.c (seteuid): Add libc_hidden_def. * sysdeps/generic/setegid.c (setegid): Likewise. * sysdeps/mach/hurd/seteuid.c (seteuid): Likewise. * sysdeps/mach/hurd/setegid.c (setegid): Likewise. * sysdeps/unix/bsd/seteuid.c (seteuid): Likewise. * sysdeps/unix/bsd/setegid.c (setegid): Likewise. * sysdeps/unix/sysv/aix/seteuid.c (seteuid): Likewise. * sysdeps/unix/sysv/aix/setegid.c (setegid): Likewise. * sysdeps/unix/sysv/linux/i386/setegid.c (setegid): Likewise. * sysdeps/unix/sysv/linux/sparc/sparc32/seteuid.c (seteuid): Likewise. * sysdeps/unix/sysv/linux/sparc/sparc32/setegid.c (setegid): Likewise. * sysdeps/unix/sysv/linux/seteuid.c (seteuid): Likewise. * sysdeps/unix/sysv/linux/setegid.c (setegid): Likewise. * sysdeps/unix/sysv/linux/i386/seteuid.c (seteuid): Likewise. Remove fallback if __ASSUME_SETRESUID_SYSCALL.
This commit is contained in:
parent
0a02a366e3
commit
6e86f21f71
@ -1,4 +1,4 @@
|
||||
/* Copyright (C) 1992, 1994, 1995, 1996, 1997 Free Software Foundation, Inc.
|
||||
/* Copyright (C) 1992,1994,1995,1996,1997,2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
@ -27,7 +27,6 @@ setegid (gid)
|
||||
__set_errno (ENOSYS);
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
||||
libc_hidden_def (setegid)
|
||||
stub_warning (setegid)
|
||||
#include <stub-tag.h>
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Copyright (C) 1992, 1995, 1996, 1997 Free Software Foundation, Inc.
|
||||
/* Copyright (C) 1992, 1995, 1996, 1997, 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
@ -27,7 +27,6 @@ seteuid (uid)
|
||||
__set_errno (ENOSYS);
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
||||
libc_hidden_def (seteuid)
|
||||
stub_warning (seteuid)
|
||||
#include <stub-tag.h>
|
||||
|
@ -66,3 +66,4 @@ setegid (gid)
|
||||
__mach_port_deallocate (__mach_task_self (), newauth);
|
||||
return err;
|
||||
}
|
||||
libc_hidden_def (setegid)
|
||||
|
@ -66,3 +66,4 @@ seteuid (uid)
|
||||
__mach_port_deallocate (__mach_task_self (), newauth);
|
||||
return err;
|
||||
}
|
||||
libc_hidden_def (seteuid)
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
|
||||
/* Copyright (C) 1995, 1996, 1997, 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
@ -32,3 +32,4 @@ setegid (gid)
|
||||
|
||||
return __setregid (-1, gid);
|
||||
}
|
||||
libc_hidden_def (setegid)
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
|
||||
/* Copyright (C) 1995, 1996, 1997, 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
@ -32,3 +32,4 @@ seteuid (uid)
|
||||
|
||||
return __setreuid (-1, uid);
|
||||
}
|
||||
libc_hidden_def (seteuid)
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Copyright (C) 2000 Free Software Foundation, Inc.
|
||||
/* Copyright (C) 2000, 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
@ -29,3 +29,4 @@ __setegid (gid_t gid)
|
||||
return setgidx (ID_EFFECTIVE, gid);
|
||||
}
|
||||
strong_alias (__setegid, setegid)
|
||||
libc_hidden_def (setegid)
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Copyright (C) 2000 Free Software Foundation, Inc.
|
||||
/* Copyright (C) 2000, 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
@ -29,3 +29,4 @@ __seteuid (uid_t uid)
|
||||
return setuidx (ID_EFFECTIVE, uid);
|
||||
}
|
||||
strong_alias (__seteuid, seteuid)
|
||||
libc_hidden_def (seteuid)
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Copyright (C) 1995, 96, 97, 98, 2000 Free Software Foundation, Inc.
|
||||
/* Copyright (C) 1995, 96, 97, 98, 2000, 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
@ -25,3 +25,4 @@ setegid (gid)
|
||||
{
|
||||
return __setregid (-1, gid);
|
||||
}
|
||||
libc_hidden_def (setegid)
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Copyright (C) 1998, 2000 Free Software Foundation, Inc.
|
||||
/* Copyright (C) 1998, 2000, 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
@ -33,7 +33,11 @@ seteuid (uid_t uid)
|
||||
/* First try the syscall. */
|
||||
#ifdef __NR_setresuid
|
||||
result = __setresuid (-1, uid, -1);
|
||||
#if __ASSUME_SETRESUID_SYSCALL > 0
|
||||
if (0)
|
||||
#else
|
||||
if (result == -1 && errno == ENOSYS)
|
||||
#endif
|
||||
/* No system call available. Use emulation. This may not work
|
||||
since `setreuid' also sets the saved user ID when UID is not
|
||||
equal to the real user ID, making it impossible to switch back. */
|
||||
@ -42,3 +46,4 @@ seteuid (uid_t uid)
|
||||
|
||||
return result;
|
||||
}
|
||||
libc_hidden_def (seteuid)
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Copyright (C) 1998, 2000 Free Software Foundation, Inc.
|
||||
/* Copyright (C) 1998, 2000, 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
@ -46,6 +46,7 @@ setegid (gid_t gid)
|
||||
|
||||
return result;
|
||||
}
|
||||
libc_hidden_def (setegid)
|
||||
#else
|
||||
# include <sysdeps/unix/bsd/setegid.c>
|
||||
#endif
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Copyright (C) 1998, 1999 Free Software Foundation, Inc.
|
||||
/* Copyright (C) 1998, 1999, 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
@ -50,6 +50,7 @@ seteuid (uid_t uid)
|
||||
|
||||
return result;
|
||||
}
|
||||
libc_hidden_def (seteuid)
|
||||
#else
|
||||
# include <sysdeps/unix/bsd/seteuid.c>
|
||||
#endif
|
||||
|
@ -46,6 +46,7 @@ setegid (gid_t gid)
|
||||
|
||||
return result;
|
||||
}
|
||||
libc_hidden_def (setegid)
|
||||
#else
|
||||
# include <sysdeps/unix/bsd/setegid.c>
|
||||
#endif
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
|
||||
/* Copyright (C) 1998, 1999, 2000, 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
@ -50,6 +50,7 @@ seteuid (uid_t uid)
|
||||
|
||||
return result;
|
||||
}
|
||||
libc_hidden_def (seteuid)
|
||||
#else
|
||||
# include <sysdeps/unix/bsd/seteuid.c>
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user