diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2013-10-31 13:04:31 +0100 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2013-10-31 13:18:53 +0100 |
commit | e48f5465746724d87bce3b33db10dfb0de7fe3d8 (patch) | |
tree | 9105f7a7f08e4ea823d6cbec4600cbc09718187f /freebsd/sbin/ping | |
parent | PING(8): Delete unused variable (diff) | |
download | rtems-libbsd-e48f5465746724d87bce3b33db10dfb0de7fe3d8.tar.bz2 |
PING(8): Fix initialization and cleanup
Diffstat (limited to 'freebsd/sbin/ping')
-rw-r--r-- | freebsd/sbin/ping/ping.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/freebsd/sbin/ping/ping.c b/freebsd/sbin/ping/ping.c index 0b7b5274..e0ad0836 100644 --- a/freebsd/sbin/ping/ping.c +++ b/freebsd/sbin/ping/ping.c @@ -229,23 +229,39 @@ int rtems_bsd_command_ping(int argc, char *argv[]) rtems_bsd_program_lock(); + memset(&rcvd_tbl[0], 0, sizeof(rcvd_tbl)); + s = -1; + memset(&outpackhdr[0], 0, sizeof(outpackhdr)); icmp_type = ICMP_ECHO; icmp_type_rsp = ICMP_ECHOREPLY; phdr_len = 0; + nmissedmax = 0; + npackets = 0; + nreceived = 0; + nrepeats = 0; + ntransmitted = 0; + snpackets = 0; + sntransmitted = 0; + sweepmax = 0; sweepmin = 0; sweepincr = 1; interval = 1000; waittime = MAXWAIT; nrcvtimeout = 0; + timing = 0; tmin = 999999999.0; tmax = 0.0; tsum = 0.0; tsumsq = 0.0; + finish_up = 0; + siginfo_p = 0; exit_code = rtems_bsd_program_call_main("ping", main, argc, argv); rtems_bsd_program_unlock(); + close(s); + return exit_code; } #endif /* __rtems__ */ |