diff options
| author | Jun-ichi Takimoto <takimoto-j@kba.biglobe.ne.jp> | 2022-05-11 11:22:46 +0900 |
|---|---|---|
| committer | Jun-ichi Takimoto <takimoto-j@kba.biglobe.ne.jp> | 2022-05-11 11:22:46 +0900 |
| commit | c190883a0a76cee5ffc951728a539fe7f9d71feb (patch) | |
| tree | a3879b6bae4e2e0850a7fe1c1679e6e31877a86f /Src/openssh_bsd_setres_id.c | |
| parent | 50176 (tweaked): Improve htop completion (diff) | |
| download | zsh-c190883a0a76cee5ffc951728a539fe7f9d71feb.tar zsh-c190883a0a76cee5ffc951728a539fe7f9d71feb.tar.gz zsh-c190883a0a76cee5ffc951728a539fe7f9d71feb.tar.bz2 zsh-c190883a0a76cee5ffc951728a539fe7f9d71feb.tar.lz zsh-c190883a0a76cee5ffc951728a539fe7f9d71feb.tar.xz zsh-c190883a0a76cee5ffc951728a539fe7f9d71feb.tar.zst zsh-c190883a0a76cee5ffc951728a539fe7f9d71feb.zip | |
50192: use set{u,g}id() for dropping privilege on NetBSD
Diffstat (limited to 'Src/openssh_bsd_setres_id.c')
| -rw-r--r-- | Src/openssh_bsd_setres_id.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/Src/openssh_bsd_setres_id.c b/Src/openssh_bsd_setres_id.c index 217a6d074..26c7d3958 100644 --- a/Src/openssh_bsd_setres_id.c +++ b/Src/openssh_bsd_setres_id.c @@ -55,6 +55,16 @@ #include <unistd.h> #include <string.h> +#ifdef __NetBSD__ +/* + * On NetBSD, setreuid() does not reset the saved uid if the real uid + * is not modified. Better to use setuid() that resets all of real, + * effective and saved uids to the specified value. Same for setregid(). + */ +#define BROKEN_SETREUID +#define BROKEN_SETREGID +#endif + #if defined(ZSH_IMPLEMENT_SETRESGID) || defined(BROKEN_SETRESGID) int setresgid(gid_t rgid, gid_t egid, gid_t sgid) |
