[libvirt] [PATCH] Fix a crash when using Open vSwitch virtual ports
Laine Stump
laine at laine.org
Thu Aug 30 08:52:23 UTC 2012
On 08/30/2012 01:32 AM, Eric Blake wrote:
> [...]
> That is, I think the real patch here would be simply this (untested)
> version:
>
> diff --git i/src/util/virnetdevopenvswitch.c
> w/src/util/virnetdevopenvswitch.c
> index b903ae4..e8b9f4a 100644
> --- i/src/util/virnetdevopenvswitch.c
> +++ w/src/util/virnetdevopenvswitch.c
> @@ -59,7 +59,7 @@ int virNetDevOpenvswitchAddPort(const char *brname,
> const char *ifname,
> char *ifaceid_ex_id = NULL;
> char *profile_ex_id = NULL;
> char *vmid_ex_id = NULL;
> - virBufferPtr buf;
> + virBufferPtr buf = NULL;
>
> virMacAddrFormat(macaddr, macaddrstr);
> virUUIDFormat(ovsport->interfaceID, ifuuidstr);
> @@ -79,7 +79,7 @@ int virNetDevOpenvswitchAddPort(const char *brname,
> const char *ifname,
> ovsport->profileID) < 0)
> goto out_of_memory;
> }
> - if (virtVlan) {
> + if (virtVlan && virtVlan->tag[0]) {
If you were to believe that virtVlan might be sent with no tags (which
isn't the case with my patch applied...), then checking for non-0
virtVLan->tag[0] without checking for non-NULL virtVlan->tag would
itself lead to a crash.
More information about the libvir-list
mailing list