Source-Changes archive

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

CVS commit: src



Module Name:    src
Committed By:   christos
Date:           Sun Jun 26 16:43:12 UTC 2011

Modified Files:
        src/distrib/sets/lists/base: ad.mips64eb ad.mips64el md.amd64
            md.sparc64 shl.mi
        src/distrib/sets/lists/comp: ad.mips64eb ad.mips64el md.amd64
            md.sparc64 mi shl.mi
        src/include: unistd.h
        src/lib/libc: shlib_version
        src/lib/libc/gen: popen.3 popen.c
        src/lib/libc/stdio: flags.c fopen.3
        src/lib/libc/sys: Makefile.inc accept.2 dup.2 fcntl.2 kqueue.2 pipe.2
            recv.2 socket.2 socketpair.2
        src/sys/compat/svr4: svr4_stream.c
        src/sys/kern: kern_descrip.c kern_event.c makesyscalls.sh sys_descrip.c
            sys_pipe.c syscalls.conf uipc_socket.c uipc_syscalls.c
            uipc_usrreq.c
        src/sys/sys: domain.h event.h fcntl.h filedesc.h socket.h socketvar.h
            un.h

Log Message:
* Arrange for interfaces that create new file descriptors to be able to
  set close-on-exec on creation (http://udrepper.livejournal.com/20407.html).

    - Add F_DUPFD_CLOEXEC to fcntl(2).
    - Add MSG_CMSG_CLOEXEC to recvmsg(2) for unix file descriptor passing.
    - Add dup3(2) syscall with a flags argument for O_CLOEXEC, O_NONBLOCK.
    - Add pipe2(2) syscall with a flags argument for O_CLOEXEC, O_NONBLOCK.
    - Add flags SOCK_CLOEXEC, SOCK_NONBLOCK to the socket type parameter
      for socket(2) and socketpair(2).
    - Add new paccept(2) syscall that takes an additional sigset_t to alter
      the sigmask temporarily and a flags argument to set SOCK_CLOEXEC,
      SOCK_NONBLOCK.
    - Add new mode character 'e' to fopen(3) and popen(3) to open pipes
      and file descriptors for close on exec.
    - Add new kqueue1(2) syscall with a new flags argument to open the
      kqueue file descriptor with O_CLOEXEC, O_NONBLOCK.

* Fix the system calls that take socklen_t arguments to actually do so.

* Don't include userland header files (signal.h) from system header files
  (rump_syscallargs.h).

* Bump libc version for the new syscalls.


To generate a diff of this commit:
cvs rdiff -u -r1.54 -r1.55 src/distrib/sets/lists/base/ad.mips64eb
cvs rdiff -u -r1.51 -r1.52 src/distrib/sets/lists/base/ad.mips64el
cvs rdiff -u -r1.125 -r1.126 src/distrib/sets/lists/base/md.amd64
cvs rdiff -u -r1.118 -r1.119 src/distrib/sets/lists/base/md.sparc64
cvs rdiff -u -r1.588 -r1.589 src/distrib/sets/lists/base/shl.mi
cvs rdiff -u -r1.36 -r1.37 src/distrib/sets/lists/comp/ad.mips64eb \
    src/distrib/sets/lists/comp/ad.mips64el
cvs rdiff -u -r1.118 -r1.119 src/distrib/sets/lists/comp/md.amd64
cvs rdiff -u -r1.103 -r1.104 src/distrib/sets/lists/comp/md.sparc64
cvs rdiff -u -r1.1631 -r1.1632 src/distrib/sets/lists/comp/mi
cvs rdiff -u -r1.176 -r1.177 src/distrib/sets/lists/comp/shl.mi
cvs rdiff -u -r1.125 -r1.126 src/include/unistd.h
cvs rdiff -u -r1.222 -r1.223 src/lib/libc/shlib_version
cvs rdiff -u -r1.16 -r1.17 src/lib/libc/gen/popen.3
cvs rdiff -u -r1.30 -r1.31 src/lib/libc/gen/popen.c
cvs rdiff -u -r1.14 -r1.15 src/lib/libc/stdio/flags.c
cvs rdiff -u -r1.24 -r1.25 src/lib/libc/stdio/fopen.3
cvs rdiff -u -r1.205 -r1.206 src/lib/libc/sys/Makefile.inc
cvs rdiff -u -r1.26 -r1.27 src/lib/libc/sys/accept.2
cvs rdiff -u -r1.21 -r1.22 src/lib/libc/sys/dup.2 \
    src/lib/libc/sys/socketpair.2
cvs rdiff -u -r1.37 -r1.38 src/lib/libc/sys/fcntl.2
cvs rdiff -u -r1.30 -r1.31 src/lib/libc/sys/kqueue.2
cvs rdiff -u -r1.22 -r1.23 src/lib/libc/sys/pipe.2
cvs rdiff -u -r1.27 -r1.28 src/lib/libc/sys/recv.2
cvs rdiff -u -r1.36 -r1.37 src/lib/libc/sys/socket.2
cvs rdiff -u -r1.78 -r1.79 src/sys/compat/svr4/svr4_stream.c
cvs rdiff -u -r1.214 -r1.215 src/sys/kern/kern_descrip.c
cvs rdiff -u -r1.71 -r1.72 src/sys/kern/kern_event.c
cvs rdiff -u -r1.118 -r1.119 src/sys/kern/makesyscalls.sh
cvs rdiff -u -r1.21 -r1.22 src/sys/kern/sys_descrip.c
cvs rdiff -u -r1.130 -r1.131 src/sys/kern/sys_pipe.c
cvs rdiff -u -r1.16 -r1.17 src/sys/kern/syscalls.conf
cvs rdiff -u -r1.203 -r1.204 src/sys/kern/uipc_socket.c
cvs rdiff -u -r1.143 -r1.144 src/sys/kern/uipc_syscalls.c
cvs rdiff -u -r1.135 -r1.136 src/sys/kern/uipc_usrreq.c
cvs rdiff -u -r1.30 -r1.31 src/sys/sys/domain.h
cvs rdiff -u -r1.22 -r1.23 src/sys/sys/event.h
cvs rdiff -u -r1.37 -r1.38 src/sys/sys/fcntl.h
cvs rdiff -u -r1.60 -r1.61 src/sys/sys/filedesc.h
cvs rdiff -u -r1.99 -r1.100 src/sys/sys/socket.h
cvs rdiff -u -r1.124 -r1.125 src/sys/sys/socketvar.h
cvs rdiff -u -r1.45 -r1.46 src/sys/sys/un.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



Home | Main Index | Thread Index | Old Index