Merge remote-tracking branch 'remotes/kevin/tags/for-upstream' into staging
[qemu.git] / slirp / misc.h
blob5211bbd30a3c3f97103e55428074121a3c360a3e
1 /*
2 * Copyright (c) 1995 Danny Gasparovski.
4 * Please read the file COPYRIGHT for the
5 * terms and conditions of the copyright.
6 */
8 #ifndef MISC_H
9 #define MISC_H
11 struct ex_list {
12 int ex_pty; /* Do we want a pty? */
13 struct in_addr ex_addr; /* Server address */
14 int ex_fport; /* Port to telnet to */
15 const char *ex_exec; /* Command line of what to exec */
16 struct ex_list *ex_next;
19 #define EMU_NONE 0x0
21 /* TCP emulations */
22 #define EMU_CTL 0x1
23 #define EMU_FTP 0x2
24 #define EMU_KSH 0x3
25 #define EMU_IRC 0x4
26 #define EMU_REALAUDIO 0x5
27 #define EMU_RLOGIN 0x6
28 #define EMU_IDENT 0x7
29 #define EMU_RSH 0x8
31 #define EMU_NOCONNECT 0x10 /* Don't connect */
33 struct tos_t {
34 uint16_t lport;
35 uint16_t fport;
36 uint8_t tos;
37 uint8_t emu;
40 struct emu_t {
41 uint16_t lport;
42 uint16_t fport;
43 uint8_t tos;
44 uint8_t emu;
45 struct emu_t *next;
48 struct slirp_quehead {
49 struct slirp_quehead *qh_link;
50 struct slirp_quehead *qh_rlink;
53 void slirp_insque(void *, void *);
54 void slirp_remque(void *);
55 int add_exec(struct ex_list **, int, char *, struct in_addr, int);
56 int fork_exec(struct socket *so, const char *ex, int do_pty);
58 #endif