#include <xmlrpc-c/config.h>#include <stdlib.h>#include <assert.h>#include <sys/types.h>#include <unistd.h>#include <stdio.h>#include <string.h>#include <sys/socket.h>#include <sys/time.h>#include <netinet/in.h>#include <netinet/tcp.h>#include <netdb.h>#include <arpa/inet.h>#include <errno.h>#include <sys/ioctl.h>#include "abyss_xmlrpc_int.h"#include "abyss_mallocvar.h"#include "abyss_trace.h"#include "abyss_socket.h"#include <xmlrpc-c/abyss.h>#include "abyss_socket_unix.h"

Go to the source code of this file.
Data Structures | |
| struct | socketUnix |
Functions | |
| static void | socketAccept (TSocket *const listenSocketP, abyss_bool *const connectedP, abyss_bool *const failedP, TSocket **const acceptedSocketPP, TIPAddr *const ipAddrP) |
| static uint32_t | socketAvailableReadBytes (TSocket *const socketP) |
| abyss_bool | socketBind (TSocket *const socketP, TIPAddr *const addrP, uint16_t const portNumber) |
| abyss_bool | socketConnect (TSocket *const socketP, TIPAddr *const addrP, uint16_t const portNumber) |
| static void | socketDestroy (TSocket *const socketP) |
| static uint32_t | socketError (TSocket *const socketP) |
| static void | socketGetPeerName (TSocket *const socketP, TIPAddr *const ipAddrP, uint16_t *const portNumberP, abyss_bool *const successP) |
| abyss_bool | socketListen (TSocket *const socketP, uint32_t const backlog) |
| static uint32_t | socketRead (TSocket *const socketP, char *const buffer, uint32_t const len) |
| void | SocketUnixCreate (TSocket **const socketPP) |
| void | SocketUnixCreateFd (int const fd, TSocket **const socketPP) |
| void | SocketUnixInit (abyss_bool *const succeededP) |
| void | SocketUnixTerm (void) |
| static uint32_t | socketWait (TSocket *const socketP, abyss_bool const rd, abyss_bool const wr, uint32_t const timems) |
| static void | socketWrite (TSocket *const socketP, const unsigned char *const buffer, uint32_t const len, abyss_bool *const failedP) |
Variables | |
| static SocketAcceptImpl | socketAccept |
| static SocketAvailableReadBytesImpl | socketAvailableReadBytes |
| static SocketBindImpl | socketBind |
| static SocketConnectImpl | socketConnect |
| static SocketDestroyImpl | socketDestroy |
| static SocketErrorImpl | socketError |
| static SocketGetPeerNameImpl | socketGetPeerName |
| static SocketListenImpl | socketListen |
| static SocketReadImpl | socketRead |
| static SocketWaitImpl | socketWait |
| static SocketWriteImpl | socketWrite |
| static struct TSocketVtbl const | vtbl |
| static void socketAccept | ( | TSocket *const | listenSocketP, | |
| abyss_bool *const | connectedP, | |||
| abyss_bool *const | failedP, | |||
| TSocket **const | acceptedSocketPP, | |||
| TIPAddr *const | ipAddrP | |||
| ) | [static] |
Definition at line 341 of file abyss_socket_unix.c.
References FALSE, socketUnix::fd, MALLOCVAR, SocketCreate(), TRUE, and socketUnix::userSuppliedFd.
| static uint32_t socketAvailableReadBytes | ( | TSocket *const | socketP | ) | [static] |
| static void socketDestroy | ( | TSocket *const | socketP | ) | [static] |
Definition at line 194 of file abyss_socket_unix.c.
References socketUnix::fd, and socketUnix::userSuppliedFd.
| static uint32_t socketError | ( | TSocket *const | socketP | ) | [static] |
Definition at line 519 of file abyss_socket_unix.c.
| static void socketGetPeerName | ( | TSocket *const | socketP, | |
| TIPAddr *const | ipAddrP, | |||
| uint16_t *const | portNumberP, | |||
| abyss_bool *const | successP | |||
| ) | [static] |
Definition at line 473 of file abyss_socket_unix.c.
References FALSE, socketUnix::fd, TraceMsg(), and TRUE.
| abyss_bool socketListen | ( | TSocket *const | socketP, | |
| uint32_t const | backlog | |||
| ) |
| static uint32_t socketRead | ( | TSocket *const | socketP, | |
| char *const | buffer, | |||
| uint32_t const | len | |||
| ) | [static] |
Definition at line 252 of file abyss_socket_unix.c.
References socketUnix::fd, and SocketTraceIsActive.
| void SocketUnixCreate | ( | TSocket **const | socketPP | ) |
Definition at line 135 of file abyss_socket_unix.c.
References FALSE, socketUnix::fd, MALLOCVAR, NULL, SocketCreate(), and socketUnix::userSuppliedFd.
Referenced by createAndBindSocket().
| void SocketUnixCreateFd | ( | int const | fd, | |
| TSocket **const | socketPP | |||
| ) |
Definition at line 172 of file abyss_socket_unix.c.
References socketUnix::fd, MALLOCVAR, NULL, SocketCreate(), TRUE, and socketUnix::userSuppliedFd.
Referenced by createServerBoundSocket(), and createSocketFromOsSocket().
| void SocketUnixInit | ( | abyss_bool *const | succeededP | ) |
| void SocketUnixTerm | ( | void | ) |
| static uint32_t socketWait | ( | TSocket *const | socketP, | |
| abyss_bool const | rd, | |||
| abyss_bool const | wr, | |||
| uint32_t const | timems | |||
| ) | [static] |
Definition at line 407 of file abyss_socket_unix.c.
References socketUnix::fd, NULL, and TIME_INFINITE.
| static void socketWrite | ( | TSocket *const | socketP, | |
| const unsigned char *const | buffer, | |||
| uint32_t const | len, | |||
| abyss_bool *const | failedP | |||
| ) | [static] |
Definition at line 207 of file abyss_socket_unix.c.
References FALSE, socketUnix::fd, MIN, SocketTraceIsActive, and TRUE.
SocketAcceptImpl socketAccept [static] |
Definition at line 111 of file abyss_socket_unix.c.
SocketAvailableReadBytesImpl socketAvailableReadBytes [static] |
Definition at line 114 of file abyss_socket_unix.c.
SocketBindImpl socketBind [static] |
Definition at line 109 of file abyss_socket_unix.c.
SocketConnectImpl socketConnect [static] |
Definition at line 108 of file abyss_socket_unix.c.
SocketDestroyImpl socketDestroy [static] |
Definition at line 105 of file abyss_socket_unix.c.
SocketErrorImpl socketError [static] |
Definition at line 112 of file abyss_socket_unix.c.
SocketGetPeerNameImpl socketGetPeerName [static] |
Definition at line 115 of file abyss_socket_unix.c.
SocketListenImpl socketListen [static] |
Definition at line 110 of file abyss_socket_unix.c.
SocketReadImpl socketRead [static] |
Definition at line 107 of file abyss_socket_unix.c.
SocketWaitImpl socketWait [static] |
Definition at line 113 of file abyss_socket_unix.c.
SocketWriteImpl socketWrite [static] |
Definition at line 106 of file abyss_socket_unix.c.
struct TSocketVtbl const vtbl [static] |
Definition at line 118 of file abyss_socket_unix.c.
1.5.6