Re: bash: Correct usage of F_SETFD

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

 



On 11/22/2010 03:16 PM, Chet Ramey wrote:
>> include/filecntl.h in bash-4.1 has following:
>>
>> #define SET_CLOSE_ON_EXEC(fd)  (fcntl ((fd), F_SETFD, FD_CLOEXEC))
>>
>> Is that really the correct/intended usage of F_SETFD ?
> 
>      F_SETFD            Set the close-on-exec flag associated with fildes to
>                         the low order bit of arg (0 or 1 as above).
> 
>> If kernel ever adds a new flag to the fd, this would end up clearing the
>> other new flag right ?
>>
>> Shouldn't bash use F_GETFD to get the current flags and set/clear just
>> the FD_CLOEXEC bit ?
> 
> I suppose it would matter if there are systems that have more than one
> flag value.

In practice, there aren't any such systems; but POSIX warns that current
practice is no indicator of future systems, and that read-modify-write
is the only way to use F_SETFD.

-- 
Eric Blake   eblake@xxxxxxxxxx    +1-801-349-2682
Libvirt virtualization library http://libvirt.org

Attachment: signature.asc
Description: OpenPGP digital signature


[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]
  Powered by Linux