15d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turner/* headers to use the BSD sockets */
25d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turner#ifndef QEMU__SOCKET_H
35d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turner#define QEMU__SOCKET_H
48b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Project
5315ceb8a16eb7a2102fee4946898e7b8a202e86aDavid Turner#include "qemu-option.h"
6315ceb8a16eb7a2102fee4946898e7b8a202e86aDavid Turner
78b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Project#include "sockets.h"
85d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turner#define  socket_error()  errno
98b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Project#define  closesocket     socket_close
108b23a6c7e1aee255004dd19098d4c2462b61b849The Android Open Source Project
115d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turner/* New, ipv6-ready socket helper functions, see qemu-sockets.c */
12315ceb8a16eb7a2102fee4946898e7b8a202e86aDavid Turnerint inet_listen_opts(QemuOpts *opts, int port_offset);
135d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turnerint inet_listen(const char *str, char *ostr, int olen,
14315ceb8a16eb7a2102fee4946898e7b8a202e86aDavid Turner                int socktype, int port_offset);
15315ceb8a16eb7a2102fee4946898e7b8a202e86aDavid Turnerint inet_connect_opts(QemuOpts *opts);
16315ceb8a16eb7a2102fee4946898e7b8a202e86aDavid Turnerint inet_connect(const char *str, int socktype);
17315ceb8a16eb7a2102fee4946898e7b8a202e86aDavid Turnerint inet_dgram_opts(QemuOpts *opts);
18315ceb8a16eb7a2102fee4946898e7b8a202e86aDavid Turnerconst char *inet_strfamily(int family);
195d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turner
20315ceb8a16eb7a2102fee4946898e7b8a202e86aDavid Turnerint unix_listen_opts(QemuOpts *opts);
215d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turnerint unix_listen(const char *path, char *ostr, int olen);
22315ceb8a16eb7a2102fee4946898e7b8a202e86aDavid Turnerint unix_connect_opts(QemuOpts *opts);
235d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turnerint unix_connect(const char *path);
245d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turner
255d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turner/* Old, ipv4 only bits.  Don't use for new code. */
265d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turnerint parse_host_port(SockAddress*  saddr, const char *str);
275d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turnerint parse_host_src_port(SockAddress*  haddr, SockAddress*  saddr,
285d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turner                        const char *str);
295d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turner
305d8f37ad78fc66901af50c762029a501561f3b23David 'Digit' Turner#endif /* QEMU__SOCKET_H */
31