diff options
author | Maciej Żenczykowski <maze@google.com> | 2019-04-09 01:58:52 -0700 |
---|---|---|
committer | Maciej Zenczykowski <maze@google.com> | 2019-05-02 00:49:02 +0000 |
commit | 35d9175db948861be168f20bf72f928802b85fe1 (patch) | |
tree | d326aaffc6a78cbff16b31e55deab37a1caf57ca /ring.c | |
parent | 9c613ba2bdb1dd029d7eea8475fa47cb9e759a54 (diff) | |
download | platform_external_android-clat-35d9175db948861be168f20bf72f928802b85fe1.tar.gz platform_external_android-clat-35d9175db948861be168f20bf72f928802b85fe1.tar.bz2 platform_external_android-clat-35d9175db948861be168f20bf72f928802b85fe1.zip |
Fix some clatd cloexec and file descriptor leaking via missing close()
Not terribly important since clatd doesn't exec anything,
but was muddying the waters while I was searching for other
fd-survives-across-exec leakage in netd. While at it also
fix another leaked fd which we forgot to close().
Test: builds and boots
Bug: 131268436
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: Iceb7d4052dc9be29db5c7bb3fe2ee27da7864379
Merged-In: Iceb7d4052dc9be29db5c7bb3fe2ee27da7864379
(cherry picked from commit 60bce378cfa29463f57756fc724d1572747f4fc5)
Diffstat (limited to 'ring.c')
-rw-r--r-- | ring.c | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -30,7 +30,7 @@ #include "tun.h" int ring_create(struct tun_data *tunnel) { - int packetsock = socket(AF_PACKET, SOCK_DGRAM, htons(ETH_P_IPV6)); + int packetsock = socket(AF_PACKET, SOCK_DGRAM | SOCK_CLOEXEC, htons(ETH_P_IPV6)); if (packetsock < 0) { logmsg(ANDROID_LOG_FATAL, "packet socket failed: %s", strerror(errno)); return -1; |