[libvirt] [PATCH] macvtap: fix a typo

Below patch fixes the following coverity findings Error: OVERRUN_STATIC: /libvirt/src/qemu/qemu_command.c:152: overrun-buffer-val: Overrunning static array "net->mac" of size 6 bytes by passing it as an argument to a function which indexes it at byte position 15. /libvirt/src/util/virnetdevmacvlan.c:948: access_dbuff_const: Calling "virNetDevMacVLanVPortProfileRegisterCallback" indexes array "macaddress" at byte position 15. /libvirt/src/util/virnetdevmacvlan.c:773: access_dbuff_const: Calling "memcpy" indexes array "macaddress" with index "16UL" at byte position 15. Error: OVERRUN_STATIC: /libvirt/src/qemu/qemu_migration.c:2744: overrun-buffer-val: Overrunning static array "net->mac" of size 6 bytes by passing it as an argument to a function which indexes it at byte position 15. /libvirt/src/util/virnetdevmacvlan.c:773: access_dbuff_const: Calling "memcpy" indexes array "macaddress" with index "16UL" at byte position 15. Error: OVERRUN_STATIC: /libvirt/src/qemu/qemu_driver.c:435: overrun-buffer-val: Overrunning static array "net->mac" of size 6 bytes by passing it as an argument to a function which indexes it at byte position 15. /libvirt/src/util/virnetdevmacvlan.c:1036: access_dbuff_const: Calling "virNetDevMacVLanVPortProfileRegisterCallback" indexes array "macaddress" at byte position 15. /libvirt/src/util/virnetdevmacvlan.c:773: access_dbuff_const: Calling "memcpy" indexes array "macaddress" with index "16UL" at byte position 15. --- src/util/virnetdevmacvlan.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) Index: libvirt-acl/src/util/virnetdevmacvlan.c =================================================================== --- libvirt-acl.orig/src/util/virnetdevmacvlan.c +++ libvirt-acl/src/util/virnetdevmacvlan.c @@ -435,7 +435,7 @@ static const uint32_t modeMap[VIR_NETDEV struct virNetlinkCallbackData { char *cr_ifname; virNetDevVPortProfilePtr virtPortProfile; - unsigned char macaddress[VIR_UUID_BUFLEN]; + unsigned char macaddress[VIR_MAC_BUFLEN]; char *linkdev; int vf; unsigned char vmuuid[VIR_UUID_BUFLEN];

On 04/26/2012 03:16 PM, Stefan Berger wrote:
Below patch fixes the following coverity findings
Error: OVERRUN_STATIC: /libvirt/src/qemu/qemu_command.c:152: overrun-buffer-val: Overrunning static array "net->mac" of size 6 bytes by passing it as an argument to a function which indexes it at byte position 15.
Index: libvirt-acl/src/util/virnetdevmacvlan.c =================================================================== --- libvirt-acl.orig/src/util/virnetdevmacvlan.c +++ libvirt-acl/src/util/virnetdevmacvlan.c @@ -435,7 +435,7 @@ static const uint32_t modeMap[VIR_NETDEV struct virNetlinkCallbackData { char *cr_ifname; virNetDevVPortProfilePtr virtPortProfile; - unsigned char macaddress[VIR_UUID_BUFLEN]; + unsigned char macaddress[VIR_MAC_BUFLEN];
Yep, any client that uses sizeof() was picking up 10 bytes of garbage. ACK. -- Eric Blake eblake@redhat.com +1-919-301-3266 Libvirt virtualization library http://libvirt.org
participants (2)
-
Eric Blake
-
Stefan Berger