Hello I see a small discrepancy between the measurement
of sent and received packets as displayed by ping command

on the wire the sent and received packets are the same size
I had a brief go

foo# ping
PING ( 56 data bytes
64 bytes from icmp_seq=0 ttl=53 time=91.719 ms

it would appear that one measurement is the ICMP Payload only
and the other is the ICMP payload + ICMP header  (8 byte difference)

foo# grep -n " data bytes" /root/ping.c
760:    printf("%s): %d data bytes\n", pr_addr(dst, dst->sa_len), datalen);
foo# grep -n " bytes from" /root/ping.c
1248:                   printf("%d bytes from %s: icmp_seq=%u", cc,
1292:           printf("%d bytes from %s: ", cc, pr_addr(from, fromlen));

looking at the source code it looks like the size = %d but %d is presenting
different values
I didnt see where %d was being changed between line 760 and line 1248
It has been a while since I looked at C programming in anger and im a bit
any pointers on where i should be looking so that I can submit a patch

Kindest regards,
Tom Smyth

Reply via email to