]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
sd-netlink: make type_get_type_system{,_union}() return value directly
authorYu Watanabe <watanabe.yu+github@gmail.com>
Sun, 4 Jul 2021 05:33:02 +0000 (14:33 +0900)
committerYu Watanabe <watanabe.yu+github@gmail.com>
Sun, 29 Aug 2021 08:14:07 +0000 (17:14 +0900)
src/libsystemd/sd-netlink/generic-netlink.c
src/libsystemd/sd-netlink/netlink-message.c
src/libsystemd/sd-netlink/netlink-types.c
src/libsystemd/sd-netlink/netlink-types.h
src/libsystemd/sd-netlink/nfnl-message.c

index 69f1a0cef547b3024a88a02b2723c5118dccbdbd..648b840771420408227edc46b2dccdf4ff4d6893 100644 (file)
@@ -53,7 +53,7 @@ static int genl_message_new(sd_netlink *nl, sd_genl_family_t family, uint16_t nl
 
         m->hdr->nlmsg_flags = NLM_F_REQUEST | NLM_F_ACK;
 
-        type_get_type_system(genl_cmd_type, &type_system);
+        type_system = type_get_type_system(genl_cmd_type);
 
         r = type_system_get_type(type_system, &nl_type, cmd);
         if (r < 0)
@@ -62,7 +62,7 @@ static int genl_message_new(sd_netlink *nl, sd_genl_family_t family, uint16_t nl
         m->hdr->nlmsg_len = size;
         m->hdr->nlmsg_type = nlmsg_type;
 
-        type_get_type_system(nl_type, &m->containers[0].type_system);
+        m->containers[0].type_system = type_get_type_system(nl_type);
 
         *(struct genlmsghdr *) NLMSG_DATA(m->hdr) = (struct genlmsghdr) {
                 .cmd = cmd,
index 075d0218844fca2dbdcff9f8329f95c23dd07a44..f3ed96b9f6d19659851df196b5141847146c5ac8 100644 (file)
@@ -71,7 +71,7 @@ int message_new(sd_netlink *nl, sd_netlink_message **ret, uint16_t type) {
 
         m->hdr->nlmsg_flags = NLM_F_REQUEST | NLM_F_ACK;
 
-        type_get_type_system(nl_type, &m->containers[0].type_system);
+        m->containers[0].type_system = type_get_type_system(nl_type);
         m->hdr->nlmsg_len = size;
         m->hdr->nlmsg_type = type;
 
@@ -1328,11 +1328,7 @@ int sd_netlink_message_rewind(sd_netlink_message *m, sd_netlink *genl) {
         size = type_get_size(nl_type);
 
         if (type == NETLINK_TYPE_NESTED) {
-                const NLTypeSystem *type_system;
-
-                type_get_type_system(nl_type, &type_system);
-
-                m->containers[0].type_system = type_system;
+                m->containers[0].type_system = type_get_type_system(nl_type);
 
                 if (sd_netlink_message_is_error(m))
                         r = netlink_message_parse_error(m);
index beb926d40be57b422cfba836b6196252b5f0d28e..ccece76bf8e3998b81948e2fb8b48c0cb04a8024 100644 (file)
@@ -1700,22 +1700,18 @@ size_t type_get_size(const NLType *type) {
         return type->size;
 }
 
-void type_get_type_system(const NLType *nl_type, const NLTypeSystem **ret) {
+const NLTypeSystem *type_get_type_system(const NLType *nl_type) {
         assert(nl_type);
-        assert(ret);
         assert(nl_type->type == NETLINK_TYPE_NESTED);
         assert(nl_type->type_system);
-
-        *ret = nl_type->type_system;
+        return nl_type->type_system;
 }
 
-void type_get_type_system_union(const NLType *nl_type, const NLTypeSystemUnion **ret) {
+const NLTypeSystemUnion *type_get_type_system_union(const NLType *nl_type) {
         assert(nl_type);
-        assert(ret);
         assert(nl_type->type == NETLINK_TYPE_UNION);
         assert(nl_type->type_system_union);
-
-        *ret = nl_type->type_system_union;
+        return nl_type->type_system_union;
 }
 
 uint16_t type_system_get_count(const NLTypeSystem *type_system) {
@@ -1778,7 +1774,6 @@ int type_system_get_type(const NLTypeSystem *type_system, const NLType **ret, ui
                 return -EOPNOTSUPP;
 
         *ret = nl_type;
-
         return 0;
 }
 
@@ -1792,7 +1787,7 @@ int type_system_get_type_system(const NLTypeSystem *type_system, const NLTypeSys
         if (r < 0)
                 return r;
 
-        type_get_type_system(nl_type, ret);
+        *ret = type_get_type_system(nl_type);
         return 0;
 }
 
@@ -1806,7 +1801,7 @@ int type_system_get_type_system_union(const NLTypeSystem *type_system, const NLT
         if (r < 0)
                 return r;
 
-        type_get_type_system_union(nl_type, ret);
+        *ret = type_get_type_system_union(nl_type);
         return 0;
 }
 
@@ -1827,7 +1822,6 @@ int type_system_union_get_type_system(const NLTypeSystemUnion *type_system_union
         assert(type < type_system_union->num);
 
         *ret = &type_system_union->type_systems[type];
-
         return 0;
 }
 
@@ -1847,6 +1841,5 @@ int type_system_union_protocol_get_type_system(const NLTypeSystemUnion *type_sys
                 return -EOPNOTSUPP;
 
         *ret = type_system;
-
         return 0;
 }
index 316d7f1b87755f7ec1f809d36eeaf05108ba7b9d..607af013918596409570c4c2d2ef1762a5de45ba 100644 (file)
@@ -47,8 +47,8 @@ extern const NLTypeSystem genl_family_type_system_root;
 
 uint16_t type_get_type(const NLType *type);
 size_t type_get_size(const NLType *type);
-void type_get_type_system(const NLType *type, const NLTypeSystem **ret);
-void type_get_type_system_union(const NLType *type, const NLTypeSystemUnion **ret);
+const NLTypeSystem *type_get_type_system(const NLType *type);
+const NLTypeSystemUnion *type_get_type_system_union(const NLType *type);
 
 const NLTypeSystem* type_system_get_root(int protocol);
 uint16_t type_system_get_count(const NLTypeSystem *type_system);
index 001a7b277e45eb89c2dd81b6bd8481bbe933eb2a..e55b480402014d567d1d86fbbf988f7b5ff408fa 100644 (file)
@@ -43,7 +43,7 @@ static int nft_message_new(sd_netlink *nfnl, sd_netlink_message **ret, int famil
 
         m->hdr->nlmsg_flags = NLM_F_REQUEST | flags;
 
-        type_get_type_system(nl_type, &m->containers[0].type_system);
+        m->containers[0].type_system = type_get_type_system(nl_type);
 
         r = type_system_get_type_system(m->containers[0].type_system,
                                         &m->containers[0].type_system,