]> git.proxmox.com Git - mirror_qemu.git/blob - slirp/misc.h
Merge remote-tracking branch 'remotes/kraxel/tags/pull-fixes-20170403-1' into staging
[mirror_qemu.git] / slirp / misc.h
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 #ifndef MISC_H
9 #define MISC_H
10
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;
17 };
18
19 #define EMU_NONE 0x0
20
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
30
31 #define EMU_NOCONNECT 0x10 /* Don't connect */
32
33 struct tos_t {
34 uint16_t lport;
35 uint16_t fport;
36 uint8_t tos;
37 uint8_t emu;
38 };
39
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;
46 };
47
48 struct slirp_quehead {
49 struct slirp_quehead *qh_link;
50 struct slirp_quehead *qh_rlink;
51 };
52
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);
57
58 #endif