17#include "apr_arch_networkio.h"
18#include "apr_arch_inherit.h"
26#include <sys/socket.h>
27#include <netinet/tcp.h>
28#include <netinet/in.h>
64 (*new)->local_addr->pool =
p;
68 (*new)->remote_addr->pool =
p;
69 (*new)->remote_addr_unknown = 1;
100 if ((*new)->socketdes < 0 &&
downgrade) {
106 if ((*new)->socketdes < 0) {
111 (*new)->timeout = -1;
112 (*new)->nonblock =
FALSE;
169 (*new)->timeout = -1;
170 (*new)->nonblock =
FALSE;
173 (
struct sockaddr *)&(*new)->remote_addr->sa,
174 &(*new)->remote_addr->salen);
176 if ((*new)->socketdes < 0) {
182 (*new)->remote_addr->port =
ntohs((*new)->remote_addr->sa.sin.sin_port);
186 (*new)->local_addr->ipaddr_ptr = &(*new)->local_addr->sa.sin.sin_addr;
266 (*apr_sock)->timeout = -1;
269 memcpy(&(*apr_sock)->local_addr->sa.sin,
271 (*apr_sock)->local_addr->salen);
273 (*apr_sock)->local_addr->port =
ntohs((*apr_sock)->local_addr->sa.sin.sin_port);
276 (*apr_sock)->local_port_unknown = (*apr_sock)->local_interface_unknown = 1;
279 memcpy(&(*apr_sock)->remote_addr->sa.sin,
281 (*apr_sock)->remote_addr->salen);
283 (*apr_sock)->remote_addr->port =
ntohs((*apr_sock)->remote_addr->sa.sin.sin_port);
286 (*apr_sock)->remote_addr_unknown = 1;
303 (*sock)->timeout = -1;
306 (*sock)->local_port_unknown = (*sock)->local_interface_unknown = 1;
307 (*sock)->remote_addr_unknown = 1;
APR Miscellaneous library routines.
APR general purpose library routines.
APR Portability Routines.
const void apr_status_t(*) apr_status_t(* APR_DECLARE)(void) apr_pool_pre_cleanup_register(apr_pool_t *p
const char int apr_pool_t * pool
void const char apr_status_t(* cleanup)(void *))
apr_sockaddr_t * sockaddr
#define APR_POOL_IMPLEMENT_ACCESSOR(type)
#define apr_pcalloc(p, size)
apr_os_sock_info_t * os_sock_info
#define APR_IMPLEMENT_INHERIT_UNSET(name, flag, pool, cleanup)
#define APR_IMPLEMENT_INHERIT_SET(name, flag, pool, cleanup)
void apr_sockaddr_vars_set(apr_sockaddr_t *, int, apr_port_t)
static void alloc_socket(apr_socket_t **new, apr_pool_t *p)
static apr_status_t socket_cleanup(void *sock)
static void set_socket_vars(apr_socket_t *sock, int family, int type, int protocol)
union apr_sockaddr_t::@55 sa
sock_userdata_t * userdata
apr_sockaddr_t * remote_addr
apr_sockaddr_t * local_addr
apr_status_t apr_os_sock_get(apr_os_sock_t *thesock, apr_socket_t *sock)
apr_status_t apr_socket_accept(apr_socket_t **new, apr_socket_t *sock, apr_pool_t *connection_context)
apr_status_t apr_socket_listen(apr_socket_t *sock, apr_int32_t backlog)
apr_status_t apr_socket_bind(apr_socket_t *sock, apr_sockaddr_t *sa)
apr_status_t apr_os_sock_make(apr_socket_t **apr_sock, apr_os_sock_info_t *os_sock_info, apr_pool_t *cont)
apr_status_t apr_os_sock_put(apr_socket_t **sock, apr_os_sock_t *thesock, apr_pool_t *cont)
apr_status_t apr_socket_close(apr_socket_t *thesocket)
apr_status_t apr_socket_type_get(apr_socket_t *sock, int *type)
apr_status_t apr_socket_connect(apr_socket_t *sock, apr_sockaddr_t *sa)
apr_status_t apr_socket_protocol_get(apr_socket_t *sock, int *protocol)
apr_status_t apr_socket_shutdown(apr_socket_t *thesocket, apr_shutdown_how_e how)
apr_status_t apr_socket_create(apr_socket_t **new, int ofamily, int type, int protocol, apr_pool_t *cont)
apr_status_t apr_socket_data_get(void **data, const char *key, apr_socket_t *sock)
apr_status_t apr_socket_data_set(apr_socket_t *sock, void *data, const char *key, apr_status_t(*cleanup)(void *))