mirror of
https://github.com/RetroShare/RetroShare.git
synced 2025-05-12 11:02:30 -04:00
Added Send/Recv accounting to Dht & UdpSocket in general.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4817 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This commit is contained in:
parent
80a20b41a3
commit
7dc0cd6b0f
4 changed files with 73 additions and 1 deletions
|
@ -394,6 +394,7 @@ int UdpLayer::openSocket()
|
|||
std::cerr << "Setting TTL to " << UDP_DEF_TTL << std::endl;
|
||||
#endif
|
||||
setTTL(UDP_DEF_TTL);
|
||||
clearDataTransferred(); // clear statistics.
|
||||
|
||||
// start up our thread.
|
||||
{
|
||||
|
@ -464,6 +465,28 @@ int UdpLayer::tick()
|
|||
return 1;
|
||||
}
|
||||
|
||||
void UdpLayer::getDataTransferred(uint32_t &read, uint32_t &write)
|
||||
{
|
||||
sockMtx.lock(); /********** LOCK MUTEX *********/
|
||||
|
||||
read = readBytes;
|
||||
write = writeBytes;
|
||||
|
||||
sockMtx.unlock(); /******** UNLOCK MUTEX *********/
|
||||
|
||||
clearDataTransferred();
|
||||
}
|
||||
|
||||
void UdpLayer::clearDataTransferred()
|
||||
{
|
||||
sockMtx.lock(); /********** LOCK MUTEX *********/
|
||||
|
||||
readBytes = 0;
|
||||
writeBytes = 0;
|
||||
|
||||
sockMtx.unlock(); /******** UNLOCK MUTEX *********/
|
||||
}
|
||||
|
||||
/******************* Internals *************************************/
|
||||
|
||||
int UdpLayer::receiveUdpPacket(void *data, int *size, struct sockaddr_in &from)
|
||||
|
@ -477,6 +500,11 @@ int UdpLayer::receiveUdpPacket(void *data, int *size, struct sockaddr_in &from)
|
|||
insize = bdnet_recvfrom(sockfd,data,insize,0,
|
||||
(struct sockaddr*)&fromaddr,&fromsize);
|
||||
|
||||
if (0 < insize)
|
||||
{
|
||||
readBytes += insize;
|
||||
}
|
||||
|
||||
sockMtx.unlock(); /******** UNLOCK MUTEX *********/
|
||||
|
||||
if (0 < insize)
|
||||
|
@ -508,6 +536,8 @@ int UdpLayer::sendUdpPacket(const void *data, int size, const struct sockaddr_in
|
|||
(struct sockaddr *) &(toaddr),
|
||||
sizeof(toaddr));
|
||||
|
||||
writeBytes += size;
|
||||
|
||||
sockMtx.unlock(); /******** UNLOCK MUTEX *********/
|
||||
return 1;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue