?RCS: $Id: d_setreuid.U 167 2013-05-08 17:58:00Z rmanfredi $ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of ?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_setreuid.U,v $ ?RCS: Revision 3.0 1993/08/18 12:07:13 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: ?MAKE:d_setreuid d_setresuid: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_setreuid: ?S: This variable conditionally defines HAS_SETREUID if setreuid() is ?S: available to change the real and effective uid of the current ?S: process. ?S:. ?S:d_setresuid: ?S: This variable conditionally defines HAS_SETREUID if setresuid() is ?S: available to change the real, effective and saved uid of the current ?S: process. ?S:. ?C:HAS_SETREUID (SETREUID): ?C: This symbol, if defined, indicates that the setreuid routine is ?C: available to change the real and effective uid of the current ?C: process. ?C:. ?C:HAS_SETRESUID (SETRESUID): ?C: This symbol, if defined, indicates that the setresuid routine is ?C: available to change the real, effective and saved uid of the current ?C: process. ?C:. ?H:#$d_setreuid HAS_SETREUID /**/ ?H:#$d_setresuid HAS_SETRESUID /**/ ?H:. ?LINT:set d_setreuid d_setresuid : see if setreuid exists $cat >try.c < #$i_unistd I_UNISTD #ifdef I_UNISTD #include #endif int main(void) { static uid_t ruid, euid; static int ret; ret |= setreuid(ruid, euid); return ret ? 0 : 1; } EOC cyn=setreuid set d_setreuid eval $trylink : see if setresuid exists $cat >try.c < #endif int main(void) { static uid_t ruid, euid, suid; static int ret; ret |= setresuid(ruid, euid, suid); return ret ? 0 : 1; } EOC cyn=setresuid set d_setresuid eval $trylink