Linux Audio

Check our new training course

Loading...
v6.2
 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
v6.13.7
 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