X-Git-Url: http://sjero.net/git/?a=blobdiff_plain;f=src%2Fconnect.h;h=f0ae5c074443078540414597e35a9aad52d46dd8;hb=d9fea91a0a319e348adb504bd3edff148ff3d8a0;hp=271f32edf4cb0f4ded6f777d20a56fba8097c6f1;hpb=c8e92cdbd6c38bb771ab0b9c88c92114f1b0315e;p=wget diff --git a/src/connect.h b/src/connect.h index 271f32ed..f0ae5c07 100644 --- a/src/connect.h +++ b/src/connect.h @@ -32,10 +32,6 @@ so, delete this exception statement from your version. */ #include "host.h" /* for definition of ip_address */ -/* bindport flags */ -#define BIND_ON_IPV4_ONLY LH_IPV4_ONLY -#define BIND_ON_IPV6_ONLY LH_IPV6_ONLY - #ifndef ENABLE_IPV6 # ifndef HAVE_SOCKADDR_STORAGE # define sockaddr_storage sockaddr_in @@ -51,10 +47,16 @@ enum { int connect_to_host PARAMS ((const char *, int)); int connect_to_ip PARAMS ((const ip_address *, int, const char *)); -void sockaddr_get_data PARAMS ((const struct sockaddr *, ip_address *, int *)); -uerr_t bindport PARAMS ((const ip_address *, int *, int *)); -uerr_t acceptport PARAMS ((int, int *)); -int conaddr PARAMS ((int, ip_address *)); +int bind_local PARAMS ((const ip_address *, int *)); +int accept_connection PARAMS ((int)); + +enum { + ENDPOINT_LOCAL, + ENDPOINT_PEER +}; +int socket_ip_address PARAMS ((int, ip_address *, int)); + +int retryable_socket_connect_error PARAMS ((int)); /* Flags for select_fd's WAIT_FOR argument. */ enum { @@ -63,16 +65,19 @@ enum { }; int select_fd PARAMS ((int, double, int)); int test_socket_open PARAMS ((int)); +int socket_has_inet6 PARAMS ((void)); + +typedef int (*fd_reader_t) PARAMS ((int, char *, int, void *)); +typedef int (*fd_writer_t) PARAMS ((int, char *, int, void *)); +typedef int (*fd_poller_t) PARAMS ((int, double, int, void *)); +typedef int (*fd_peeker_t) PARAMS ((int, char *, int, void *)); +typedef void (*fd_closer_t) PARAMS ((int, void *)); +void fd_register_transport PARAMS ((int, fd_reader_t, fd_writer_t, + fd_poller_t, fd_peeker_t, fd_closer_t, + void *)); -typedef int (*xreader_t) PARAMS ((int, char *, int, void *)); -typedef int (*xwriter_t) PARAMS ((int, char *, int, void *)); -typedef int (*xpoller_t) PARAMS ((int, double, int, void *)); -typedef void (*xcloser_t) PARAMS ((int, void *)); -void register_extended PARAMS ((int, - xreader_t, xwriter_t, xpoller_t, xcloser_t, - void *)); - -int xread PARAMS ((int, char *, int, double)); -int xwrite PARAMS ((int, char *, int, double)); -void xclose PARAMS ((int)); +int fd_read PARAMS ((int, char *, int, double)); +int fd_write PARAMS ((int, char *, int, double)); +int fd_peek PARAMS ((int, char *, int, double)); +void fd_close PARAMS ((int)); #endif /* CONNECT_H */