]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
udev-event: fix filtering logic of renaming network interface
authorYu Watanabe <watanabe.yu+github@gmail.com>
Wed, 5 Mar 2025 23:22:54 +0000 (08:22 +0900)
committerYu Watanabe <watanabe.yu+github@gmail.com>
Wed, 12 Mar 2025 16:08:57 +0000 (01:08 +0900)
The device sysname may be different from the network interface name.

src/udev/udev-event.c

index 9a50acafe96c4ba65d42c96e6096bd8dd3a0a59f..d8bdf835b21d669518c972f776be74402ce74c24 100644 (file)
@@ -135,9 +135,9 @@ static int rename_netif(UdevEvent *event) {
                 return 0;
         }
 
-        r = sd_device_get_sysname(dev, &s);
+        r = device_get_ifname(dev, &s);
         if (r < 0)
-                return log_device_warning_errno(dev, r, "Failed to get sysname: %m");
+                return log_device_warning_errno(dev, r, "Failed to get ifname: %m");
 
         if (streq(event->name, s))
                 return 0; /* The interface name is already requested name. */
@@ -242,9 +242,9 @@ static int assign_altnames(UdevEvent *event) {
         if (r < 0)
                 return log_device_warning_errno(dev, r, "Failed to get ifindex: %m");
 
-        r = sd_device_get_sysname(dev, &s);
+        r = device_get_ifname(dev, &s);
         if (r < 0)
-                return log_device_warning_errno(dev, r, "Failed to get sysname: %m");
+                return log_device_warning_errno(dev, r, "Failed to get ifname: %m");
 
         /* Filter out the current interface name. */
         strv_remove(event->altnames, s);