qemu: add net_client_uninit / qemu_find_vlan_client (Marcelo Tosatti)

Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>


git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6600 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
aliguori 2009-02-11 15:20:51 +00:00
parent 4d73cd3b3f
commit 8b13c4a794
2 changed files with 23 additions and 0 deletions

21
net.c
View File

@ -366,6 +366,19 @@ void qemu_del_vlan_client(VLANClientState *vc)
pvc = &(*pvc)->next;
}
VLANClientState *qemu_find_vlan_client(VLANState *vlan, void *opaque)
{
VLANClientState **pvc = &vlan->first_client;
while (*pvc != NULL)
if ((*pvc)->opaque == opaque)
return *pvc;
else
pvc = &(*pvc)->next;
return NULL;
}
int qemu_can_send_packet(VLANClientState *vc1)
{
VLANState *vlan = vc1->vlan;
@ -1713,6 +1726,14 @@ int net_client_init(const char *device, const char *p)
return ret;
}
void net_client_uninit(NICInfo *nd)
{
nd->vlan->nb_guest_devs--;
nb_nics--;
nd->used = 0;
free((void *)nd->model);
}
int net_client_parse(const char *str)
{
const char *p;

2
net.h
View File

@ -42,6 +42,7 @@ VLANClientState *qemu_new_vlan_client(VLANState *vlan,
IOCanRWHandler *fd_can_read,
void *opaque);
void qemu_del_vlan_client(VLANClientState *vc);
VLANClientState *qemu_find_vlan_client(VLANState *vlan, void *opaque);
int qemu_can_send_packet(VLANClientState *vc);
ssize_t qemu_sendv_packet(VLANClientState *vc, const struct iovec *iov,
int iovcnt);
@ -94,6 +95,7 @@ void net_checksum_calculate(uint8_t *data, int length);
/* from net.c */
int net_client_init(const char *device, const char *p);
void net_client_uninit(NICInfo *nd);
int net_client_parse(const char *str);
void net_slirp_smb(const char *exported_dir);
void net_slirp_redir(const char *redir_str);