bool send_data(int connfd , char * pBuff, unsigned int &len , int flag)
{
if( connfd < 0 || pBuff == NULL)
{
return false;
}
int result = 0;
int remainSize = (int) *len;
int sendSize = 0;
const char * p = pBuff;
time_t startTime = time(NULL);
int timeOut = 3;
do
{
if( time(NULL) > start + timeOut)
{
return false;
}
sendSize = send(connfd , p, remainSize , flag);
if(sendSize < 0)
{
if(errno == EAGAIN || error == EWOULDBLOCK || errno == EINTR)
{
continue;
}
else
{
len -= remainSize;
return false;
}
}
p += sendSize;
remainSize -= sendSize;
}while(remainSize > 0);
return true;
}
{
if( connfd < 0 || pBuff == NULL)
{
return false;
}
int result = 0;
int remainSize = (int) *len;
int sendSize = 0;
const char * p = pBuff;
time_t startTime = time(NULL);
int timeOut = 3;
do
{
if( time(NULL) > start + timeOut)
{
return false;
}
sendSize = send(connfd , p, remainSize , flag);
if(sendSize < 0)
{
if(errno == EAGAIN || error == EWOULDBLOCK || errno == EINTR)
{
continue;
}
else
{
len -= remainSize;
return false;
}
}
p += sendSize;
remainSize -= sendSize;
}while(remainSize > 0);
return true;
}