summaryrefslogtreecommitdiffstats
path: root/extensions/libxt_statistic.c
diff options
context:
space:
mode:
Diffstat (limited to 'extensions/libxt_statistic.c')
-rw-r--r--extensions/libxt_statistic.c15
1 files changed, 8 insertions, 7 deletions
diff --git a/extensions/libxt_statistic.c b/extensions/libxt_statistic.c
index b4171b11..bce83fa9 100644
--- a/extensions/libxt_statistic.c
+++ b/extensions/libxt_statistic.c
@@ -15,9 +15,9 @@ static void statistic_help(void)
"statistic match options:\n"
" --mode mode Match mode (random, nth)\n"
" random mode:\n"
-" --probability p Probability\n"
+"[!] --probability p Probability\n"
" nth mode:\n"
-" --every n Match every nth packet\n"
+"[!] --every n Match every nth packet\n"
" --packet p Initial counter value (0 <= p <= n-1, default 0)\n");
}
@@ -125,16 +125,17 @@ static void statistic_check(unsigned int flags)
static void print_match(const struct xt_statistic_info *info, char *prefix)
{
- if (info->flags & XT_STATISTIC_INVERT)
- printf(" !");
-
switch (info->mode) {
case XT_STATISTIC_MODE_RANDOM:
- printf( "%smode random %sprobability %f", prefix, prefix,
+ printf(" %smode random%s %sprobability %f", prefix,
+ (info->flags & XT_STATISTIC_INVERT) ? " !" : "",
+ prefix,
1.0 * info->u.random.probability / 0x80000000);
break;
case XT_STATISTIC_MODE_NTH:
- printf(" %smode nth %severy %u", prefix, prefix,
+ printf(" %smode nth%s %severy %u", prefix,
+ (info->flags & XT_STATISTIC_INVERT) ? " !" : "",
+ prefix,
info->u.nth.every + 1);
if (info->u.nth.packet)
printf(" %spacket %u", prefix, info->u.nth.packet);