aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVsevolod Stakhov <vsevolod@highsecure.ru>2016-06-15 09:26:38 +0100
committerVsevolod Stakhov <vsevolod@highsecure.ru>2016-06-15 09:26:38 +0100
commite3866554181f3afc44afcd3cbd24fc2d4aac7f2d (patch)
tree176b4fcee18df095e3d5445b29aa4b064780c523
parent9aad3e020ba34916fd680fc157923d5d6906e1a2 (diff)
downloadrspamd-e3866554181f3afc44afcd3cbd24fc2d4aac7f2d.tar.gz
rspamd-e3866554181f3afc44afcd3cbd24fc2d4aac7f2d.zip
[Fix] Fix parser
-rw-r--r--src/ragel/smtp_date.rl2
-rw-r--r--utils/received_parser_bench.c12
2 files changed, 11 insertions, 3 deletions
diff --git a/src/ragel/smtp_date.rl b/src/ragel/smtp_date.rl
index da5872439..eb5d0cdc5 100644
--- a/src/ragel/smtp_date.rl
+++ b/src/ragel/smtp_date.rl
@@ -21,7 +21,7 @@
minute = digit_2;
second = digit_2;
time_of_day = hour ":" minute (":" second )?;
- zone = FWS ("+" | "-") >Sign_Start %Sign_End digit_4;
+ zone = FWS ("+" | "-") digit_4;
time = time_of_day zone;
date_time = (day_of_week ",")? date time;
}%% \ No newline at end of file
diff --git a/utils/received_parser_bench.c b/utils/received_parser_bench.c
index 18c48ee10..4f6a073fd 100644
--- a/utils/received_parser_bench.c
+++ b/utils/received_parser_bench.c
@@ -25,6 +25,7 @@ static gint total_valid = 0;
static gint total_real_ip = 0;
static gint total_real_host = 0;
static gint total_known_proto = 0;
+static gint total_known_ts = 0;
static void
rspamd_process_file (const gchar *fname)
@@ -77,6 +78,10 @@ rspamd_process_file (const gchar *fname)
if (rh.by_hostname) {
total_valid ++;
}
+
+ if (rh.timestamp != 0) {
+ total_known_ts ++;
+ }
}
if (err) {
@@ -105,9 +110,12 @@ main (int argc, char **argv)
"Total valid (has by part): %d\n"
"Total real ip: %d\n"
"Total real host: %d\n"
- "Total known proto: %d\n",
+ "Total known proto: %d\n"
+ "Total known timestamp: %d\n",
total_parsed, total_time,
- total_valid, total_real_ip, total_real_host, total_known_proto);
+ total_valid, total_real_ip,
+ total_real_host, total_known_proto,
+ total_known_ts);
return 0;
}