OpenSolaris

Printable Version Enter a New Search
Bug ID 6577878
Synopsis IPv6 sockets in lx brand not supported but creation allowed
State 10-Fix Delivered (Fix available in build)
Category:Subcategory kernel:brandz
Keywords IPv6 | lx_socket
Responsible Engineer Evan Hoke
Reported Against
Duplicate Of
Introduced In solaris_nevada
Commit to Fix snv_71
Fixed In snv_71
Release Fixed solaris_nevada(snv_71)
Related Bugs
Submit Date 6-July-2007
Last Update Date 15-August-2007
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);
Work Around
N/A
Comments
N/A