This is Unofficial EPICS BASE Doxygen Site
osdSockAddrReuse.cpp File Reference
#include "osiSock.h"
#include "errlog.h"
+ Include dependency graph for osdSockAddrReuse.cpp:

Go to the source code of this file.

Macros

#define DOIT(sock, opt)   setfanout(sock, opt, #opt)
 

Functions

LIBCOM_API void epicsStdCall epicsSocketEnableAddressReuseDuringTimeWaitState (SOCKET s)
 
void epicsStdCall epicsSocketEnableAddressUseForDatagramFanout (SOCKET s)
 

Macro Definition Documentation

#define DOIT (   sock,
  opt 
)    setfanout(sock, opt, #opt)

Function Documentation

LIBCOM_API void epicsStdCall epicsSocketEnableAddressReuseDuringTimeWaitState ( SOCKET  s)

Definition at line 23 of file osdSockAddrReuse.cpp.

24 {
25  int yes = true;
26  int status;
27  status = setsockopt ( s, SOL_SOCKET, SO_REUSEADDR,
28  (char *) & yes, sizeof ( yes ) );
29  if ( status < 0 ) {
30  errlogPrintf (
31  "epicsSocketEnableAddressReuseDuringTimeWaitState: "
32  "unable to set SO_REUSEADDR?\n");
33  }
34 }
pvd::Status status
int errlogPrintf(const char *pFormat,...)
Definition: errlog.c:105
void epicsStdCall epicsSocketEnableAddressUseForDatagramFanout ( SOCKET  s)

Definition at line 50 of file osdSockAddrReuse.cpp.

51 {
52 #define DOIT(sock, opt) setfanout(sock, opt, #opt)
53 #ifdef SO_REUSEPORT
54  DOIT(s, SO_REUSEPORT);
55 #endif
56  DOIT(s, SO_REUSEADDR);
57 #undef DOIT
58 }
#define DOIT(sock, opt)