oxenstored: force FD_CLOEXEC with Unix.set_close_on_exec on LSB init
authorLuis R. Rodriguez <mcgrof@suse.com>
Thu, 17 Jul 2014 23:28:15 +0000 (16:28 -0700)
committerIan Campbell <ian.campbell@citrix.com>
Thu, 24 Jul 2014 15:23:20 +0000 (16:23 +0100)
Lets match the systemd active socket activation implementation and
ensure that FD_CLOEXEC is set by usin Unix.set_close_on_exec. David
notes oxenstored likely does not exec but there is no harm in being
careful just in case things change in the future.

Cc: David Scott <dave.scott@eu.citrix.com>
Cc: Anil Madhavapeddy <anil@recoil.org>
Cc: Ian Jackson <ian.jackson@eu.citrix.com>
Cc: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Cc: Ian Campbell <ian.campbell@citrix.com>
Cc: Vincent Hanquez <Vincent.Hanquez@eu.citrix.com>
Signed-off-by: Luis R. Rodriguez <mcgrof@suse.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
tools/ocaml/xenstored/utils.ml

index 0cfededb48164c2a66aa6c8a7bbfc3c6177f3a45..61321c619b64148ba25525ec83492bbe14a4fbcd 100644 (file)
@@ -78,6 +78,7 @@ let create_regular_unix_socket name =
         Unixext.mkdir_rec (Filename.dirname name) 0o700;
         let sockaddr = Unix.ADDR_UNIX(name) in
         let sock = Unix.socket Unix.PF_UNIX Unix.SOCK_STREAM 0 in
+        Unix.set_close_on_exec sock;
         Unix.bind sock sockaddr;
         Unix.listen sock 1;
         sock