mirror of https://gitee.com/openkylin/libvirt.git
interface: fix udev backend use after free
udevIfaceListAllInterface() used the udev_device after it had its ref count decremented which results in a use after free issue.
This commit is contained in:
parent
24cf110e48
commit
5eb621fcb3
|
@ -359,7 +359,6 @@ udevIfaceListAllInterfaces(virConnectPtr conn,
|
|||
name = udev_device_get_sysname(dev);
|
||||
macaddr = udev_device_get_sysattr_value(dev, "address");
|
||||
status = STREQ(udev_device_get_sysattr_value(dev, "operstate"), "up");
|
||||
udev_device_unref(dev);
|
||||
|
||||
/* Filter the results */
|
||||
if (status && (flags & VIR_CONNECT_LIST_INTERFACES_ACTIVE))
|
||||
|
@ -375,6 +374,7 @@ udevIfaceListAllInterfaces(virConnectPtr conn,
|
|||
}
|
||||
count++;
|
||||
}
|
||||
udev_device_unref(dev);
|
||||
}
|
||||
|
||||
/* Drop our refcounts */
|
||||
|
|
Loading…
Reference in New Issue