From 895e30d1bf3958ab356b66f11ff389ddef7a7e38 Mon Sep 17 00:00:00 2001 From: Franco Fichtner Date: Thu, 2 Feb 2017 17:49:48 +0100 Subject: [PATCH] filter: direction 'any' wasn't respected in floating rule --- src/etc/inc/filter.inc | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/etc/inc/filter.inc b/src/etc/inc/filter.inc index ae6f596a4..2056d1752 100644 --- a/src/etc/inc/filter.inc +++ b/src/etc/inc/filter.inc @@ -2297,11 +2297,15 @@ function filter_generate_user_rule(&$FilterIflist, $rule) } else { $aline['type'] = $type . " "; } - if (isset($rule['floating']) && $rule['floating'] == "yes" && $rule['direction'] != "any") { - $aline['direction'] = " " . $rule['direction'] . " "; + if (isset($rule['floating']) && $rule['floating'] == 'yes') { + if ($rule['direction'] != 'any') { + $aline['direction'] = " {$rule['direction']} "; + } elseif ($$rule['direction'] == 'any') { + $aline['direction'] = ''; + } } else { - /* ensure the direction is in */ - $aline['direction'] = " in "; + /* ensure the direction is 'in' */ + $aline['direction'] = ' in '; } if (isset($rule['log'])) { $aline['log'] = "log ";