git: kernel: Implement O_CLOEXEC

Francois Tigeot ftigeot at
Tue Jul 31 00:26:43 PDT 2012

commit 6e4ea98e8a4f403762582bd657180d3bd3636505
Author: François Tigeot <ftigeot at>
Date:   Mon Jul 30 22:39:46 2012 +0200

    kernel: Implement O_CLOEXEC
    * Using fcntl(2) just after open(2) is not enough to avoid race conditions
      in programs doing fork+exec sequences. Child processes may be created
      before fcntl() is run and inherit the parent's file descriptors.
    * In some circonstances this behavior may even create security issues.
    * O_CLOEXEC can be used to atomically set the close-on-exec flag for new
      file descriptors, avoiding the whole mess in the first place.
    * Fixes issue #2356
    Inspired-from: NetBSD

Summary of changes:
 lib/libc/sys/open.2     |   18 +++++++++++++++---
 sys/kern/vfs_syscalls.c |   12 ++++++++----
 sys/sys/fcntl.h         |    3 +++
 3 files changed, 26 insertions(+), 7 deletions(-)

DragonFly BSD source repository

More information about the Commits mailing list