mctp: unify sockaddr_mctp types
authorJeremy Kerr <jk@codeconstruct.com.au>
Mon, 18 Oct 2021 03:29:34 +0000 (11:29 +0800)
committerDavid S. Miller <davem@davemloft.net>
Mon, 18 Oct 2021 12:47:09 +0000 (13:47 +0100)
Use the more precise __kernel_sa_family_t for smctp_family, to match
struct sockaddr.

Also, use an unsigned int for the network member; negative networks
don't make much sense. We're already using unsigned for mctp_dev and
mctp_skb_cb, but need to change mctp_sock to suit.

Fixes: 60fc63981693 ("mctp: Add sockaddr_mctp to uapi")
Signed-off-by: Jeremy Kerr <jk@codeconstruct.com.au>
Acked-by: Eugene Syromiatnikov <esyr@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Documentation/networking/mctp.rst
include/net/mctp.h
include/uapi/linux/mctp.h

index 6100cdc..fa7730d 100644 (file)
@@ -59,11 +59,11 @@ specified with a ``sockaddr`` type, with a single-byte endpoint address:
     };
 
     struct sockaddr_mctp {
-            unsigned short int smctp_family;
-            int                        smctp_network;
-            struct mctp_addr   smctp_addr;
-            __u8               smctp_type;
-            __u8               smctp_tag;
+            __kernel_sa_family_t smctp_family;
+            unsigned int         smctp_network;
+            struct mctp_addr     smctp_addr;
+            __u8                 smctp_type;
+            __u8                 smctp_tag;
     };
 
     #define MCTP_NET_ANY       0x0
index a824d47..ffd2c23 100644 (file)
@@ -54,7 +54,7 @@ struct mctp_sock {
        struct sock     sk;
 
        /* bind() params */
-       int             bind_net;
+       unsigned int    bind_net;
        mctp_eid_t      bind_addr;
        __u8            bind_type;
 
index 52b54d1..f384962 100644 (file)
@@ -10,6 +10,7 @@
 #define __UAPI_MCTP_H
 
 #include <linux/types.h>
+#include <linux/socket.h>
 
 typedef __u8                   mctp_eid_t;
 
@@ -18,8 +19,8 @@ struct mctp_addr {
 };
 
 struct sockaddr_mctp {
-       unsigned short int      smctp_family;
-       int                     smctp_network;
+       __kernel_sa_family_t    smctp_family;
+       unsigned int            smctp_network;
        struct mctp_addr        smctp_addr;
        __u8                    smctp_type;
        __u8                    smctp_tag;