This is the mail archive of the cygwin-developers mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: src/winsup/cygwin ChangeLog grp.cc


On Feb 20 08:09, Eric Blake wrote:
> On 02/20/2014 06:55 AM, corinna@cygwin.com wrote:
> > Log message:
> > 	* grp.cc (get_groups): Don't add gid to list if it's ILLEGAL_GID.
> > 	(getgrouplist): Return number of groups, just like glibc.
> > 
> > Patches:
> > http://sourceware.org/cgi-bin/cvsweb.cgi/src/winsup/cygwin/ChangeLog.diff?cvsroot=src&r1=1.6341&r2=1.6342
> > http://sourceware.org/cgi-bin/cvsweb.cgi/src/winsup/cygwin/grp.cc.diff?cvsroot=src&r1=1.125&r2=1.126
> 
> This patch is wrong.
> 
> > @@ -626,7 +626,7 @@
> >        }
> >    if (cnt > *ngroups)
> >      ret = -1;
> > -  *ngroups = cnt;
> > +  ret = *ngroups = cnt;
> 
> getgrouplist has the documented behavior of setting *ngroups to the
> number of groups that would be returned, even if the user passed a
> too-small *ngroups in to begin with - in that case, ret MUST be -1, but
> you just blindly set it to a too-large value.  That is, ret must be <=
> the initial value of *ngroups, and on output *ngroups must always be
> positive even when ret is negative.

Thanks for the heads up.  Fixed in CVS.


Corinna


P.S.: Eric, is there any chance we can get newer bash and coreutils
      any time soon?  Pretty please?


-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Maintainer                 cygwin AT cygwin DOT com
Red Hat

Attachment: pgplkkpQT7sCu.pgp
Description: PGP signature


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]