return handle;
}
-static int parse_counters(char *string, struct xt_counters *ctr)
-{
- unsigned long long pcnt, bcnt;
- int ret;
-
- ret = sscanf(string, "[%llu:%llu]", &pcnt, &bcnt);
- ctr->pcnt = pcnt;
- ctr->bcnt = bcnt;
- return ret == 2;
-}
-
/* global new argv and argc */
static char *newargv[255];
static int newargc;
return handle;
}
-static int parse_counters(char *string, struct xt_counters *ctr)
-{
- unsigned long long pcnt, bcnt;
- int ret;
-
- ret = sscanf(string, "[%llu:%llu]", &pcnt, &bcnt);
- ctr->pcnt = pcnt;
- ctr->bcnt = bcnt;
- return ret == 2;
-}
-
/* global new argv and argc */
static char *newargv[255];
static int newargc;
exit(1);
}
-static int
-parse_counters(char *string, struct xt_counters *ctr)
-{
- __u64 *pcnt, *bcnt;
-
- if (string != NULL) {
- pcnt = &ctr->pcnt;
- bcnt = &ctr->bcnt;
- return (sscanf
- (string, "[%llu:%llu]",
- (unsigned long long *)pcnt,
- (unsigned long long *)bcnt) == 2);
- } else
- return (0 == 2);
-}
-
/* global new argv and argc */
static char *newargv[255];
static unsigned int newargc;
xtables_error(PARAMETER_PROBLEM, "wait interval not numeric");
}
+int parse_counters(const char *string, struct xt_counters *ctr)
+{
+ int ret;
+
+ if (!string)
+ return 0;
+
+ ret = sscanf(string, "[%llu:%llu]",
+ (unsigned long long *)&ctr->pcnt,
+ (unsigned long long *)&ctr->bcnt);
+
+ return ret == 2;
+}
+
inline bool xs_has_arg(int argc, char *argv[])
{
return optind < argc &&
int parse_wait_time(int argc, char *argv[]);
void parse_wait_interval(int argc, char *argv[], struct timeval *wait_interval);
+int parse_counters(const char *string, struct xt_counters *ctr);
bool xs_has_arg(int argc, char *argv[]);
extern const struct xtables_afinfo *afinfo;
" [ --ipv6 ]\n", name);
}
-static int parse_counters(char *string, struct xt_counters *ctr)
-{
- unsigned long long pcnt, bcnt;
- int ret;
-
- ret = sscanf(string, "[%llu:%llu]", &pcnt, &bcnt);
- ctr->pcnt = pcnt;
- ctr->bcnt = bcnt;
- return ret == 2;
-}
-
/* global new argv and argc */
static char *newargv[255];
static int newargc;