blob: ada6e40c376aac2269c906ee47a648cc1ebdbf91 [file] [log] [blame]
David 'Digit' Turner5d8f37a2009-09-14 14:32:27 -07001/* headers to use the BSD sockets */
2#ifndef QEMU__SOCKET_H
3#define QEMU__SOCKET_H
The Android Open Source Project8b23a6c2009-03-03 19:30:32 -08004
David Turner315ceb82010-09-10 14:15:17 +02005#include "qemu-option.h"
6
The Android Open Source Project8b23a6c2009-03-03 19:30:32 -08007#include "sockets.h"
David 'Digit' Turner5d8f37a2009-09-14 14:32:27 -07008#define socket_error() errno
The Android Open Source Project8b23a6c2009-03-03 19:30:32 -08009#define closesocket socket_close
10
David 'Digit' Turner5d8f37a2009-09-14 14:32:27 -070011/* New, ipv6-ready socket helper functions, see qemu-sockets.c */
David Turner315ceb82010-09-10 14:15:17 +020012int inet_listen_opts(QemuOpts *opts, int port_offset);
David 'Digit' Turner5d8f37a2009-09-14 14:32:27 -070013int inet_listen(const char *str, char *ostr, int olen,
David Turner315ceb82010-09-10 14:15:17 +020014 int socktype, int port_offset);
15int inet_connect_opts(QemuOpts *opts);
16int inet_connect(const char *str, int socktype);
17int inet_dgram_opts(QemuOpts *opts);
18const char *inet_strfamily(int family);
David 'Digit' Turner5d8f37a2009-09-14 14:32:27 -070019
David Turner315ceb82010-09-10 14:15:17 +020020int unix_listen_opts(QemuOpts *opts);
David 'Digit' Turner5d8f37a2009-09-14 14:32:27 -070021int unix_listen(const char *path, char *ostr, int olen);
David Turner315ceb82010-09-10 14:15:17 +020022int unix_connect_opts(QemuOpts *opts);
David 'Digit' Turner5d8f37a2009-09-14 14:32:27 -070023int unix_connect(const char *path);
24
25/* Old, ipv4 only bits. Don't use for new code. */
26int parse_host_port(SockAddress* saddr, const char *str);
27int parse_host_src_port(SockAddress* haddr, SockAddress* saddr,
28 const char *str);
29
30#endif /* QEMU__SOCKET_H */