util/sockRoutines.c File Reference

Go to the source code of this file.

Typedefs

typedef int socklen_t
typedef void(*) skt_signal_handler_fn (int sig)

Functions

static int default_skt_abort (int code, const char *msg)
void skt_set_idle (skt_idleFn f)
skt_abortFn skt_set_abort (skt_abortFn f)
static void doCleanup (void)
void skt_init (void)
void skt_close (SOCKET fd)
static void skt_SIGPIPE_handler (int sig)
void skt_buffer_begin (SOCKET sk)
void skt_buffer_end (SOCKET sk)
static int skt_should_retry (void)
int skt_select1 (SOCKET fd, int msec)
skt_ip_t skt_my_ip (void)
static int skt_parse_dotted (const char *str, skt_ip_t *ret)
skt_ip_t skt_lookup_ip (const char *name)
skt_ip_t skt_innode_my_ip (void)
skt_ip_t skt_innode_lookup_ip (const char *name)
char * skt_print_ip (char *dest, skt_ip_t addr)
int skt_ip_match (skt_ip_t a, skt_ip_t b)
sockaddr_in skt_build_addr (skt_ip_t IP, int port)
SOCKET skt_datagram (unsigned int *port, int bufsize)
SOCKET skt_server (unsigned int *port)
SOCKET skt_server_ip (unsigned int *port, skt_ip_t *ip)
SOCKET skt_accept (SOCKET src_fd, skt_ip_t *pip, unsigned int *port)
SOCKET skt_connect (skt_ip_t ip, int port, int timeout)
void skt_setSockBuf (SOCKET skt, int bufsize)
int skt_recvN (SOCKET hSocket, void *buff, int nBytes)
int skt_sendN (SOCKET hSocket, const void *buff, int nBytes)
int skt_sendV (SOCKET fd, int nBuffers, const void **bufs, int *lens)
ChMessageInt_t ChMessageInt_new (unsigned int src)
unsigned int ChMessageInt (ChMessageInt_t src)
ChMessageLong_t ChMessageLong_new (CMK_TYPEDEF_UINT8 src)
CMK_TYPEDEF_UINT8 ChMessageLong (ChMessageLong_t src)
int ChMessage_recv (SOCKET fd, ChMessage *dst)
int ChMessageHeader_recv (SOCKET fd, ChMessage *dst)
int ChMessageData_recv (SOCKET fd, ChMessage *dst)
void ChMessage_free (ChMessage *doomed)
void ChMessageHeader_new (const char *type, int len, ChMessageHeader *dst)
void ChMessage_new (const char *type, int len, ChMessage *dst)
int ChMessage_send (SOCKET fd, const ChMessage *src)

Variables

static skt_idleFn idleFunc = NULL
static skt_abortFn skt_abort = default_skt_abort
static int skt_ignore_SIGPIPE = 0
static int skt_inited = 0
static skt_signal_handler_fn skt_fallback_SIGPIPE = NULL
skt_ip_t _skt_invalid_ip = {{0}}
skt_ip_t _skt_invalid_ip = {{0}}


Typedef Documentation

typedef int socklen_t

Definition at line 33 of file sockRoutines.c.

typedef void(*) skt_signal_handler_fn(int sig)

Definition at line 80 of file sockRoutines.c.


Function Documentation

static int default_skt_abort ( int  code,
const char *  msg 
) [static]

Definition at line 37 of file sockRoutines.c.

void skt_set_idle ( skt_idleFn  f  ) 

Definition at line 46 of file sockRoutines.c.

References idleFunc.

Referenced by arg_init(), and KillOnAllSigs().

skt_abortFn skt_set_abort ( skt_abortFn  f  ) 

Definition at line 47 of file sockRoutines.c.

References skt_abort.

Referenced by arg_init(), CcsImpl_kill(), CcsServer_recvRequest(), CcsServer_sendReply(), KillOnAllSigs(), and main().

static void doCleanup ( void   )  [static]

Definition at line 60 of file sockRoutines.c.

Referenced by skt_init().

void skt_init ( void   ) 

Definition at line 64 of file sockRoutines.c.

References doCleanup(), and skt_inited.

