[Fakeroot-commits] fakeroot configure.ac,1.49,1.50 libfakeroot.c,1.20,1.21 wrapfunc.inp,1.5,1.6

schizo@haydn.debian.org schizo@haydn.debian.org


Update of /cvsroot/fakeroot/fakeroot
In directory haydn:/tmp/cvs-serv5748

Modified Files:
	configure.ac libfakeroot.c wrapfunc.inp 
Log Message:
 * configure.ac, libfakeroot.c: handle platforms without setresuid() or
   setresgid().


Index: configure.ac
===================================================================
RCS file: /cvsroot/fakeroot/fakeroot/configure.ac,v
retrieving revision 1.49
retrieving revision 1.50
diff -u -d -r1.49 -r1.50
--- configure.ac	18 Jun 2004 17:20:23 -0000	1.49
+++ configure.ac	18 Jun 2004 17:29:56 -0000	1.50
@@ -1,5 +1,5 @@
 dnl Process this file with autoconf to produce a configure script.
-AC_INIT([fakeroot],[1.0.0],[schizo@debian.org],[fakeroot])
+AC_INIT([fakeroot],[1.0.1],[schizo@debian.org],[fakeroot])
 AC_PREREQ(2.59)
 AC_CANONICAL_TARGET
 AM_INIT_AUTOMAKE
@@ -329,7 +329,7 @@
 AC_DEFINE_UNQUOTED([LIBCPATH], "$libcpath", [path to libc shared object])
 
 dnl Checks for library functions.
-AC_CHECK_FUNCS(strdup strstr)
+AC_CHECK_FUNCS(strdup strstr setresuid setresgid)
 
 dnl kludge
 AH_VERBATIM([WRAP_STAT],

Index: libfakeroot.c
===================================================================
RCS file: /cvsroot/fakeroot/fakeroot/libfakeroot.c,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -d -r1.20 -r1.21
--- libfakeroot.c	10 Jun 2004 16:31:22 -0000	1.20
+++ libfakeroot.c	18 Jun 2004 17:29:56 -0000	1.21
@@ -715,19 +715,23 @@
     return 0;
 }
 
+#ifdef HAVE_SETRESUID
 int setresuid(uid_t ruid, uid_t euid, uid_t suid){
   if (fakeroot_disabled)
     return next_setresuid(ruid, euid, suid);
   else
     return 0;
 }
+#endif /* HAVE_SETRESUID */
 
+#ifdef HAVE_SETRESGID
 int setresgid(gid_t rgid, gid_t egid, gid_t sgid){
   if (fakeroot_disabled)
     return next_setresgid(rgid, egid, sgid);
   else
     return 0;
 }
+#endif /* HAVE_SETRESGID */
 
 int initgroups(const char* user, INITGROUPS_SECOND_ARG group){
   if (fakeroot_disabled)

Index: wrapfunc.inp
===================================================================
RCS file: /cvsroot/fakeroot/fakeroot/wrapfunc.inp,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- wrapfunc.inp	18 Jun 2004 17:06:57 -0000	1.5
+++ wrapfunc.inp	18 Jun 2004 17:29:56 -0000	1.6
@@ -67,7 +67,11 @@
 setegid;int;(gid_t id);(id)
 setreuid;int;(SETREUID_ARG ruid, SETREUID_ARG euid);(ruid, euid)
 setregid;int;(SETREGID_ARG rgid, SETREGID_ARG egid);(rgid, egid)
+#ifdef HAVE_SETRESUID
 setresuid;int;(uid_t ruid, uid_t euid, uid_t suid);(ruid, euid, suid)
+#endif /* HAVE_SETRESUID */
+#ifdef HAVE_SETRESGID
 setresgid;int;(gid_t rgid, gid_t egid, gid_t sgid);(rgid, egid, sgid)
+#endif /* HAVE_SETRESGID */
 initgroups;int;(const char *user, INITGROUPS_SECOND_ARG group);(user, group)
 setgroups;int;(SETGROUPS_SIZE_TYPE size, const gid_t *list);(size, list)