summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-04-18 16:41:16 +0000
committerakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-04-18 16:41:16 +0000
commitf3d5d707cc69c06fcbb81c65523b730c39337674 (patch)
treec0b44242da4e791cc17e73f81e1d092ac86b2d95
parentdf8ff329bb923522b3a4d7de4355584d46e72ee9 (diff)
* process.c (proc_seteuid_m): defined to use rb_f_notimplement if not
implemented. (proc_setegid_m): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23207 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog6
-rw-r--r--process.c16
2 files changed, 20 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 61520c983a..4eba9e7269 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+Sun Apr 19 01:39:17 2009 Tanaka Akira <akr@fsij.org>
+
+ * process.c (proc_seteuid_m): defined to use rb_f_notimplement if not
+ implemented.
+ (proc_setegid_m): ditto.
+
Sun Apr 19 01:03:56 2009 Tanaka Akira <akr@fsij.org>
* process.c (proc_setuid): use rb_f_notimplement if not implemented.
diff --git a/process.c b/process.c
index 81fff15f81..5669cf6641 100644
--- a/process.c
+++ b/process.c
@@ -4805,6 +4805,12 @@ proc_seteuid(VALUE obj, VALUE euid)
return euid;
}
+#if defined(HAVE_SETRESUID) || defined(HAVE_SETREUID) || defined(HAVE_SETEUID) || defined(HAVE_SETUID)
+#define proc_seteuid_m proc_seteuid
+#else
+#define proc_seteuid_m rb_f_notimplement
+#endif
+
static rb_uid_t
rb_seteuid_core(rb_uid_t euid)
{
@@ -4918,6 +4924,12 @@ proc_setegid(VALUE obj, VALUE egid)
return egid;
}
+#if defined(HAVE_SETRESGID) || defined(HAVE_SETREGID) || defined(HAVE_SETEGID) || defined(HAVE_SETGID)
+#define proc_setegid_m proc_setegid
+#else
+#define proc_setegid_m rb_f_notimplement
+#endif
+
static rb_gid_t
rb_setegid_core(rb_gid_t egid)
{
@@ -5502,9 +5514,9 @@ Init_process(void)
rb_define_module_function(rb_mProcess, "gid", proc_getgid, 0);
rb_define_module_function(rb_mProcess, "gid=", proc_setgid, 1);
rb_define_module_function(rb_mProcess, "euid", proc_geteuid, 0);
- rb_define_module_function(rb_mProcess, "euid=", proc_seteuid, 1);
+ rb_define_module_function(rb_mProcess, "euid=", proc_seteuid_m, 1);
rb_define_module_function(rb_mProcess, "egid", proc_getegid, 0);
- rb_define_module_function(rb_mProcess, "egid=", proc_setegid, 1);
+ rb_define_module_function(rb_mProcess, "egid=", proc_setegid_m, 1);
rb_define_module_function(rb_mProcess, "initgroups", proc_initgroups, 2);
rb_define_module_function(rb_mProcess, "groups", proc_getgroups, 0);
rb_define_module_function(rb_mProcess, "groups=", proc_setgroups, 1);