1. 27 9月, 2012 7 次提交
  2. 15 8月, 2012 1 次提交
  3. 04 8月, 2012 1 次提交
  4. 31 7月, 2012 2 次提交
  5. 30 7月, 2012 1 次提交
  6. 23 7月, 2012 1 次提交
  7. 14 7月, 2012 12 次提交
  8. 08 7月, 2012 1 次提交
  9. 02 6月, 2012 4 次提交
  10. 03 5月, 2012 2 次提交
  11. 10 4月, 2012 1 次提交
  12. 20 2月, 2012 1 次提交
    • D
      Wrap accesses to the fd_sets in struct fdtable · 1dce27c5
      David Howells 提交于
      Wrap accesses to the fd_sets in struct fdtable (for recording open files and
      close-on-exec flags) so that we can move away from using fd_sets since we
      abuse the fd_set structs by not allocating the full-sized structure under
      normal circumstances and by non-core code looking at the internals of the
      fd_sets.
      
      The first abuse means that use of FD_ZERO() on these fd_sets is not permitted,
      since that cannot be told about their abnormal lengths.
      
      This introduces six wrapper functions for setting, clearing and testing
      close-on-exec flags and fd-is-open flags:
      
      	void __set_close_on_exec(int fd, struct fdtable *fdt);
      	void __clear_close_on_exec(int fd, struct fdtable *fdt);
      	bool close_on_exec(int fd, const struct fdtable *fdt);
      	void __set_open_fd(int fd, struct fdtable *fdt);
      	void __clear_open_fd(int fd, struct fdtable *fdt);
      	bool fd_is_open(int fd, const struct fdtable *fdt);
      
      Note that I've prepended '__' to the names of the set/clear functions because
      they require the caller to hold a lock to use them.
      
      Note also that I haven't added wrappers for looking behind the scenes at the
      the array.  Possibly that should exist too.
      Signed-off-by: NDavid Howells <dhowells@redhat.com>
      Link: http://lkml.kernel.org/r/20120216174942.23314.1364.stgit@warthog.procyon.org.ukSigned-off-by: NH. Peter Anvin <hpa@zytor.com>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      1dce27c5
  13. 07 1月, 2012 1 次提交
  14. 04 1月, 2012 3 次提交
  15. 28 10月, 2011 1 次提交
  16. 27 7月, 2011 1 次提交
    • A
      merge fchmod() and fchmodat() guts, kill ancient broken kludge · e57712eb
      Al Viro 提交于
      The kludge in question is undocumented and doesn't work for 32bit
      binaries on amd64, sparc64 and s390.  Passing (mode_t)-1 as
      mode had (since 0.99.14v and contrary to behaviour of any
      other Unix, prescriptions of POSIX, SuS and our own manpages)
      was kinda-sorta no-op.  Note that any software relying on
      that (and looking for examples shows none) would be visibly
      broken on sparc64, where practically all userland is built
      32bit.  No such complaints noticed...
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      e57712eb