diff options
author | kosaki <kosaki@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2011-03-10 16:54:02 +0000 |
---|---|---|
committer | kosaki <kosaki@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2011-03-10 16:54:02 +0000 |
commit | bd90dc80f29a09376e04f5f1b6adbe17806a67fa (patch) | |
tree | e36f81d7e680bfdc0879d24a8c3033556293c92b /process.c | |
parent | 2ff3ec5dbea979cc5d37abc8fc8c98c8edc14fd8 (diff) |
* process.c (proc_getmaxgroups, proc_setmaxgroups): Process#maxgroups
and Process#maxgroups= now raise NotImplementedError if the
platform don't support supplementary groups concept.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31090 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'process.c')
-rw-r--r-- | process.c | 12 |
1 files changed, 10 insertions, 2 deletions
@@ -4524,6 +4524,7 @@ proc_setgid(VALUE obj, VALUE id) #endif +#if defined(HAVE_SETGROUPS) || defined(HAVE_GETGROUPS) /* * Maximum supplementary groups are platform dependent. * FWIW, 65536 is enough big for our supported OSs. @@ -4566,6 +4567,7 @@ static int maxgroups(void) return _maxgroups; } +#endif @@ -4719,7 +4721,7 @@ proc_initgroups(VALUE obj, VALUE uname, VALUE base_grp) #define proc_initgroups rb_f_notimplement #endif - +#if defined(_SC_NGROUPS_MAX) || defined(NGROUPS_MAX) /* * call-seq: * Process.maxgroups -> fixnum @@ -4735,8 +4737,11 @@ proc_getmaxgroups(VALUE obj) { return INT2FIX(maxgroups()); } +#else +#define proc_getmaxgroups rb_f_notimplement +#endif - +#ifdef HAVE_SETGROUPS /* * call-seq: * Process.maxgroups= fixnum -> fixnum @@ -4764,6 +4769,9 @@ proc_setmaxgroups(VALUE obj, VALUE val) return INT2FIX(_maxgroups); } +#else +#define proc_setmaxgroups rb_f_notimplement +#endif #if defined(HAVE_DAEMON) || (defined(HAVE_FORK) && defined(HAVE_SETSID)) #ifndef HAVE_DAEMON |