android-cloexec-accept4

accept4() 应该在其类型参数中包含 SOCK_CLOEXEC 以避免文件描述符泄漏。如果没有此标志,打开的敏感文件将在 fork+exec 到权限较低的 SELinux 域时保持打开状态。

示例

accept4(sockfd, addr, addrlen, SOCK_NONBLOCK);

// becomes

accept4(sockfd, addr, addrlen, SOCK_NONBLOCK | SOCK_CLOEXEC);