]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
network/vxlan: avoid unneccesary temporary variables
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Sat, 16 Sep 2023 10:13:56 +0000 (12:13 +0200)
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Fri, 22 Sep 2023 06:17:42 +0000 (08:17 +0200)
parse_ip_port_range() DTRT and only sets the output on success.

src/network/netdev/vxlan.c

index 589161938ae5b883d82ed552bcdfa2ee6cc89a86..c91ed24cda12e1e6f7ec3a255ee5bbfe49e7f224 100644 (file)
@@ -286,25 +286,18 @@ int config_parse_port_range(
                 void *data,
                 void *userdata) {
 
-        VxLan *v = userdata;
-        uint16_t low, high;
-        int r;
-
         assert(filename);
         assert(lvalue);
         assert(rvalue);
         assert(data);
 
-        r = parse_ip_port_range(rvalue, &low, &high);
-        if (r < 0) {
+        VxLan *v = ASSERT_PTR(userdata);
+        int r;
+
+        r = parse_ip_port_range(rvalue, &v->port_range.low, &v->port_range.high);
+        if (r < 0)
                 log_syntax(unit, LOG_WARNING, filename, line, r,
                            "Failed to parse VXLAN port range '%s'. Port should be greater than 0 and less than 65535.", rvalue);
-                return 0;
-        }
-
-        v->port_range.low = low;
-        v->port_range.high = high;
-
         return 0;
 }