Subject: Re: [PATCH] t/lib-httpd: switch SANITY check for NOT_ROOT

From: Jeff King <[email-masked]>
Date: Thu, 15 Jan 2015 22:34:46 -0500

On Thu, Jan 15, 2015 at 07:27:34PM -0800, Kyle J. McKay wrote:

> >We implement NOT_ROOT by checking perl's "$>" variable,
> >since we cannot rely on the "id" program being available
> >everywhere (and we would rather avoid writing a custom C
> >program to run geteuid if we can).
> 
> Does it make a difference that id is POSIX [1]?

I don't know. Do all of the platforms where we run http tests have it
(and conforming to POSIX-ish options or output)? It may be OK to guess
yes and see if anybody complains (the worst case is skipping http
tests).

> "id -u" works for me in MSYS and cygwin (each appears to have it's own
> id.exe).

That's comforting. MSYS was the one I was most worried about. What UID
do they report? I.e., do they correctly tell us if we are root (or
more accurately, if we are not root)?

> >+test_lazy_prereq NOT_ROOT '
> >+	uid=$(perl -e "print \$<") &&
> >+	test "$uid" != 0
> >+'
> 
> Does NO_PERL affect this?  Or is Perl always required to run the tests.

No, we use a very limited subset of perl in our tests when necessary
(basic enough that any perl5 will do), regardless of the NO_PERL
setting.

> Also "$<" is real user id.  Don't you want effective user id ("$>"), that's
> what the comment says...

Yeah, I bungled this initially and thought I fixed it, but clearly not.
:-/

I'll re-roll, but if we can get away with "id -u" I think that's
preferable.

-Peff

-- 
-- 
*** Please reply-to-all at all times ***
*** (do not pretend to know who is subscribed and who is not) ***
*** Please avoid top-posting. ***
The msysGit Wiki is here: https://github.com/msysgit/msysgit/wiki - Github accounts are free.

You received this message because you are subscribed to the Google
Groups "msysGit" group.
To post to this group, send email to [email-masked]
To unsubscribe from this group, send email to
[email-masked]
For more options, and view previous threads, visit this group at
http://groups.google.com/group/msysgit?hl=en_US?hl=en

--- 
You received this message because you are subscribed to the Google Groups "Git for Windows" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email-masked].
For more options, visit https://groups.google.com/d/optout.