mirror of
https://github.com/espressif/openthread.git
synced 2026-10-02 05:47:40 +00:00
[posix] make all sockets non-blocking (#6656)
This commit is contained in:
@@ -1418,9 +1418,9 @@ static void platformConfigureTunDevice(otInstance *aInstance,
|
|||||||
static void platformConfigureNetLink(void)
|
static void platformConfigureNetLink(void)
|
||||||
{
|
{
|
||||||
#if defined(__linux__)
|
#if defined(__linux__)
|
||||||
sNetlinkFd = socket(AF_NETLINK, SOCK_DGRAM, NETLINK_ROUTE);
|
sNetlinkFd = SocketWithCloseExec(AF_NETLINK, SOCK_DGRAM, NETLINK_ROUTE, kSocketNonBlock);
|
||||||
#elif defined(__APPLE__) || defined(__NetBSD__) || defined(__FreeBSD__)
|
#elif defined(__APPLE__) || defined(__NetBSD__) || defined(__FreeBSD__)
|
||||||
sNetlinkFd = socket(PF_ROUTE, SOCK_RAW, 0);
|
sNetlinkFd = SocketWithCloseExec(PF_ROUTE, SOCK_RAW, 0, kSocketNonBlock);
|
||||||
#else
|
#else
|
||||||
#error "!! Unknown platform !!"
|
#error "!! Unknown platform !!"
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@@ -154,7 +154,7 @@ static void UpdateUnicastAddress(const otIp6Address *aUnicastAddress, bool aToAd
|
|||||||
char buf[64];
|
char buf[64];
|
||||||
} request;
|
} request;
|
||||||
|
|
||||||
netlinkSocket = socket(AF_NETLINK, SOCK_DGRAM, NETLINK_ROUTE);
|
netlinkSocket = SocketWithCloseExec(AF_NETLINK, SOCK_DGRAM, NETLINK_ROUTE, kSocketNonBlock);
|
||||||
VerifyOrDie(netlinkSocket >= 0, OT_EXIT_ERROR_ERRNO);
|
VerifyOrDie(netlinkSocket >= 0, OT_EXIT_ERROR_ERRNO);
|
||||||
|
|
||||||
memset(&request, 0, sizeof(request));
|
memset(&request, 0, sizeof(request));
|
||||||
@@ -212,7 +212,7 @@ static void AddUnicastAddress(const otIp6Address *aUnicastAddress)
|
|||||||
|
|
||||||
otLogDebgPlat("[trel] AddUnicastAddress(%s)", Ip6AddrToString(aUnicastAddress));
|
otLogDebgPlat("[trel] AddUnicastAddress(%s)", Ip6AddrToString(aUnicastAddress));
|
||||||
|
|
||||||
mgmtFd = socket(AF_INET6, SOCK_DGRAM, IPPROTO_IP);
|
mgmtFd = SocketWithCloseExec(AF_INET6, SOCK_DGRAM, IPPROTO_IP, kSocketNonBlock);
|
||||||
VerifyOrDie(mgmtFd >= 0, OT_EXIT_ERROR_ERRNO);
|
VerifyOrDie(mgmtFd >= 0, OT_EXIT_ERROR_ERRNO);
|
||||||
|
|
||||||
memcpy(&ifr6.ifr6_addr, aUnicastAddress, sizeof(otIp6Address));
|
memcpy(&ifr6.ifr6_addr, aUnicastAddress, sizeof(otIp6Address));
|
||||||
@@ -244,7 +244,7 @@ static void RemoveUnicastAddress(const otIp6Address *aUnicastAddress)
|
|||||||
|
|
||||||
otLogDebgPlat("[trel] RemoveUnicastAddress(%s)", Ip6AddrToString(aUnicastAddress));
|
otLogDebgPlat("[trel] RemoveUnicastAddress(%s)", Ip6AddrToString(aUnicastAddress));
|
||||||
|
|
||||||
mgmtFd = socket(AF_INET6, SOCK_DGRAM, IPPROTO_IP);
|
mgmtFd = SocketWithCloseExec(AF_INET6, SOCK_DGRAM, IPPROTO_IP, kSocketNonBlock);
|
||||||
VerifyOrDie(mgmtFd >= 0, OT_EXIT_ERROR_ERRNO);
|
VerifyOrDie(mgmtFd >= 0, OT_EXIT_ERROR_ERRNO);
|
||||||
|
|
||||||
memcpy(&ifr6.ifr6_addr, aUnicastAddress, sizeof(otIp6Address));
|
memcpy(&ifr6.ifr6_addr, aUnicastAddress, sizeof(otIp6Address));
|
||||||
@@ -269,7 +269,7 @@ static void PrepareSocket(void)
|
|||||||
|
|
||||||
otLogDebgPlat("[trel] PrepareSocket()");
|
otLogDebgPlat("[trel] PrepareSocket()");
|
||||||
|
|
||||||
sSocket = socket(AF_INET6, SOCK_DGRAM, 0);
|
sSocket = SocketWithCloseExec(AF_INET6, SOCK_DGRAM, 0, kSocketNonBlock);
|
||||||
VerifyOrDie(sSocket >= 0, OT_EXIT_ERROR_ERRNO);
|
VerifyOrDie(sSocket >= 0, OT_EXIT_ERROR_ERRNO);
|
||||||
|
|
||||||
// Set the multicast interface index (for tx), disable loop back
|
// Set the multicast interface index (for tx), disable loop back
|
||||||
|
|||||||
Reference in New Issue
Block a user