All of lore.kernel.org
 help / color / mirror / Atom feed
* RFC: reject unknown open flags
@ 2017-03-30 16:33 ` Christoph Hellwig
  0 siblings, 0 replies; 20+ messages in thread
From: Christoph Hellwig @ 2017-03-30 16:33 UTC (permalink / raw)
  To: Linus Torvalds, Alexander Viro
  Cc: linux-api, linux-fsdevel, linux-kernel, libc-alpha

Linux has traditionally accepted random garbage in the flags argument to
the open syscall (including the later added openat).  This really harms
when adding new flags, because applications can't just probe for the
flag to actually work.  While rejecting unknown flags is an ABI change
strictly speaking I can't see what would actually get broken by it
in practice, so by the Linux rules it might not be an issue.

Below is the trivial series to reject unknown flags.  If this is not
acceptable there migh be some other ways, although they seem ugly:

 (a) add a new openat2 system call that enforces this behavior, and
     hope all majors libcs switch to using that by default to implement
     open(3).
 (b) add a new personality flag to enforce this behavior (or maybe
     opt in by default and allow admins to opt out of it)

^ permalink raw reply	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2017-03-30 20:06 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-03-30 16:33 RFC: reject unknown open flags Christoph Hellwig
2017-03-30 16:33 ` Christoph Hellwig
2017-03-30 16:33 ` [PATCH 1/2] fs: add a VALID_OPEN_FLAGS Christoph Hellwig
2017-03-30 16:33 ` [PATCH 2/2] fs: reject unknown open flags Christoph Hellwig
2017-03-30 17:03   ` Linus Torvalds
2017-03-30 17:03     ` Linus Torvalds
2017-03-30 17:08 ` RFC: " Linus Torvalds
2017-03-30 17:08   ` Linus Torvalds
2017-03-30 17:21   ` Christoph Hellwig
2017-03-30 17:21     ` Christoph Hellwig
2017-03-30 18:19     ` Linus Torvalds
2017-03-30 18:19       ` Linus Torvalds
2017-03-30 18:26       ` Christoph Hellwig
2017-03-30 18:26         ` Christoph Hellwig
2017-03-30 18:45         ` Linus Torvalds
2017-03-30 18:45           ` Linus Torvalds
2017-03-30 20:05           ` Boaz Harrosh
2017-03-30 19:02       ` Paul Eggert
2017-03-30 19:14         ` Linus Torvalds
2017-03-30 19:22   ` Florian Weimer

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.