On Fri, 4 May 2007, Karel Kulhavy wrote: > I have the OpenBSD 4.0 ping and it wrote this: > > 64 bytes from 192.168.2.215: icmp_seq=3029 ttl=64 time=6.057 ms > 64 bytes from 192.168.2.215: icmp_seq=3035 ttl=64 time=44.108 ms > 64 bytes from 192.168.2.215: icmp_seq=3036 ttl=64 time=-994831.-515 ms > ^ > Parse error: minus sign not allowed between decimal dot and the decimal part.
Is "Parse error:..." the output of some program? > > CL< Observe the "ping" source: 733 if (timing) 734 (void)printf(" time=%d.%03d ms", 735 (int)(triptime / 1000), 736 (int)(triptime % 1000)); your indicated triptime is -994,831,515 usec. Expressed otherwise, that is -994831515 3300135781 c4b41365, as an unsigned and in hex. Taking the unsigned interpretation, that would be 3300 seconds or about 55 minutes. (triptime is a quad_t type). I suggest a fault in your computer, some sort of glitch in the highspeed clock... unless the ping actually took 55 minutes. You can peruse the pellucid source to ping at /usr/src/sbin/ping.c Perhaps, if ping times must always be positive, the printf might be changed to 734 (void)printf(" time=%u.%03u ms", 735 (unsigned int)(triptime / 1000), 736 (unsigned int)(triptime % 1000)); Your output would then have read: 64 bytes from 192.168.2.215: icmp_seq=3036 ttl=64 time=3300135.781 ms It would have been more helpful had you exhibited the original ping command. I am curious about the value for the -w ("maxwait") parameter, which defaults to ten seconds. If that was the -w you used, then again I suggest looking for a hardware failure (or perhaps some process that pre-empted the clock or blocked interrupts in general). Dave -- Resistance is futile. You've already been assimilated.