ipv6: protect protocols not handling ipv4 from v4 connection/bind attempts
[deliverable/linux.git] / net / ipv6 / datagram.c
index cd8699bd2e6b1e8e1de17fb9a1d8ef63867cc2e7..2f5e2f154d2133a007baf154054522a2a66c17ad 100644 (file)
@@ -205,6 +205,16 @@ out:
 }
 EXPORT_SYMBOL_GPL(ip6_datagram_connect);
 
+int ip6_datagram_connect_v6_only(struct sock *sk, struct sockaddr *uaddr,
+                                int addr_len)
+{
+       DECLARE_SOCKADDR(struct sockaddr_in6 *, sin6, uaddr);
+       if (sin6->sin6_family != AF_INET6)
+               return -EAFNOSUPPORT;
+       return ip6_datagram_connect(sk, uaddr, addr_len);
+}
+EXPORT_SYMBOL_GPL(ip6_datagram_connect_v6_only);
+
 void ipv6_icmp_error(struct sock *sk, struct sk_buff *skb, int err,
                     __be16 port, u32 info, u8 *payload)
 {
This page took 0.024925 seconds and 5 git commands to generate.