| Return Type | Function name | Arguments |
|---|---|---|
| hzEcode | hzUdpClient::SendPkt | (hzPacket*,unsigned int,) |
Declared in file: hzUdpClient.h
Defined in file : hzUdpClient.cpp
Function Logic:
Function body:
hzEcode hzUdpClient::SendPkt (hzPacket* pData, unsigned int nLen)
{
_hzfunc("hzUdpClient::Send(void*,uint32_t)") ;
if (m_nSock == 0)
return E_NOSOCKET ;
if (!pData)
{
hzerr(E_ARGUMENT, "Nothing to send") ;
return E_ARGUMENT ;
}
if (nLen > HZ_MAXPACKET)
{
hzerr(E_RANGE, "Length of message must be between 1 and 1460 bytes") ;
return E_RANGE ;
}
if (sendto(m_nSock, pData->m_data, nLen, 0,(struct sockaddr*) &m_SvrAddr, m_SvrLen) < 0)
{
close(m_nSock) ;
m_nSock = 0;
hzerr(E_SENDFAIL, "Could not send to host (%s) on port %d", *m_Hostname, m_nPort) ;
return E_SENDFAIL ;
}
threadLog("Client sock %d sends msg of %d bytes [%s]\n", m_nSock, nLen, pData->m_data) ;
return E_OK ;
}