1 #ifndef UAE_ETHERNET_H
2 #define UAE_ETHERNET_H
3 
4 #include "uae/types.h"
5 
6 #define UAENET_NONE 0
7 #define UAENET_SLIRP 1
8 #define UAENET_SLIRP_INBOUND 2
9 #define UAENET_PCAP 3
10 
11 struct netdriverdata
12 {
13 	int type;
14 	const TCHAR *name;
15 	const TCHAR *desc;
16 	int mtu;
17 	uae_u8 mac[6];
18 	int active;
19 };
20 
21 
22 typedef void (ethernet_gotfunc)(void *dev, const uae_u8 *data, int len);
23 typedef int (ethernet_getfunc)(void *dev, uae_u8 *d, int *len);
24 
25 extern bool ethernet_enumerate (struct netdriverdata **, const TCHAR *name);
26 extern void ethernet_enumerate_free (void);
27 extern void ethernet_close_driver (struct netdriverdata *ndd);
28 
29 extern int ethernet_getdatalenght (struct netdriverdata *ndd);
30 extern int ethernet_getbytespending (void*);
31 extern int ethernet_open (struct netdriverdata *ndd, void*, void*, ethernet_gotfunc*, ethernet_getfunc*, int);
32 extern void ethernet_close (struct netdriverdata *ndd, void*);
33 extern void ethernet_trigger (struct netdriverdata *ndd, void*);
34 
35 #endif /* UAE_ETHERNET_H */
36