[#8478] resolv.rb -- doc patch. — Hugh Sasse <hgs@...>
This is an attempt to get the RD format docs for resolv.rb into
[#8484] strptime fails to properly parse certain inputs — <noreply@...>
Bugs item #5263, was opened at 2006-08-01 23:14
Hi,
Hi,
nobu@ruby-lang.org wrote:
Why bother other languages? They are on their own. We should not
[#8497] Ruby Socket to support SCTP? — Philippe Langlois <philippelanglois@...>
Hi,
[#8504] TCPSocket: bind method missing — hadmut@... (Hadmut Danisch)
Hi,
[#8513] patches for the 1.8.5 deadline... — Hugh Sasse <hgs@...>
As far as I can tell the only patches which I've submitted which
On Aug 3, 2006, at 10:20 AM, Hugh Sasse wrote:
On Fri, 4 Aug 2006, Eric Hodel wrote:
[#8522] IRB change for RDoc workaround — Eric Hodel <drbrain@...7.net>
RDoc chokes on the following code:
[#8525] rdoc bug? — Steven Jenkins <steven.jenkins@...>
I think I've found a bug in rdoc's handling of C files. Specifically, it
[#8555] Process.gid= fails on OS X — <noreply@...>
Bugs item #5351, was opened at 2006-08-08 01:56
>>>>> On Tue, 8 Aug 2006 17:56:07 +0900
Hi,
Hi,
>>>>> On Wed, 9 Aug 2006 12:31:07 +0900
Hi,
[#8561] sandbox timers & block scopes — why the lucky stiff <ruby-core@...>
Two puzzles I am trying to solve:
On 8/8/06, why the lucky stiff <ruby-core@whytheluckystiff.net> wrote:
On 8/16/06, Francis Cianfrocca <garbagecat10@gmail.com> wrote:
raise ThisDecayingInquisition, "anyone? anyone at all?"
On Wed, 2006-08-16 at 00:35 +0900, why the lucky stiff wrote:
On Wed, Aug 16, 2006 at 02:46:30AM +0900, MenTaLguY wrote:
On 8/15/06, why the lucky stiff <ruby-core@whytheluckystiff.net> wrote:
On 8/15/06, Charles O Nutter <headius@headius.com> wrote:
On Wed, Aug 16, 2006 at 04:14:33AM +0900, Charles O Nutter wrote:
On 8/15/06, why the lucky stiff <ruby-core@whytheluckystiff.net> wrote:
Hi,
[#8568] Pathname.to_a — Marc Haisenko <haisenko@...>
Hi folks,
[#8585] RDoc: extensions spread across multiple C files — Tilman Sauerbeck <tilman@...>
Hi,
Tilman Sauerbeck [2006-08-11 00:39]:
[#8593] ri problem with the latest ruby_1_8 — "Kent Sibilev" <ksruby@...>
Does anyone know why for some strange reason ri doesn't know about any
On Aug 11, 2006, at 10:55 AM, Kent Sibilev wrote:
[#8608] Another ri problem (ruby_1_8 branch) — "Kent Sibilev" <ksruby@...>
I've noticed that many builtin Ruby classes don't have descriptions:
On Aug 12, 2006, at 11:45 PM, Kent Sibilev wrote:
On 8/15/06, Eric Hodel <drbrain@segment7.net> wrote:
[#8609] Again Range=== bug — Ondrej Bilka <neleai@...>
Problem of discrete membership at Range#=== is that it returns unexpected
[#8616] invalid test in "sudo make install-doc"? — <noreply@...>
Bugs item #5415, was opened at 2006-08-14 12:01
[#8662] NODE_WHEN inside a case else body — "Dominik Bathon" <dbatml@...>
Hi,
[#8690] a ruby-core primer — why the lucky stiff <ruby-core@...>
Hello, all. I've been working on the ruby-core page for the new Ruby site.
On 8/22/06, why the lucky stiff <ruby-core@whytheluckystiff.net> wrote:
On 8/24/06, Dave Howell <groups+2006@howell.seattle.wa.us> wrote:
[#8709] More ri-problems (ruby_1_8 branch again) — Johan Holmberg <holmberg@...>
Hi!
[#8735] Legal operator symbols — "Nikolai Weibull" <now@...>
Why are :>, :>=, :<=, :< fine as symbols, while := isn't?
Hi --
[#8758] sandbox r50, here we go, loading conflicting gems — why the lucky stiff <ruby-core@...>
Checky.
Process.gid= fails on OS X - need feedback
(sorry for repost, All I've added is a subject to attract eyes)
I'm looking at Ticket # 5365 (Process.gid= fails on OS X) at:
http://rubyforge.org/tracker/?
func=detail&atid=1698&aid=5365&group_id=426
and am poking at process.c. There are some problems with either the
implementation and/or the documentation for it. To summarize:
1) Documentation doesn't agree with implementation - might want to
state only sets to egid.
2) setregid is not recommended for use.
3) rb_notimplemented used for a permissions error.
4) root can't set to anything but effective gid. We should let the
system decide.
#1:
The doco states:
Sets the group ID for this process.
But the implementation only does a setgid if the desired gid is the
effective gid. Given change_privilege, I think it is the doco that is
wrong. Please confirm.
#2/3:
With regard to the implementation, it is preferring setregid over
setegid/setgid, but my man page states (on both darwin and freebsd):
The setregid() function was intended to allow swapping the real
and
effective group IDs in set-group-ID programs to temporarily
relinquish
the set-group-ID value. This function did not work correctly,
and its
purpose is now better served by the use of the setegid()
function (see
setuid(2)).
When setting the real and effective group IDs to the same
value, the
standard setgid() function is preferred.
So maybe we should prefer the following change:
--- process.c 06 Aug 2006 16:10:26 -0700 1.92.2.33
+++ process.c 14 Aug 2006 12:19:16 -0700
@@ -2494,9 +2494,7 @@
check_gid_switch();
#if defined(HAVE_SETRESGID) && !defined(__CHECKER__)
if (setresgid(gid, -1, -1) < 0) rb_sys_fail(0);
-#elif defined HAVE_SETREGID
- if (setregid(gid, -1) < 0) rb_sys_fail(0);
-#elif defined HAVE_SETRGID
+#elif defined _WIN32 && !defined __CYGWIN__ && defined HAVE_SETRGID
if (setrgid((GIDTYPE)gid) < 0) rb_sys_fail(0);
#elif defined HAVE_SETGID
{
@@ -2504,7 +2502,7 @@
if (setgid(gid) < 0) rb_sys_fail(0);
}
else {
- rb_notimplement();
+ rb_raise(rb_eSecurityError, "gid (%d) is not equal to the
effective group id", gid);
}
}
#else
Note also that I changed the rb_notimplemented to be a correct error
message for the situation.
#4:
If the doco is fine and #gid= should be able to set the gid, then we
should probably take out the effective gid check entirely and let the
system call do it. The man page says that you should be able to set
to whatever you want if you are root:
[EPERM] The current process is not the super-user
and a change
other than changing the effective group-id
to the real
group-id was specified.
But our implementation doesn't allow for that. This does:
--- process.c 06 Aug 2006 16:10:26 -0700 1.92.2.33
+++ process.c 14 Aug 2006 12:20:52 -0700
@@ -2494,18 +2494,11 @@
check_gid_switch();
#if defined(HAVE_SETRESGID) && !defined(__CHECKER__)
if (setresgid(gid, -1, -1) < 0) rb_sys_fail(0);
-#elif defined HAVE_SETREGID
- if (setregid(gid, -1) < 0) rb_sys_fail(0);
-#elif defined HAVE_SETRGID
+#elif defined _WIN32 && !defined __CYGWIN__ && defined HAVE_SETRGID
if (setrgid((GIDTYPE)gid) < 0) rb_sys_fail(0);
#elif defined HAVE_SETGID
{
- if (getegid() == gid) {
- if (setgid(gid) < 0) rb_sys_fail(0);
- }
- else {
- rb_notimplement();
- }
+ if (setgid(gid) < 0) rb_sys_fail(0);
}
#else
rb_notimplement();
Please tell me what you guys prefer and I'll get it tested and
committed.