1: #ifndef QEMU_NET_H
2: #define QEMU_NET_H
3:
4:
5:
6: typedef struct VLANClientState VLANClientState;
7:
8: struct VLANClientState {
9: IOReadHandler *fd_read;
10:
11:
12: IOCanRWHandler *fd_can_read;
13: void *opaque;
14: struct VLANClientState *next;
15: struct VLANState *vlan;
16: char info_str[256];
17: };
18:
19: struct VLANState {
20: int id;
21: VLANClientState *first_client;
22: struct VLANState *next;
23: unsigned int nb_guest_devs, nb_host_devs;
24: };
25:
26: VLANState *qemu_find_vlan(int id);
27: VLANClientState *qemu_new_vlan_client(VLANState *vlan,
28: IOReadHandler *fd_read,
29: IOCanRWHandler *fd_can_read,
30: void *opaque);
31: int qemu_can_send_packet(VLANClientState *vc);
32: void qemu_send_packet(VLANClientState *vc, const uint8_t *buf, int size);
33: void qemu_handler_true(void *opaque);
34:
35: void do_info_network(void);
36:
37:
38:
39: #define MAX_NICS 8
40:
41: struct NICInfo {
42: uint8_t macaddr[6];
43: const char *model;
44: VLANState *vlan;
45: };
46:
47: extern int nb_nics;
48: extern NICInfo nd_table[MAX_NICS];
49:
50: #endif