1f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org/* headers to use the BSD sockets */ 2f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#ifndef QEMU__SOCKET_H 3f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define QEMU__SOCKET_H 4f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 5f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#include "qemu/option.h" 6f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 7f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#include "android/sockets.h" 8f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define socket_error() errno 9f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define closesocket socket_close 10f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 11f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org/* New, ipv6-ready socket helper functions, see qemu-sockets.c */ 12f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgint inet_listen_opts(QemuOpts *opts, int port_offset); 13f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgint inet_listen(const char *str, char *ostr, int olen, 14f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org int socktype, int port_offset); 15f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgint inet_connect_opts(QemuOpts *opts); 16f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgint inet_connect(const char *str, int socktype); 17f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgint inet_dgram_opts(QemuOpts *opts); 18f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgconst char *inet_strfamily(int family); 19f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 20f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgint unix_listen_opts(QemuOpts *opts); 21f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgint unix_listen(const char *path, char *ostr, int olen); 22f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgint unix_connect_opts(QemuOpts *opts); 23f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgint unix_connect(const char *path); 24f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 25f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org/* Old, ipv4 only bits. Don't use for new code. */ 26f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgint parse_host_port(SockAddress* saddr, const char *str); 27f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgint parse_host_src_port(SockAddress* haddr, SockAddress* saddr, 28f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org const char *str); 29f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 30f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgvoid qemu_set_block(int fd); 31f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 32f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#endif /* QEMU__SOCKET_H */ 33f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org