From be6b7aa33991cc8473bc5d410b251fc0913727d1 Mon Sep 17 00:00:00 2001 From: Denys Vlasenko Date: Sat, 5 Sep 2009 23:24:20 +0200 Subject: opensock: work correctly on IPv6-only config Signed-off-by: Denys Vlasenko --- libc/inet/opensock.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) (limited to 'libc/inet/opensock.c') diff --git a/libc/inet/opensock.c b/libc/inet/opensock.c index e80efb378..86f8c5970 100644 --- a/libc/inet/opensock.c +++ b/libc/inet/opensock.c @@ -25,19 +25,19 @@ #include #include -/* libc_hidden_proto(socket) */ - /* Return a socket of any type. The socket can be used in subsequent ioctl calls to talk to the kernel. */ int __opensock(void) attribute_hidden; int -__opensock (void) +__opensock(void) { - int fd; + int fd = -1; #ifdef __UCLIBC_HAS_IPV6__ - fd = socket(AF_INET6, SOCK_DGRAM, 0); - if (fd<0) -#endif /* __UCLIBC_HAS_IPV6__ */ - fd = socket(AF_INET, SOCK_DGRAM, 0); - return(fd); + fd = socket(AF_INET6, SOCK_DGRAM, 0); +#endif +#ifdef __UCLIBC_HAS_IPV4__ + if (fd < 0) + fd = socket(AF_INET, SOCK_DGRAM, 0); +#endif + return fd; } -- cgit v1.2.3