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 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html