61 sockErrBuf,
sizeof ( sockErrBuf ) );
66 else if (check_nchars == 0){
77 unsigned long cnt =
sizeof ( client->
recv.
buf ) - client->
recv.
cnt;
78 errlogPrintf (
"CAS: nill message disconnect ( %lu bytes request )\n",
83 else if ( nchars < 0 ) {
92 "CAS: Out of network buffers, retring receive in 15 seconds\n" );
107 sockErrBuf,
sizeof ( sockErrBuf ), anerrno);
115 client->
recv.
cnt += ( unsigned ) nchars;
152 epicsPrintf (
"CAS: forcing disconnect from %s\n", buf);
void casAttachThreadToClient(struct client *pClient)
#define SOCK_ECONNABORTED
struct message_buffer recv
#define assert(exp)
Declare that a condition should be true.
void destroy_tcp_client(struct client *client)
void epicsSocketConvertErrnoToString(char *pBuf, unsigned bufSize)
#define socket_ioctl(A, B, C)
epicsTimeStamp time_at_last_recv
int epicsStdCall epicsTimeGetCurrent(epicsTimeStamp *pDest)
Get current time into *pDest.
int camessage(struct client *client)
int errlogPrintf(const char *pFormat,...)
GLBLTYPE enum ctl castcp_ctl
LIBCOM_API void epicsStdCall epicsThreadSleep(double seconds)
Block the calling thread for at least the specified time.
void ellDelete(ELLLIST *pList, ELLNODE *pNode)
Deletes a node from a list.
void cas_send_bs_msg(struct client *pclient, int lock_needed)
void epicsSocketConvertErrorToString(char *pBuf, unsigned bufSize, int theSockError)
unsigned epicsStdCall ipAddrToDottedIP(const struct sockaddr_in *paddr, char *pBuf, unsigned bufSize)