Make NICInfo string fields non-const

We now only assign strdup()ed strings to these fields, never static
strings.

aliguori: fix build for ppc_prep and mips_jazz

Signed-off-by: Mark McLoughlin <markmc@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This commit is contained in:
Mark McLoughlin 2009-10-06 12:16:53 +01:00 committed by Anthony Liguori
parent 3cd67992f5
commit 9203f5202b
4 changed files with 10 additions and 10 deletions

View File

@ -209,7 +209,7 @@ void mips_jazz_init (ram_addr_t ram_size,
for (n = 0; n < nb_nics; n++) {
nd = &nd_table[n];
if (!nd->model)
nd->model = "dp83932";
nd->model = qemu_strdup("dp83932");
if (strcmp(nd->model, "dp83932") == 0) {
dp83932_init(nd, 0x80001000, 2, rc4030[4],
rc4030_opaque, rc4030_dma_memory_rw);

View File

@ -692,7 +692,7 @@ static void ppc_prep_init (ram_addr_t ram_size,
nb_nics1 = NE2000_NB_MAX;
for(i = 0; i < nb_nics1; i++) {
if (nd_table[i].model == NULL) {
nd_table[i].model = "ne2k_isa";
nd_table[i].model = qemu_strdup("ne2k_isa");
}
if (strcmp(nd_table[i].model, "ne2k_isa") == 0) {
isa_ne2000_init(ne2000_io[i], ne2000_irq[i], &nd_table[i]);

8
net.c
View File

@ -2813,10 +2813,10 @@ void net_client_uninit(NICInfo *nd)
nd->vlan->nb_guest_devs--;
nb_nics--;
qemu_free((void *)nd->model);
qemu_free((void *)nd->name);
qemu_free((void *)nd->devaddr);
qemu_free((void *)nd->id);
qemu_free(nd->model);
qemu_free(nd->name);
qemu_free(nd->devaddr);
qemu_free(nd->id);
memset(nd, 0, sizeof(*nd));
}

8
net.h
View File

@ -95,10 +95,10 @@ enum {
struct NICInfo {
uint8_t macaddr[6];
const char *model;
const char *name;
const char *devaddr;
const char *id;
char *model;
char *name;
char *devaddr;
char *id;
VLANState *vlan;
VLANClientState *vc;
void *private;