Referenced by arg_init(), CcsConnectIpWithTimeout(), CcsConnectWithTimeout(), CcsServer_new(), KillOnAllSigs(), and main().

void skt_close ( SOCKET  fd  ) 

Definition at line 74 of file sockRoutines.c.

Referenced by arg_init(), CcsConnectIpWithTimeout(), CcsFinalize(), CcsImpl_kill(), CcsImpl_noReply(), CcsNoResponse(), CcsRecvResponse(), CcsRecvResponseMsg(), CcsSendRequestWithTimeout(), CcsServer_recvRequest(), CcsServer_sendReply(), CcsServer_writeReply(), main(), ping_developers(), and skt_connect().

static void skt_SIGPIPE_handler ( int  sig  )  [static]

Definition at line 82 of file sockRoutines.c.

References skt_fallback_SIGPIPE, and skt_ignore_SIGPIPE.

void skt_buffer_begin ( SOCKET  sk  ) 

Definition at line 108 of file sockRoutines.c.

void skt_buffer_end ( SOCKET  sk  ) 

Definition at line 109 of file sockRoutines.c.

static int skt_should_retry ( void   )  [static]

Definition at line 118 of file sockRoutines.c.

References errno, idleFunc, and sleep().

Referenced by skt_accept(), skt_connect(), skt_datagram(), skt_recvN(), skt_select1(), skt_sendN(), and skt_server_ip().

int skt_select1 ( SOCKET  fd,
int  msec 
)

Definition at line 147 of file sockRoutines.c.

References skt_abort, skt_ignore_SIGPIPE, skt_should_retry(), and stats::time().

Referenced by arg_init(), CcsProbe(), CcsProbeTimeout(), CcsRecvResponse(), CcsRecvResponseMsg(), CcsServerCheck(), KillOnAllSigs(), and skt_recvN().

skt_ip_t skt_my_ip ( void   ) 

Definition at line 182 of file sockRoutines.c.

References _skt_invalid_ip, and skt_lookup_ip().

Referenced by CcsServer_new(), CmiInitCPUAffinity(), getenv_display(), and skt_innode_my_ip().

static int skt_parse_dotted ( const char *  str,
skt_ip_t ret 
) [static]

Definition at line 192 of file sockRoutines.c.

References _skt_invalid_ip, and skt_ip_t::data.

Referenced by skt_lookup_ip().

skt_ip_t skt_lookup_ip ( const char *  name  ) 

Definition at line 212 of file sockRoutines.c.

References _skt_invalid_ip, and skt_parse_dotted().

Referenced by arg_init(), CcsConnectWithTimeout(), KillOnAllSigs(), ping_developers(), skt_innode_lookup_ip(), and skt_my_ip().

skt_ip_t skt_innode_my_ip ( void   ) 

Definition at line 229 of file sockRoutines.c.

References skt_innode_lookup_ip(), and skt_my_ip().

Referenced by arg_init().

skt_ip_t skt_innode_lookup_ip ( const char *  name  ) 

Definition at line 241 of file sockRoutines.c.

References _skt_invalid_ip, and skt_lookup_ip().

Referenced by arg_init(), and skt_innode_my_ip().

char* skt_print_ip ( char *  dest,
skt_ip_t  addr 
)

Definition at line 260 of file sockRoutines.c.

Referenced by arg_init(), CcsServer_new(), CcsServer_recvRequest(), CmiMXMakeConnection(), getenv_display(), main(), and printSvr().

int skt_ip_match ( skt_ip_t  a,
skt_ip_t  b 
)

Definition at line 272 of file sockRoutines.c.

Referenced by arg_init(), and KillOnAllSigs().

struct sockaddr_in skt_build_addr ( skt_ip_t  IP,
int  port 
)

Definition at line 276 of file sockRoutines.c.

Referenced by node_addresses_store(), ping_developers(), skt_connect(), skt_datagram(), and skt_server_ip().

SOCKET skt_datagram ( unsigned int port,
int  bufsize 
)

Definition at line 285 of file sockRoutines.c.

References _skt_invalid_ip, skt_abort, skt_build_addr(), and skt_should_retry().

Referenced by KillOnAllSigs().

SOCKET skt_server ( unsigned int port  ) 

