|
1 /* |
|
2 * Copyright (c) 1995 Danny Gasparovski. |
|
3 * |
|
4 * Please read the file COPYRIGHT for the |
|
5 * terms and conditions of the copyright. |
|
6 */ |
|
7 |
|
8 #ifdef HAVE_SYS_SELECT_H |
|
9 #include <sys/select.h> |
|
10 #endif |
|
11 |
|
12 #define TOWRITEMAX 512 |
|
13 |
|
14 extern struct timeval tt; |
|
15 extern int link_up; |
|
16 extern int slirp_socket; |
|
17 extern int slirp_socket_unit; |
|
18 extern int slirp_socket_port; |
|
19 extern u_int32_t slirp_socket_addr; |
|
20 extern char *slirp_socket_passwd; |
|
21 extern int ctty_closed; |
|
22 |
|
23 /* |
|
24 * Get the difference in 2 times from updtim() |
|
25 * Allow for wraparound times, "just in case" |
|
26 * x is the greater of the 2 (current time) and y is |
|
27 * what it's being compared against. |
|
28 */ |
|
29 #define TIME_DIFF(x,y) (x)-(y) < 0 ? ~0-(y)+(x) : (x)-(y) |
|
30 |
|
31 extern char *slirp_tty; |
|
32 extern char *exec_shell; |
|
33 extern u_int curtime; |
|
34 extern fd_set *global_readfds, *global_writefds, *global_xfds; |
|
35 extern struct in_addr ctl_addr; |
|
36 extern struct in_addr special_addr; |
|
37 extern struct in_addr alias_addr; |
|
38 extern struct in_addr our_addr; |
|
39 extern struct in_addr loopback_addr; |
|
40 extern struct in_addr dns_addr; |
|
41 extern char *username; |
|
42 extern char *socket_path; |
|
43 extern int towrite_max; |
|
44 extern int ppp_exit; |
|
45 extern int tcp_keepintvl; |
|
46 extern uint8_t client_ethaddr[6]; |
|
47 |
|
48 #define PROTO_SLIP 0x1 |
|
49 #ifdef USE_PPP |
|
50 #define PROTO_PPP 0x2 |
|
51 #endif |
|
52 |
|
53 void if_encap(const uint8_t *ip_data, int ip_data_len); |