Commit 7967406801aa897fae83caad3278ac85a342adaa

Authored by aliguori
1 parent 0f03eca6

qemu:virtio-net: Define ETH_ALEN for use when manipulating MAC addresses (Alex Williamson)

Makes it much easier to search too.

Signed-off-by: Alex Williamson <alex.williamson@hp.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>


git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6535 c046a42c-6fe2-441c-8c8c-71466251a162
hw/virtio-net.c
@@ -21,7 +21,7 @@ @@ -21,7 +21,7 @@
21 typedef struct VirtIONet 21 typedef struct VirtIONet
22 { 22 {
23 VirtIODevice vdev; 23 VirtIODevice vdev;
24 - uint8_t mac[6]; 24 + uint8_t mac[ETH_ALEN];
25 uint16_t status; 25 uint16_t status;
26 VirtQueue *rx_vq; 26 VirtQueue *rx_vq;
27 VirtQueue *tx_vq; 27 VirtQueue *tx_vq;
@@ -46,7 +46,7 @@ static void virtio_net_get_config(VirtIODevice *vdev, uint8_t *config) @@ -46,7 +46,7 @@ static void virtio_net_get_config(VirtIODevice *vdev, uint8_t *config)
46 struct virtio_net_config netcfg; 46 struct virtio_net_config netcfg;
47 47
48 netcfg.status = n->status; 48 netcfg.status = n->status;
49 - memcpy(netcfg.mac, n->mac, 6); 49 + memcpy(netcfg.mac, n->mac, ETH_ALEN);
50 memcpy(config, &netcfg, sizeof(netcfg)); 50 memcpy(config, &netcfg, sizeof(netcfg));
51 } 51 }
52 52
@@ -57,8 +57,8 @@ static void virtio_net_set_config(VirtIODevice *vdev, const uint8_t *config) @@ -57,8 +57,8 @@ static void virtio_net_set_config(VirtIODevice *vdev, const uint8_t *config)
57 57
58 memcpy(&netcfg, config, sizeof(netcfg)); 58 memcpy(&netcfg, config, sizeof(netcfg));
59 59
60 - if (memcmp(netcfg.mac, n->mac, 6)) {  
61 - memcpy(n->mac, netcfg.mac, 6); 60 + if (memcmp(netcfg.mac, n->mac, ETH_ALEN)) {
  61 + memcpy(n->mac, netcfg.mac, ETH_ALEN);
62 qemu_format_nic_info_str(n->vc, n->mac); 62 qemu_format_nic_info_str(n->vc, n->mac);
63 } 63 }
64 } 64 }
@@ -304,7 +304,7 @@ static void virtio_net_save(QEMUFile *f, void *opaque) @@ -304,7 +304,7 @@ static void virtio_net_save(QEMUFile *f, void *opaque)
304 304
305 virtio_save(&n->vdev, f); 305 virtio_save(&n->vdev, f);
306 306
307 - qemu_put_buffer(f, n->mac, 6); 307 + qemu_put_buffer(f, n->mac, ETH_ALEN);
308 qemu_put_be32(f, n->tx_timer_active); 308 qemu_put_be32(f, n->tx_timer_active);
309 qemu_put_be32(f, n->mergeable_rx_bufs); 309 qemu_put_be32(f, n->mergeable_rx_bufs);
310 qemu_put_be16(f, n->status); 310 qemu_put_be16(f, n->status);
@@ -319,7 +319,7 @@ static int virtio_net_load(QEMUFile *f, void *opaque, int version_id) @@ -319,7 +319,7 @@ static int virtio_net_load(QEMUFile *f, void *opaque, int version_id)
319 319
320 virtio_load(&n->vdev, f); 320 virtio_load(&n->vdev, f);
321 321
322 - qemu_get_buffer(f, n->mac, 6); 322 + qemu_get_buffer(f, n->mac, ETH_ALEN);
323 n->tx_timer_active = qemu_get_be32(f); 323 n->tx_timer_active = qemu_get_be32(f);
324 n->mergeable_rx_bufs = qemu_get_be32(f); 324 n->mergeable_rx_bufs = qemu_get_be32(f);
325 325
@@ -356,7 +356,7 @@ void virtio_net_init(PCIBus *bus, NICInfo *nd, int devfn) @@ -356,7 +356,7 @@ void virtio_net_init(PCIBus *bus, NICInfo *nd, int devfn)
356 n->vdev.set_features = virtio_net_set_features; 356 n->vdev.set_features = virtio_net_set_features;
357 n->rx_vq = virtio_add_queue(&n->vdev, 256, virtio_net_handle_rx); 357 n->rx_vq = virtio_add_queue(&n->vdev, 256, virtio_net_handle_rx);
358 n->tx_vq = virtio_add_queue(&n->vdev, 256, virtio_net_handle_tx); 358 n->tx_vq = virtio_add_queue(&n->vdev, 256, virtio_net_handle_tx);
359 - memcpy(n->mac, nd->macaddr, 6); 359 + memcpy(n->mac, nd->macaddr, ETH_ALEN);
360 n->status = VIRTIO_NET_S_LINK_UP; 360 n->status = VIRTIO_NET_S_LINK_UP;
361 n->vc = qemu_new_vlan_client(nd->vlan, nd->model, nd->name, 361 n->vc = qemu_new_vlan_client(nd->vlan, nd->model, nd->name,
362 virtio_net_receive, virtio_net_can_receive, n); 362 virtio_net_receive, virtio_net_can_receive, n);
hw/virtio-net.h
@@ -18,6 +18,8 @@ @@ -18,6 +18,8 @@
18 #include "net.h" 18 #include "net.h"
19 #include "pci.h" 19 #include "pci.h"
20 20
  21 +#define ETH_ALEN 6
  22 +
21 /* from Linux's virtio_net.h */ 23 /* from Linux's virtio_net.h */
22 24
23 /* The ID for virtio_net */ 25 /* The ID for virtio_net */