[SCM] Samba Shared Repository - branch master updated

Andreas Schneider asn at samba.org
Fri Oct 7 04:05:03 MDT 2011


The branch, master has been updated
       via  4493c57 uid_wrapper: Add uwrap_setresuid().
       via  17f1276 uid_wrapper: Add uwrap_setregid().
       via  c2b9e9b uid_wrapper: Add uwrap_setreuid().
      from  556ef6a s4-param copy print_parameter and equal_parameter in from source3

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit 4493c578b0da44ae2100cc0d4d6acc714bf39a3f
Author: Andreas Schneider <asn at samba.org>
Date:   Fri Oct 7 10:30:23 2011 +0200

    uid_wrapper: Add uwrap_setresuid().
    
    Autobuild-User: Andreas Schneider <asn at cryptomilk.org>
    Autobuild-Date: Fri Oct  7 12:04:05 CEST 2011 on sn-devel-104

commit 17f1276feadae1cfeea559e46e44ad136c438251
Author: Andreas Schneider <asn at samba.org>
Date:   Thu Oct 6 16:52:03 2011 +0200

    uid_wrapper: Add uwrap_setregid().

commit c2b9e9b0eab3b10e36a56835602e7c931c406b12
Author: Andreas Schneider <asn at samba.org>
Date:   Thu Oct 6 16:25:32 2011 +0200

    uid_wrapper: Add uwrap_setreuid().

-----------------------------------------------------------------------

Summary of changes:
 lib/uid_wrapper/uid_wrapper.c |   33 +++++++++++++++++++++++++++++++++
 lib/uid_wrapper/uid_wrapper.h |   18 ++++++++++++++++++
 2 files changed, 51 insertions(+), 0 deletions(-)


Changeset truncated at 500 lines:

diff --git a/lib/uid_wrapper/uid_wrapper.c b/lib/uid_wrapper/uid_wrapper.c
index 05d226b..8229fbb 100644
--- a/lib/uid_wrapper/uid_wrapper.c
+++ b/lib/uid_wrapper/uid_wrapper.c
@@ -73,6 +73,28 @@ _PUBLIC_ int uwrap_seteuid(uid_t euid)
 	return 0;
 }
 
+_PUBLIC_ int uwrap_setreuid(uid_t ruid, uid_t euid)
+{
+	uwrap_init();
+	if (!uwrap.enabled) {
+		return setreuid(ruid, euid);
+	}
+	/* assume for now that the ruid stays as root */
+	uwrap.euid = euid;
+	return 0;
+}
+
+_PUBLIC_ int uwrap_setresuid(uid_t ruid, uid_t euid, uid_t suid)
+{
+	uwrap_init();
+	if (!uwrap.enabled) {
+		return setresuid(ruid, euid, suid);
+	}
+	/* assume for now that the ruid stays as root */
+	uwrap.euid = euid;
+	return 0;
+}
+
 _PUBLIC_ uid_t uwrap_geteuid(void)
 {
 	uwrap_init();
@@ -93,6 +115,17 @@ _PUBLIC_ int uwrap_setegid(gid_t egid)
 	return 0;
 }
 
+_PUBLIC_ int uwrap_setregid(gid_t rgid, gid_t egid)
+{
+	uwrap_init();
+	if (!uwrap.enabled) {
+		return setregid(rgid, egid);
+	}
+	/* assume for now that the ruid stays as root */
+	uwrap.egid = egid;
+	return 0;
+}
+
 _PUBLIC_ uid_t uwrap_getegid(void)
 {
 	uwrap_init();
diff --git a/lib/uid_wrapper/uid_wrapper.h b/lib/uid_wrapper/uid_wrapper.h
index b3b11d9..51a11c5 100644
--- a/lib/uid_wrapper/uid_wrapper.h
+++ b/lib/uid_wrapper/uid_wrapper.h
@@ -21,8 +21,11 @@
 
 int uwrap_enabled(void);
 int uwrap_seteuid(uid_t euid);
+int uwrap_setreuid(uid_t reuid, uid_t euid);
+int uwrap_setresuid(uid_t reuid, uid_t euid, uid_t suid);
 uid_t uwrap_geteuid(void);
 int uwrap_setegid(gid_t egid);
+int uwrap_setregid(gid_t egid);
 uid_t uwrap_getegid(void);
 int uwrap_setgroups(size_t size, const gid_t *list);
 int uwrap_getgroups(int size, gid_t *list);
@@ -34,11 +37,26 @@ gid_t uwrap_getgid(void);
 #endif
 #define seteuid	uwrap_seteuid
 
+#ifdef setreuid
+#undef setreuid
+#endif
+#define setreuid	uwrap_setreuid
+
+#ifdef setresuid
+#undef setresuid
+#endif
+#define setresuid	uwrap_setresuid
+
 #ifdef setegid
 #undef setegid
 #endif
 #define setegid	uwrap_setegid
 
+#ifdef setregid
+#undef setregid
+#endif
+#define setregid	uwrap_setegid
+
 #ifdef geteuid
 #undef geteuid
 #endif


-- 
Samba Shared Repository


More information about the samba-cvs mailing list