1 #ifndef __UM_SLIRP_H 2 #define __UM_SLIRP_H 3 4 #include "slip_common.h" 5 6 #define SLIRP_MAX_ARGS 100 7 /* 8 * XXX this next definition is here because I don't understand why this 9 * initializer doesn't work in slirp_kern.c: 10 * 11 * argv : { init->argv[ 0 ... SLIRP_MAX_ARGS-1 ] }, 12 * 13 * or why I can't typecast like this: 14 * 15 * argv : (char* [SLIRP_MAX_ARGS])(init->argv), 16 */ 17 struct arg_list_dummy_wrapper { char *argv[SLIRP_MAX_ARGS]; }; 18 19 struct slirp_data { 20 void *dev; 21 struct arg_list_dummy_wrapper argw; 22 int pid; 23 int slave; 24 struct slip_proto slip; 25 }; 26 27 extern const struct net_user_info slirp_user_info; 28 29 extern int slirp_user_read(int fd, void *buf, int len, struct slirp_data *pri); 30 extern int slirp_user_write(int fd, void *buf, int len, 31 struct slirp_data *pri); 32 33 #endif 34