1
0
mirror of https://gitlab.com/libvirt/libvirt.git synced 2025-03-07 17:28:15 +00:00

util: eliminate crash in virNetDevMacVLanCreateWithVPortProfile

Commit 723d5c (added after the release of 0.9.10) adds a
NetlinkEventClient for each interface sent to
virNetDevMacVLanCreateWithVPortProfile. This should only be done if
the interface actually *has* a virtPortProfile, otherwise the event
handler would be a NOP. The bigger problem is that part of the setup
to create the NetlinkEventClient is to do a memcpy of virtPortProfile
- if it's NULL, this triggers a segv.

This patch just qualifies the code that adds the client - if
virtPortProfile is NULL, it's skipped.
This commit is contained in:
Laine Stump 2012-03-05 14:53:48 -05:00
parent 877fd769b9
commit d2a9d55f45

View File

@ -913,7 +913,7 @@ create_name:
goto disassociate_exit;
}
if (virNetlinkEventServiceIsRunning()) {
if (virtPortProfile && virNetlinkEventServiceIsRunning()) {
if (VIR_ALLOC(calld) < 0)
goto memory_error;
if ((calld->cr_ifname = strdup(cr_ifname)) == NULL)