From 81a8e21fd652beff1ac66f46cfbd9783adc0238f Mon Sep 17 00:00:00 2001 From: Marcus Meissner Date: Mon, 4 Jul 2011 01:30:29 +0000 Subject: [PATCH] --- yaml --- r: 254681 b: refs/heads/master c: c349a528cd47e2272ded0ea358363855e86180da h: refs/heads/master i: 254679: 121852a68428e9ef974457611c2b6a55bcfb1f86 v: v3 --- [refs] | 2 +- trunk/net/ipv4/af_inet.c | 4 +++- trunk/net/ipv6/af_inet6.c | 2 +- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index cb3383cc5795..53e8b564c90b 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 2fb83cd618be34546fb526a9051eceaa95517026 +refs/heads/master: c349a528cd47e2272ded0ea358363855e86180da diff --git a/trunk/net/ipv4/af_inet.c b/trunk/net/ipv4/af_inet.c index eae1f676f870..ef1528af7abf 100644 --- a/trunk/net/ipv4/af_inet.c +++ b/trunk/net/ipv4/af_inet.c @@ -465,8 +465,10 @@ int inet_bind(struct socket *sock, struct sockaddr *uaddr, int addr_len) if (addr_len < sizeof(struct sockaddr_in)) goto out; - if (addr->sin_family != AF_INET) + if (addr->sin_family != AF_INET) { + err = -EAFNOSUPPORT; goto out; + } chk_addr_ret = inet_addr_type(sock_net(sk), addr->sin_addr.s_addr); diff --git a/trunk/net/ipv6/af_inet6.c b/trunk/net/ipv6/af_inet6.c index d450a2f9fc06..3b5669a2582d 100644 --- a/trunk/net/ipv6/af_inet6.c +++ b/trunk/net/ipv6/af_inet6.c @@ -274,7 +274,7 @@ int inet6_bind(struct socket *sock, struct sockaddr *uaddr, int addr_len) return -EINVAL; if (addr->sin6_family != AF_INET6) - return -EINVAL; + return -EAFNOSUPPORT; addr_type = ipv6_addr_type(&addr->sin6_addr); if ((addr_type & IPV6_ADDR_MULTICAST) && sock->type == SOCK_STREAM)