]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
network/address-label: split out address_label_fill_message()
authorYu Watanabe <watanabe.yu+github@gmail.com>
Sat, 17 Aug 2024 04:02:06 +0000 (13:02 +0900)
committerYu Watanabe <watanabe.yu+github@gmail.com>
Tue, 20 Aug 2024 11:49:28 +0000 (20:49 +0900)
No functional change, just refactoring and preparation for later
commits.

src/network/networkd-address-label.c

index 7497eff36c5b897ac1b2a2d81743d2a9a7232585..eea37acce652cf3b7af6382d180ce368c8fddca6 100644 (file)
@@ -102,6 +102,23 @@ static int address_label_configure_handler(
         return 1;
 }
 
+static int address_label_fill_message(AddressLabel *label, sd_netlink_message *m) {
+        int r;
+
+        assert(label);
+        assert(m);
+
+        r = sd_rtnl_message_addrlabel_set_prefixlen(m, label->prefixlen);
+        if (r < 0)
+                return r;
+
+        r = sd_netlink_message_append_u32(m, IFAL_LABEL, label->label);
+        if (r < 0)
+                return r;
+
+        return sd_netlink_message_append_in6_addr(m, IFA_ADDRESS, &label->prefix);
+}
+
 static int address_label_configure(AddressLabel *label, Link *link, Request *req) {
         _cleanup_(sd_netlink_message_unrefp) sd_netlink_message *m = NULL;
         int r;
@@ -118,15 +135,7 @@ static int address_label_configure(AddressLabel *label, Link *link, Request *req
         if (r < 0)
                 return r;
 
-        r = sd_rtnl_message_addrlabel_set_prefixlen(m, label->prefixlen);
-        if (r < 0)
-                return r;
-
-        r = sd_netlink_message_append_u32(m, IFAL_LABEL, label->label);
-        if (r < 0)
-                return r;
-
-        r = sd_netlink_message_append_in6_addr(m, IFA_ADDRESS, &label->prefix);
+        r = address_label_fill_message(label, m);
         if (r < 0)
                 return r;