Definition at line 317 of file sockRoutines.c.

References skt_server_ip().

Referenced by arg_init(), CcsServer_new(), KillOnAllSigs(), and main().

SOCKET skt_server_ip ( unsigned int port,
skt_ip_t ip 
)

Definition at line 322 of file sockRoutines.c.

References _skt_invalid_ip, skt_abort, skt_build_addr(), and skt_should_retry().

Referenced by skt_server().

SOCKET skt_accept ( SOCKET  src_fd,
skt_ip_t pip,
unsigned int port 
)

Definition at line 352 of file sockRoutines.c.

References skt_abort, and skt_should_retry().

Referenced by arg_init(), CcsServer_recvRequest(), main(), and open_tcp_sockets().

SOCKET skt_connect ( skt_ip_t  ip,
int  port,
int  timeout 
)

Definition at line 371 of file sockRoutines.c.

References skt_abort, skt_build_addr(), skt_close(), skt_should_retry(), and stats::time().

Referenced by arg_init(), CcsConnectIpWithTimeout(), CcsImpl_kill(), CcsSendRequestWithTimeout(), KillOnAllSigs(), and open_tcp_sockets().

void skt_setSockBuf ( SOCKET  skt,
int  bufsize 
)

Definition at line 401 of file sockRoutines.c.

References skt_abort.

Referenced by open_tcp_sockets().

int skt_recvN ( SOCKET  hSocket,
void *  buff,
int  nBytes 
)

Definition at line 410 of file sockRoutines.c.

References skt_abort, skt_ignore_SIGPIPE, skt_select1(), and skt_should_retry().

Referenced by arg_init(), CcsImpl_authInit(), CcsImpl_recvReplyAuth(), CcsRecvResponse(), CcsRecvResponseMsg(), CcsServer_createSalt(), CcsServer_readHeader(), CcsServer_recvRequestData(), CcsServer_SHA1_message(), ChMessageData_recv(), ChMessageHeader_recv(), main(), open_tcp_sockets(), and ReceiveDatagram().

int skt_sendN ( SOCKET  hSocket,
const void *  buff,
int  nBytes 
)

Definition at line 442 of file sockRoutines.c.

References skt_abort, skt_ignore_SIGPIPE, and skt_should_retry().

Referenced by arg_init(), CcsImpl_authInit(), CcsImpl_kill(), CcsServer_createSalt(), main(), open_tcp_sockets(), and skt_sendV().

int skt_sendV ( SOCKET  fd,
int  nBuffers,
const void **  bufs,
int lens 
)

Definition at line 473 of file sockRoutines.c.

References CmiTmpAlloc(), CmiTmpFree(), dest, and skt_sendN().

Referenced by arg_init(), CcsSendRequestWithTimeout(), CcsServer_writeReply(), ChMessage_send(), and KillOnAllSigs().

ChMessageInt_t ChMessageInt_new ( unsigned int  src  ) 

Definition at line 531 of file sockRoutines.c.

References ChMessageInt_t::data.

Referenced by arg_init(), CCS_AUTH_hash(), ccs_getinfo(), CcsImpl_authInit(), CcsImpl_netRequest(), CcsImpl_reply(), CcsNoDelayedReply(), CcsNoReply(), CcsSendDelayedReply(), CcsSendReply(), CcsSendRequestWithTimeout(), CcsServer_createSalt(), CcsServer_readHeader(), CcsServer_recvRequest(), CcsServer_recvRequestData(), CcsServer_writeReply(), ChMessageHeader_new(), copyInfiAddr(), CpdList_ccs_list_len(), and KillOnAllSigs().

unsigned int ChMessageInt ( ChMessageInt_t  src  ) 

Definition at line 537 of file sockRoutines.c.

References ChMessageInt_t::data.

Referenced by arg_init(), ccs_killport(), CcsCallerId(), CcsHandleRequest(), CcsImpl_authInit(), CcsImpl_ccs2converse(), CcsImpl_netRequest(), CcsImpl_noReply(), CcsRecvResponse(), CcsRecvResponseMsg(), CcsServer_createSalt(), CcsServer_recvRequestData(), CcsServer_sendReply(), CcsServer_SHA1_message(), CcsServer_writeReply(), ChMessageHeader_recv(), CpdListHeader_ccs_list_items(), CpdListLookup(), crash_node_handle(), main(), node_addresses_store(), parseInfo(), and rep_fw_handler().

