From bef09aaf9ef99831c53869c718a9d862323cb303 Mon Sep 17 00:00:00 2001 From: Tianjie Xu Date: Thu, 20 Oct 2016 16:58:49 -0700 Subject: [PATCH] DO NOT MERGE:Add missing SOCK_CLOEXEC flag when opening socket Go through the code that opens socket in marshmallow, and backport the SOCK_CLOEXEC usage when opening sockets with AF_NETLINK. Bug: 31242981 Test: mma Change-Id: I709fc1dd43a883f95bb99021e1350c062ca35203 --- libcutils/uevent.c | 2 +- libnetutils/ifc_utils.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/libcutils/uevent.c b/libcutils/uevent.c index 97a81e309..4e5c67761 100644 --- a/libcutils/uevent.c +++ b/libcutils/uevent.c @@ -104,7 +104,7 @@ int uevent_open_socket(int buf_sz, bool passcred) addr.nl_pid = getpid(); addr.nl_groups = 0xffffffff; - s = socket(PF_NETLINK, SOCK_DGRAM, NETLINK_KOBJECT_UEVENT); + s = socket(PF_NETLINK, SOCK_DGRAM | SOCK_CLOEXEC, NETLINK_KOBJECT_UEVENT); if(s < 0) return -1; diff --git a/libnetutils/ifc_utils.c b/libnetutils/ifc_utils.c index 913f51e81..b41a0af83 100644 --- a/libnetutils/ifc_utils.c +++ b/libnetutils/ifc_utils.c @@ -316,7 +316,7 @@ int ifc_act_on_address(int action, const char *name, const char *address, req.n.nlmsg_len = NLMSG_ALIGN(req.n.nlmsg_len) + RTA_LENGTH(addrlen); memcpy(RTA_DATA(rta), addr, addrlen); - s = socket(PF_NETLINK, SOCK_RAW, NETLINK_ROUTE); + s = socket(PF_NETLINK, SOCK_RAW | SOCK_CLOEXEC, NETLINK_ROUTE); if (send(s, &req, req.n.nlmsg_len, 0) < 0) { close(s); return -errno;