shell: sc_icmpv6_echo: prepare for stupid users
This commit is contained in:
parent
d5284948f4
commit
ce9b6e1990
@ -118,6 +118,17 @@ int _handle_reply(ng_pktsnip_t *pkt, uint64_t time)
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static inline void _a_to_timex(timex_t *delay, const char *a)
|
||||||
|
{
|
||||||
|
int ms = atoi(a);
|
||||||
|
|
||||||
|
if (ms >= 0) {
|
||||||
|
delay->seconds = 0;
|
||||||
|
delay->microseconds = ms * 1000;
|
||||||
|
timex_normalize(delay);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
int _icmpv6_ping(int argc, char **argv)
|
int _icmpv6_ping(int argc, char **argv)
|
||||||
{
|
{
|
||||||
int count = 3, success = 0, remaining;
|
int count = 3, success = 0, remaining;
|
||||||
@ -165,9 +176,7 @@ int _icmpv6_ping(int argc, char **argv)
|
|||||||
count = 3;
|
count = 3;
|
||||||
addr_str = argv[1];
|
addr_str = argv[1];
|
||||||
payload_len = atoi(argv[2]);
|
payload_len = atoi(argv[2]);
|
||||||
delay.seconds = 0;
|
_a_to_timex(&delay, argv[3]);
|
||||||
delay.microseconds = atoi(argv[3]) * 1000;
|
|
||||||
timex_normalize(&delay);
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@ -176,13 +185,11 @@ int _icmpv6_ping(int argc, char **argv)
|
|||||||
count = atoi(argv[1]);
|
count = atoi(argv[1]);
|
||||||
addr_str = argv[2];
|
addr_str = argv[2];
|
||||||
payload_len = atoi(argv[3]);
|
payload_len = atoi(argv[3]);
|
||||||
delay.seconds = 0;
|
_a_to_timex(&delay, argv[4]);
|
||||||
delay.microseconds = atoi(argv[4]) * 1000;
|
|
||||||
timex_normalize(&delay);
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (ng_ipv6_addr_from_str(&addr, addr_str) == NULL) {
|
if ((ng_ipv6_addr_from_str(&addr, addr_str) == NULL) || (((int)payload_len) < 0)) {
|
||||||
usage(argv);
|
usage(argv);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user