diff options
author | pbrook <pbrook@c046a42c-6fe2-441c-8c8c-71466251a162> | 2007-11-17 17:14:51 +0000 |
---|---|---|
committer | pbrook <pbrook@c046a42c-6fe2-441c-8c8c-71466251a162> | 2007-11-17 17:14:51 +0000 |
commit | 87ecb68bdf8a3e40ef885ddbb7ca1797dca40ebf (patch) | |
tree | f8c5c8eb6e34a6d492a9638d62489e7569f8b046 /net.h | |
parent | 257514ddce752fe0b4aeb4b7957bc5661eadbef8 (diff) |
Break up vl.h.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3674 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'net.h')
-rw-r--r-- | net.h | 50 |
1 files changed, 50 insertions, 0 deletions
@@ -0,0 +1,50 @@ +#ifndef QEMU_NET_H +#define QEMU_NET_H + +/* VLANs support */ + +typedef struct VLANClientState VLANClientState; + +struct VLANClientState { + IOReadHandler *fd_read; + /* Packets may still be sent if this returns zero. It's used to + rate-limit the slirp code. */ + IOCanRWHandler *fd_can_read; + void *opaque; + struct VLANClientState *next; + struct VLANState *vlan; + char info_str[256]; +}; + +struct VLANState { + int id; + VLANClientState *first_client; + struct VLANState *next; + unsigned int nb_guest_devs, nb_host_devs; +}; + +VLANState *qemu_find_vlan(int id); +VLANClientState *qemu_new_vlan_client(VLANState *vlan, + IOReadHandler *fd_read, + IOCanRWHandler *fd_can_read, + void *opaque); +int qemu_can_send_packet(VLANClientState *vc); +void qemu_send_packet(VLANClientState *vc, const uint8_t *buf, int size); +void qemu_handler_true(void *opaque); + +void do_info_network(void); + +/* NIC info */ + +#define MAX_NICS 8 + +struct NICInfo { + uint8_t macaddr[6]; + const char *model; + VLANState *vlan; +}; + +extern int nb_nics; +extern NICInfo nd_table[MAX_NICS]; + +#endif |