Lines 35-41
Link Here
|
35 |
OPT_RAND_DEST, OPT_RAND_SOURCE, OPT_LSRR, OPT_SSRR, OPT_ROUTE_HELP, |
35 |
OPT_RAND_DEST, OPT_RAND_SOURCE, OPT_LSRR, OPT_SSRR, OPT_ROUTE_HELP, |
36 |
OPT_ICMP_IPSRC, OPT_ICMP_IPDST, OPT_ICMP_SRCPORT, OPT_ICMP_DSTPORT, |
36 |
OPT_ICMP_IPSRC, OPT_ICMP_IPDST, OPT_ICMP_SRCPORT, OPT_ICMP_DSTPORT, |
37 |
OPT_ICMP_GW, OPT_FORCE_ICMP, OPT_APD_SEND, OPT_SCAN, OPT_FASTER, |
37 |
OPT_ICMP_GW, OPT_FORCE_ICMP, OPT_APD_SEND, OPT_SCAN, OPT_FASTER, |
38 |
OPT_BEEP, OPT_FLOOD }; |
38 |
OPT_BEEP, OPT_FLOOD, OPT_TTL_COUNT }; |
39 |
|
39 |
|
40 |
static struct ago_optlist hping_optlist[] = { |
40 |
static struct ago_optlist hping_optlist[] = { |
41 |
{ 'c', "count", OPT_COUNT, AGO_NEEDARG }, |
41 |
{ 'c', "count", OPT_COUNT, AGO_NEEDARG }, |
Lines 124-129
Link Here
|
124 |
{ '\0', "force-icmp", OPT_FORCE_ICMP, AGO_NOARG }, |
124 |
{ '\0', "force-icmp", OPT_FORCE_ICMP, AGO_NOARG }, |
125 |
{ '\0', "beep", OPT_BEEP, AGO_NOARG }, |
125 |
{ '\0', "beep", OPT_BEEP, AGO_NOARG }, |
126 |
{ '\0', "flood", OPT_FLOOD, AGO_NOARG }, |
126 |
{ '\0', "flood", OPT_FLOOD, AGO_NOARG }, |
|
|
127 |
{ '\0', "tr-try-per-ttl", OPT_TTL_COUNT, AGO_NEEDARG }, |
127 |
AGO_LIST_TERM |
128 |
AGO_LIST_TERM |
128 |
}; |
129 |
}; |
129 |
|
130 |
|
Lines 552-557
Link Here
|
552 |
case OPT_FLOOD: |
553 |
case OPT_FLOOD: |
553 |
opt_flood = TRUE; |
554 |
opt_flood = TRUE; |
554 |
break; |
555 |
break; |
|
|
556 |
case OPT_TTL_COUNT: |
557 |
ttl_count = strtol(ago_optarg, NULL, 0); |
558 |
break; |
555 |
} |
559 |
} |
556 |
} |
560 |
} |
557 |
|
561 |
|
Lines 628-633
Link Here
|
628 |
"when the --rand-dest option is enabled\n"); |
632 |
"when the --rand-dest option is enabled\n"); |
629 |
exit(1); |
633 |
exit(1); |
630 |
} |
634 |
} |
|
|
635 |
else if (ttl_count <= 0 && ttl_count != -1) { |
636 |
printf("Option error: ttl_count must > 0\n"); |
637 |
exit(1); |
638 |
} |
631 |
|
639 |
|
632 |
/* dependences */ |
640 |
/* dependences */ |
633 |
if (opt_safe == TRUE) |
641 |
if (opt_safe == TRUE) |