Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 23 Jun 1997 19:44:12 -0700
From:      Sean Eric Fagan <sef@Kithrup.COM>
To:        emulation@FreeBSD.ORG, msagre@cactus.fi.uba.ar
Subject:   Re: ORACLE problem with ibcs2_getgroups
Message-ID:  <199706240244.TAA07504@kithrup.com>

next in thread | raw e-mail | index | archive | help
I have no idea what this code is trying to do.  (The original code, that
is.)  Well, okay, I think I understand it now.

However... according to the SCO system I just checked (which, admittedly, is
not SysVr3.2, which is what the original iBCS2 stuff was based on):  if
getgroups() is called with a first parameter of 0, it is supposed to return
the number of supplemental groups, although it won't set any.  Your patch
does not allow that.  (For that matter, I don't think the old one did,
either ;).)  Instead, the code should check for SCARG(uap, gidsetsize) being
0, and, if so, it should set SCARG(&sa, gidsetsize) to NGROUPS_MAX *
sizeof(gid_t).

Without looking at it more, I think that Oracle is checking to see how much
space it should allocate for the supplementary groups, but passing in a size
of 0 is causing our getgroups() routine to return an error.

But I haven't looked at it too closely yet, so I could be wrong.

Sean.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199706240244.TAA07504>