IN_MULTICAST's primary intent is as a uapi macro.

Elsewhere in the kernel we use ipv4_is_multicast consistently.

This patch unifies linux's multicast checks to use that function
rather than this macro.

Signed-off-by: Dave Taht <dave.t...@gmail.com>
Reviewed-by: Toke Høiland-Jørgensen <t...@toke.dk>

---
 drivers/net/geneve.c | 2 +-
 include/net/vxlan.h  | 4 ++--
 net/rds/af_rds.c     | 4 ++--
 net/rds/bind.c       | 4 ++--
 net/rds/send.c       | 4 ++--
 5 files changed, 9 insertions(+), 9 deletions(-)

diff --git a/drivers/net/geneve.c b/drivers/net/geneve.c
index cb2ea8facd8d..3ab24fdccd3b 100644
--- a/drivers/net/geneve.c
+++ b/drivers/net/geneve.c
@@ -1345,7 +1345,7 @@ static int geneve_nl2info(struct nlattr *tb[], struct 
nlattr *data[],
                info->key.u.ipv4.dst =
                        nla_get_in_addr(data[IFLA_GENEVE_REMOTE]);
 
-               if (IN_MULTICAST(ntohl(info->key.u.ipv4.dst))) {
+               if (ipv4_is_multicast(info->key.u.ipv4.dst)) {
                        NL_SET_ERR_MSG_ATTR(extack, data[IFLA_GENEVE_REMOTE],
                                            "Remote IPv4 address cannot be 
Multicast");
                        return -EINVAL;
diff --git a/include/net/vxlan.h b/include/net/vxlan.h
index dc1583a1fb8a..335283dbe9b3 100644
--- a/include/net/vxlan.h
+++ b/include/net/vxlan.h
@@ -391,7 +391,7 @@ static inline bool vxlan_addr_multicast(const union 
vxlan_addr *ipa)
        if (ipa->sa.sa_family == AF_INET6)
                return ipv6_addr_is_multicast(&ipa->sin6.sin6_addr);
        else
-               return IN_MULTICAST(ntohl(ipa->sin.sin_addr.s_addr));
+               return ipv4_is_multicast(ipa->sin.sin_addr.s_addr);
 }
 
 #else /* !IS_ENABLED(CONFIG_IPV6) */
@@ -403,7 +403,7 @@ static inline bool vxlan_addr_any(const union vxlan_addr 
*ipa)
 
 static inline bool vxlan_addr_multicast(const union vxlan_addr *ipa)
 {
-       return IN_MULTICAST(ntohl(ipa->sin.sin_addr.s_addr));
+       return ipv4_is_multicast(ipa->sin.sin_addr.s_addr);
 }
 
 #endif /* IS_ENABLED(CONFIG_IPV6) */
diff --git a/net/rds/af_rds.c b/net/rds/af_rds.c
index 2977137c28eb..1a5bf3fa4578 100644
--- a/net/rds/af_rds.c
+++ b/net/rds/af_rds.c
@@ -559,7 +559,7 @@ static int rds_connect(struct socket *sock, struct sockaddr 
*uaddr,
                        ret = -EDESTADDRREQ;
                        break;
                }
-               if (IN_MULTICAST(ntohl(sin->sin_addr.s_addr)) ||
+               if (ipv4_is_multicast(sin->sin_addr.s_addr) ||
                    sin->sin_addr.s_addr == htonl(INADDR_BROADCAST)) {
                        ret = -EINVAL;
                        break;
@@ -593,7 +593,7 @@ static int rds_connect(struct socket *sock, struct sockaddr 
*uaddr,
                        addr4 = sin6->sin6_addr.s6_addr32[3];
                        if (addr4 == htonl(INADDR_ANY) ||
                            addr4 == htonl(INADDR_BROADCAST) ||
-                           IN_MULTICAST(ntohl(addr4))) {
+                           ipv4_is_multicast(addr4)) {
                                ret = -EPROTOTYPE;
                                break;
                        }
diff --git a/net/rds/bind.c b/net/rds/bind.c
index 0f4398e7f2a7..6dbb763bc1fd 100644
--- a/net/rds/bind.c
+++ b/net/rds/bind.c
@@ -181,7 +181,7 @@ int rds_bind(struct socket *sock, struct sockaddr *uaddr, 
int addr_len)
                if (addr_len < sizeof(struct sockaddr_in) ||
                    sin->sin_addr.s_addr == htonl(INADDR_ANY) ||
                    sin->sin_addr.s_addr == htonl(INADDR_BROADCAST) ||
-                   IN_MULTICAST(ntohl(sin->sin_addr.s_addr)))
+                   ipv4_is_multicast(sin->sin_addr.s_addr))
                        return -EINVAL;
                ipv6_addr_set_v4mapped(sin->sin_addr.s_addr, &v6addr);
                binding_addr = &v6addr;
@@ -206,7 +206,7 @@ int rds_bind(struct socket *sock, struct sockaddr *uaddr, 
int addr_len)
                        addr4 = sin6->sin6_addr.s6_addr32[3];
                        if (addr4 == htonl(INADDR_ANY) ||
                            addr4 == htonl(INADDR_BROADCAST) ||
-                           IN_MULTICAST(ntohl(addr4)))
+                           ipv4_is_multicast(addr4))
                                return -EINVAL;
                }
                /* The scope ID must be specified for link local address. */
diff --git a/net/rds/send.c b/net/rds/send.c
index 9ce552abf9e9..82dcd8b84fe7 100644
--- a/net/rds/send.c
+++ b/net/rds/send.c
@@ -1144,7 +1144,7 @@ int rds_sendmsg(struct socket *sock, struct msghdr *msg, 
size_t payload_len)
                case AF_INET:
                        if (usin->sin_addr.s_addr == htonl(INADDR_ANY) ||
                            usin->sin_addr.s_addr == htonl(INADDR_BROADCAST) ||
-                           IN_MULTICAST(ntohl(usin->sin_addr.s_addr))) {
+                           ipv4_is_multicast(usin->sin_addr.s_addr)) {
                                ret = -EINVAL;
                                goto out;
                        }
@@ -1175,7 +1175,7 @@ int rds_sendmsg(struct socket *sock, struct msghdr *msg, 
size_t payload_len)
                                addr4 = sin6->sin6_addr.s6_addr32[3];
                                if (addr4 == htonl(INADDR_ANY) ||
                                    addr4 == htonl(INADDR_BROADCAST) ||
-                                   IN_MULTICAST(ntohl(addr4))) {
+                                   ipv4_is_multicast(addr4)) {
                                        ret = -EINVAL;
                                        goto out;
                                }
-- 
2.17.1

Reply via email to