Joseph Myers 27342d1783 Add fcntl sealing interfaces from Linux 3.17 to bits/fcntl-linux.h.
While reviewing Linux 4.13 for glibc header changes needed, I noticed
that bits/fcntl-linux.h was missing F_ADD_SEALS etc. from Linux 3.17.

I didn't find any discussion indicating this omission is deliberate.
Now, these interfaces can only be used with file descriptors created
with memfd_create, and we don't have a memfd_create wrapper in glibc
(a patch was submitted in October 2014, albeit without documentation /
tests, and discussions continued over the next few months, but without
consensus on whether to add the interface - and we still lack any
general consensus on syscall wrappers), but I don't think that's a
reason to exclude the constants from bits/fcntl-linux.h (especially as
the header does not look compatible with simultaneously including
linux/fcntl.h).

(Some of those 2014/2015 discussions raised concerns about difficulty
using the memfd_create / sealing interface, but those seem to me more
like a question of whether it should be part of the OS-independent GNU
API - in my view, even fairly specialized syscalls ought to have
wrappers added to glibc if not obsolescent, but there may be cases
where we only want to include them in the Linux-specific API and
anything in the OS-independent GNU API should be different - rather
than being relevant to whether constants for use with fcntl should
appear in headers.)

	* sysdeps/unix/sysv/linux/bits/fcntl-linux.h [__USE_GNU]
	(F_ADD_SEALS): New macro.
	[__USE_GNU] (F_GET_SEALS): Likewise.
	[__USE_GNU] (F_SEAL_SEAL): Likewise.
	[__USE_GNU] (F_SEAL_SHRINK): Likewise.
	[__USE_GNU] (F_SEAL_GROW): Likewise.
	[__USE_GNU] (F_SEAL_WRITE): Likewise.
2017-09-08 16:19:21 +00:00
..
2017-08-31 16:10:34 -03:00
2017-08-31 16:10:34 -03:00
2017-08-31 16:10:34 -03:00
2017-08-31 16:10:34 -03:00
2017-08-31 16:10:34 -03:00
2017-08-31 16:10:34 -03:00
2017-08-31 16:10:34 -03:00
2017-08-18 18:38:55 -03:00
2017-05-11 17:27:27 -03:00
2017-08-31 16:10:34 -03:00
2017-05-18 18:06:47 -03:00
2017-05-09 14:05:09 +00:00
2017-05-18 18:06:47 -03:00
2017-08-31 16:10:34 -03:00
2017-08-17 16:50:35 -03:00
2017-08-17 16:50:35 -03:00
2017-08-22 14:25:03 -03:00
2017-05-03 10:36:01 -03:00
2017-05-09 14:05:09 +00:00
2017-08-18 10:31:16 -03:00
2017-05-11 17:27:31 -03:00
2017-03-09 15:22:06 +01:00
2017-03-09 15:22:06 +01:00
2017-03-28 12:29:27 -03:00
2017-05-09 14:05:09 +00:00
2017-05-09 14:05:09 +00:00
2017-03-28 12:29:27 -03:00
2017-03-09 15:22:06 +01:00
2017-03-30 18:23:43 -03:00
2017-08-18 10:53:47 -03:00