From 85250056e0554f572cfeca746f58ed5dc40c63cc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ermal=20Lu=E7i?= Date: Wed, 12 Aug 2009 12:40:13 +0000 Subject: Fix some logic on enabling or disabling ipfw filtering on interfaces. --- etc/inc/captiveportal.inc | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'etc/inc') diff --git a/etc/inc/captiveportal.inc b/etc/inc/captiveportal.inc index 256e395..452698b 100644 --- a/etc/inc/captiveportal.inc +++ b/etc/inc/captiveportal.inc @@ -58,6 +58,7 @@ function captiveportal_configure() { continue; $tmpif = get_real_interface($cpifgrp); if (!empty($tmpif)) { + mwexec("/sbin/ifconfig {$tmpif} -ipfwfilter"); if ($firsttime > 0) $cpinterface .= " or "; $cpinterface .= "via {$tmpif}"; @@ -66,8 +67,7 @@ function captiveportal_configure() { if (is_ipaddr($cpipm)) { $cpips[] = $cpipm; mwexec("/sbin/ifconfig {$tmpif} ipfwfilter"); - } else - mwexec("/sbin/ifconfig {$tmpif} -ipfwfilter"); + } } } if (count($cpips) > 0) { @@ -300,6 +300,9 @@ EOD; /* unload ipfw */ mwexec("/sbin/kldunload ipfw.ko"); + $listifs = get_configured_interface_list_by_realif(); + foreach ($listifs as $listrealif => $listif) + mwexec("/sbin/ifconfig {$listrealif} -ipfwfilter"); } unlock($captiveportallck); -- cgit v1.1