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