X-Git-Url: http://nsz.repo.hu/git/?p=musl;a=blobdiff_plain;f=src%2Fnetwork%2Fsocket.c;h=51be30eed72887d47e489a970ce7cd8e71c73ca6;hp=ba8d45b16403d991ffe2a6e3fa02d9440bc7b529;hb=e8a0b27a7101f5b9939de83df3d6d8b606c5678b;hpb=32d6d77e544dbb1d9c44cacfc2ea0cbfe5ccfdef diff --git a/src/network/socket.c b/src/network/socket.c index ba8d45b1..51be30ee 100644 --- a/src/network/socket.c +++ b/src/network/socket.c @@ -6,7 +6,8 @@ int socket(int domain, int type, int protocol) { int s = socketcall(socket, domain, type, protocol, 0, 0, 0); - if (s<0 && errno==EINVAL && (type&(SOCK_CLOEXEC|SOCK_NONBLOCK))) { + if (s<0 && (errno==EINVAL || errno==EPROTONOSUPPORT) + && (type&(SOCK_CLOEXEC|SOCK_NONBLOCK))) { s = socketcall(socket, domain, type & ~(SOCK_CLOEXEC|SOCK_NONBLOCK), protocol, 0, 0, 0);