Return TypeFunction nameArguments
hzEcodehzUdpClient::SendPkt(hzPacket*,unsigned int,)

Declared in file: hzUdpClient.h
Defined in file : hzUdpClient.cpp

Function Logic:

0:START 1:m_nSock==0 2:Return E_NOSOCKET 3:!pData 4:Return E_ARGUMENT 5:nLen>HZ_MAXPACKET 6:Return E_RANGE 7:sendto(m_nSock,pData->m_data,nLen,0,(structsockaddr*)&m_SvrAddr,m_SvrLen)<0 8:close m_nSock 9:Return E_SENDFAIL 10:Return E_OK

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 ;
}