Re: su: (why not?) merged from latest coreutils

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 09/05/2012 11:39 AM, Karel Zak wrote:
>> code fixes, copyright year number changes etc. but at least the following
>> seem to be worth including:
>>  
>>   71b7ddc port to GNU hosts, where getuid and friends can fail
>>   1c59bb3 nice, nohup, su: detect write failure to stderr
>
>  Fixed.

Thanks.

> [PATCH 1/2] su: more robust getpwuid() for GNU Hurt [coreutils 71b7ddc]

Hopefully, the Hurd folk don't feel 'hurt' when reading the commit :-)

> [PATCH 2/2] su: verify writing to streams was successful
> [...]
> +  atexit(close_stdout);

I'm not sure this was meant by 1c59bb3. As su calls execvp(),
close_stdout won't have a chance to run.
See the comment in the original patch:

+  /* error() flushes stderr, but does not check for write failure.
+     Normally, we would catch this via our atexit() hook of
+     close_stdout, but execvp() gets in the way.  If stderr
+     encountered a write failure, there is no need to try calling
+     error() again, particularly since we may have just changed the
+     underlying fd out from under stderr.  */
+  if (ferror (stderr))
+    exit (exit_internal_failure);


>> and these would be nice:
>> 
>>   a517386 maint: src/*.c: change remaining quotes (without embedded spaces)
>
>  It seems that `foo' quotes is a generic problem in our code. Not sure
>  why this is so important.

I personally have always wondered about that asymetric quoting was chosen.
GNU standards now say that 'foo' is to be used, so I propose to also
change UL programs. Something like this would be a good start (untested):

  $ git grep -l "\`[^']*'" |xargs perl -pi -e "s/\`(.*?')/'\$1/g"

WDYT?

Have a nice day,
Berny
--
To unsubscribe from this list: send the line "unsubscribe util-linux" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux