11 #define epicsExportSharedSymbols 21 epics::pvAccess::BlockingUDPTransport::shared_pointer P;
22 closer(
const epics::pvAccess::BlockingUDPTransport::shared_pointer& P) :P(P) {}
38 BlockingUDPTransport::shared_pointer BlockingUDPConnector::connect(ResponseHandler::shared_pointer
const & responseHandler,
40 int8 transportRevision)
47 return BlockingUDPTransport::shared_pointer();
51 int retval = ::setsockopt(socket, SOL_SOCKET, SO_BROADCAST, (
char *)&optval,
sizeof(optval));
58 return BlockingUDPTransport::shared_pointer();
74 retval = ::bind(socket, (sockaddr*)&(bindAddress.
sa),
sizeof(sockaddr));
82 return BlockingUDPTransport::shared_pointer();
86 BlockingUDPTransport::shared_pointer transport(
new BlockingUDPTransport(_serverFlag, responseHandler,
87 socket, bindAddress, transportRevision));
88 transport->internal_this = transport;
91 BlockingUDPTransport::shared_pointer ret(transport.get(), closer(transport));
LIBCOM_API void epicsStdCall epicsSocketDestroy(SOCKET s)
unsigned epicsStdCall sockAddrToDottedIP(const struct sockaddr *paddr, char *pBuf, unsigned bufSize)
TODO only here because of the Lockable.
void epicsStdCall epicsSocketEnableAddressUseForDatagramFanout(SOCKET s)
void epicsSocketConvertErrnoToString(char *pBuf, unsigned bufSize)
LIBCOM_API SOCKET epicsStdCall epicsSocketCreate(int domain, int type, int protocol)
#define LOG(level, format,...)