version 1.19, 2006/03/25 22:22:43 |
version 1.20, 2006/06/06 10:20:20 |
|
|
/* |
/* |
* Macros to raise/lower permissions. |
* Macros to raise/lower permissions. |
*/ |
*/ |
#define PRIV_START do { \ |
#define PRIV_START do { \ |
int save_errno = errno; \ |
int save_errno = errno; \ |
(void)seteuid(original_effective_uid); \ |
if (seteuid(original_effective_uid) != 0) \ |
errno = save_errno; \ |
fatal("PRIV_START: seteuid: %s", \ |
|
strerror(errno)); \ |
|
errno = save_errno; \ |
} while (0) |
} while (0) |
|
|
#define PRIV_END do { \ |
#define PRIV_END do { \ |
int save_errno = errno; \ |
int save_errno = errno; \ |
(void)seteuid(original_real_uid); \ |
if (seteuid(original_real_uid) != 0) \ |
errno = save_errno; \ |
fatal("PRIV_END: seteuid: %s", \ |
|
strerror(errno)); \ |
|
errno = save_errno; \ |
} while (0) |
} while (0) |
|
|
#endif |
#endif |