|
Description
|
The lx_socket function allows for the creation of sockets where the domain is AF_INET6 although IPv6 is not supported in the lx brand. Any attempt to connect to or bind to such sockets will result in an error. This confuses some applications. Instead, the call to create the socket should fail.
Suggested fix:
--- /ws/onnv-clone/usr/src/lib/brand/lx/lx_brand/common/socket.c Tue Sep 26 23:05:53 2006
+++ /builds/eh208807/onnv-brandz/usr/src/lib/brand/lx/lx_brand/common/socket.c Fri Jul 6 13:16:21 2007
@@ -447,11 +472,23 @@
&domain, &type);
if (err != 0)
return (err);
lx_debug("\tsocket(%d, %d, %d)", domain, type, protocol);
- fd = socket(domain, type, protocol);
+
+ /* Right now IPv6 sockets don't work */
+ if (domain == AF_INET6)
+ return (-EAFNOSUPPORT);
+ fd = socket (domain, type, protocol);
if (fd >= 0)
return (fd);
if (errno == EPROTONOSUPPORT)
return (-ESOCKTNOSUPPORT);
|