ChMessageLong_t ChMessageLong_new ( CMK_TYPEDEF_UINT8  src  ) 

Definition at line 544 of file sockRoutines.c.

References ChMessageLong_t::data.

Referenced by KillOnAllSigs().

CMK_TYPEDEF_UINT8 ChMessageLong ( ChMessageLong_t  src  ) 

Definition at line 550 of file sockRoutines.c.

References ChMessageLong_t::data.

Referenced by node_addresses_store().

int ChMessage_recv ( SOCKET  fd,
ChMessage dst 
)

Definition at line 557 of file sockRoutines.c.

References ChMessageData_recv(), and ChMessageHeader_recv().

Referenced by arg_init(), and KillOnAllSigs().

int ChMessageHeader_recv ( SOCKET  fd,
ChMessage dst 
)

Definition at line 565 of file sockRoutines.c.

References ChMessageInt(), ChMessage::data, ChMessage::header, ChMessage::len, ChMessageHeader::len, and skt_recvN().

Referenced by arg_init(), and ChMessage_recv().

int ChMessageData_recv ( SOCKET  fd,
ChMessage dst 
)

Definition at line 574 of file sockRoutines.c.

References ChMessage::data, ChMessage::len, malloc(), and skt_recvN().

Referenced by arg_init(), and ChMessage_recv().

void ChMessage_free ( ChMessage doomed  ) 

Definition at line 582 of file sockRoutines.c.

References ChMessage::data, free(), ChMessage::header, ChMessage::len, and ChMessageHeader::type.

Referenced by arg_init(), and KillOnAllSigs().

void ChMessageHeader_new ( const char *  type,
int  len,
ChMessageHeader dst 
)

Definition at line 589 of file sockRoutines.c.

References ChMessageInt_new(), ChMessageHeader::len, and ChMessageHeader::type.

Referenced by arg_init(), ChMessage_new(), and KillOnAllSigs().

void ChMessage_new ( const char *  type,
int  len,
ChMessage dst 
)

Definition at line 595 of file sockRoutines.c.

References ChMessageHeader_new(), ChMessage::data, ChMessage::header, ChMessage::len, and malloc().

Referenced by KillOnAllSigs().

int ChMessage_send ( SOCKET  fd,
const ChMessage src 
)

Definition at line 601 of file sockRoutines.c.

References ChMessage::data, ChMessage::header, ChMessage::len, and skt_sendV().


Variable Documentation

skt_idleFn idleFunc = NULL [static]

Definition at line 44 of file sockRoutines.c.

Referenced by skt_set_idle(), and skt_should_retry().

skt_abortFn skt_abort = default_skt_abort [static]

Definition at line 45 of file sockRoutines.c.

Referenced by skt_accept(), skt_connect(), skt_datagram(), skt_recvN(), skt_select1(), skt_sendN(), skt_server_ip(), skt_set_abort(), and skt_setSockBuf().

int skt_ignore_SIGPIPE = 0 [static]

Definition at line 57 of file sockRoutines.c.

Referenced by skt_recvN(), skt_select1(), skt_sendN(), and skt_SIGPIPE_handler().

int skt_inited = 0 [static]

Definition at line 62 of file sockRoutines.c.

Referenced by skt_init().

skt_signal_handler_fn skt_fallback_SIGPIPE = NULL [static]

Definition at line 81 of file sockRoutines.c.

Referenced by skt_SIGPIPE_handler().

skt_ip_t _skt_invalid_ip = {{0}}

Definition at line 180 of file sockRoutines.c.

Referenced by arg_init(), KillOnAllSigs(), skt_datagram(), skt_innode_lookup_ip(), skt_lookup_ip(), skt_my_ip(), skt_parse_dotted(), and skt_server_ip().

skt_ip_t _skt_invalid_ip = {{0}}

Definition at line 611 of file sockRoutines.c.


Generated on Sun Jun 29 13:29:36 2008 for Charm++ by  doxygen 1.5.1