mirror of
https://github.com/inspircd/inspircd.git
synced 2025-03-09 18:49:03 -04:00
Merge pull request #138 from attilamolnar/insp12+sestatsfix
[1.2] Count the actual number of sent/received bytes in SocketEngine statistics
This commit is contained in:
commit
f99847f5a9
@ -202,7 +202,7 @@ DllExport void DoStats(InspIRCd* ServerInstance, char statschar, User* user, str
|
|||||||
results.push_back(sn+" 240 "+user->nick+" :InspIRCd(CLASS) "+ConvToStr(sizeof(InspIRCd))+" bytes");
|
results.push_back(sn+" 240 "+user->nick+" :InspIRCd(CLASS) "+ConvToStr(sizeof(InspIRCd))+" bytes");
|
||||||
results.push_back(sn+" 249 "+user->nick+" :Users(HASH_MAP) "+ConvToStr(ServerInstance->Users->clientlist->size())+" ("+ConvToStr(ServerInstance->Users->clientlist->size()*sizeof(User))+" bytes)");
|
results.push_back(sn+" 249 "+user->nick+" :Users(HASH_MAP) "+ConvToStr(ServerInstance->Users->clientlist->size())+" ("+ConvToStr(ServerInstance->Users->clientlist->size()*sizeof(User))+" bytes)");
|
||||||
results.push_back(sn+" 249 "+user->nick+" :Channels(HASH_MAP) "+ConvToStr(ServerInstance->chanlist->size())+" ("+ConvToStr(ServerInstance->chanlist->size()*sizeof(Channel))+" bytes)");
|
results.push_back(sn+" 249 "+user->nick+" :Channels(HASH_MAP) "+ConvToStr(ServerInstance->chanlist->size())+" ("+ConvToStr(ServerInstance->chanlist->size()*sizeof(Channel))+" bytes)");
|
||||||
results.push_back(sn+" 249 "+user->nick+" :Commands(VECTOR) "+ConvToStr(ServerInstance->Parser->cmdlist.size())+" ("+ConvToStr(ServerInstance->Parser->cmdlist.size()*sizeof(Command))+" bytes)");
|
results.push_back(sn+" 249 "+user->nick+" :Commands(HASH_MAP) "+ConvToStr(ServerInstance->Parser->cmdlist.size())+" ("+ConvToStr(ServerInstance->Parser->cmdlist.size()*sizeof(Command))+" bytes)");
|
||||||
|
|
||||||
if (!ServerInstance->Config->WhoWasGroupSize == 0 && !ServerInstance->Config->WhoWasMaxGroups == 0)
|
if (!ServerInstance->Config->WhoWasGroupSize == 0 && !ServerInstance->Config->WhoWasMaxGroups == 0)
|
||||||
{
|
{
|
||||||
|
@ -219,26 +219,34 @@ int SocketEngine::GetSockName(EventHandler* fd, sockaddr *name, socklen_t* namel
|
|||||||
|
|
||||||
int SocketEngine::RecvFrom(EventHandler* fd, void *buf, size_t len, int flags, sockaddr *from, socklen_t *fromlen)
|
int SocketEngine::RecvFrom(EventHandler* fd, void *buf, size_t len, int flags, sockaddr *from, socklen_t *fromlen)
|
||||||
{
|
{
|
||||||
this->UpdateStats(len, 0);
|
int nbRecvd = recvfrom(fd->GetFd(), (char*)buf, len, flags, from, fromlen);
|
||||||
return recvfrom(fd->GetFd(), (char*)buf, len, flags, from, fromlen);
|
if (nbRecvd > 0)
|
||||||
|
this->UpdateStats(nbRecvd, 0);
|
||||||
|
return nbRecvd;
|
||||||
}
|
}
|
||||||
|
|
||||||
int SocketEngine::Send(EventHandler* fd, const void *buf, size_t len, int flags)
|
int SocketEngine::Send(EventHandler* fd, const void *buf, size_t len, int flags)
|
||||||
{
|
{
|
||||||
this->UpdateStats(0, len);
|
int nbSent = send(fd->GetFd(), (const char*)buf, len, flags);
|
||||||
return send(fd->GetFd(), (const char*)buf, len, flags);
|
if (nbSent > 0)
|
||||||
|
this->UpdateStats(0, nbSent);
|
||||||
|
return nbSent;
|
||||||
}
|
}
|
||||||
|
|
||||||
int SocketEngine::Recv(EventHandler* fd, void *buf, size_t len, int flags)
|
int SocketEngine::Recv(EventHandler* fd, void *buf, size_t len, int flags)
|
||||||
{
|
{
|
||||||
this->UpdateStats(len, 0);
|
int nbRecvd = recv(fd->GetFd(), (char*)buf, len, flags);
|
||||||
return recv(fd->GetFd(), (char*)buf, len, flags);
|
if (nbRecvd > 0)
|
||||||
|
this->UpdateStats(nbRecvd, 0);
|
||||||
|
return nbRecvd;
|
||||||
}
|
}
|
||||||
|
|
||||||
int SocketEngine::SendTo(EventHandler* fd, const void *buf, size_t len, int flags, const sockaddr *to, socklen_t tolen)
|
int SocketEngine::SendTo(EventHandler* fd, const void *buf, size_t len, int flags, const sockaddr *to, socklen_t tolen)
|
||||||
{
|
{
|
||||||
this->UpdateStats(0, len);
|
int nbSent = sendto(fd->GetFd(), (const char*)buf, len, flags, to, tolen);
|
||||||
return sendto(fd->GetFd(), (const char*)buf, len, flags, to, tolen);
|
if (nbSent > 0)
|
||||||
|
this->UpdateStats(0, nbSent);
|
||||||
|
return nbSent;
|
||||||
}
|
}
|
||||||
|
|
||||||
int SocketEngine::Connect(EventHandler* fd, const sockaddr *serv_addr, socklen_t addrlen)
|
int SocketEngine::Connect(EventHandler* fd, const sockaddr *serv_addr, socklen_t addrlen)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user