mirror of
https://github.com/espressif/openthread.git
synced 2026-08-19 08:59:52 +00:00
[cli] avoid div-by-zero in HandlePingStatistics() (#6394)
This commit is contained in:
+4
-1
@@ -3163,18 +3163,21 @@ void Interpreter::HandlePingStatistics(const otPingSenderStatistics *aStatistics
|
||||
void Interpreter::HandlePingStatistics(const otPingSenderStatistics *aStatistics)
|
||||
{
|
||||
OutputFormat("%u packets transmitted, %u packets received.", aStatistics->mSentCount, aStatistics->mReceivedCount);
|
||||
if (!aStatistics->mIsMulticast)
|
||||
|
||||
if ((aStatistics->mSentCount != 0) && !aStatistics->mIsMulticast)
|
||||
{
|
||||
uint32_t packetLossRate =
|
||||
1000 * (aStatistics->mSentCount - aStatistics->mReceivedCount) / aStatistics->mSentCount;
|
||||
OutputFormat(" Packet loss = %u.%u%%.", packetLossRate / 10, packetLossRate % 10);
|
||||
}
|
||||
|
||||
if (aStatistics->mReceivedCount != 0)
|
||||
{
|
||||
uint32_t avgRoundTripTime = 1000 * aStatistics->mTotalRoundTripTime / aStatistics->mReceivedCount;
|
||||
OutputFormat(" Round-trip min/avg/max = %u/%u.%u/%u ms.", aStatistics->mMinRoundTripTime,
|
||||
avgRoundTripTime / 1000, avgRoundTripTime % 1000, aStatistics->mMaxRoundTripTime);
|
||||
}
|
||||
|
||||
OutputLine("");
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user