if (isset($a_cp[$cpzone]['enable'])) {
            if (is_ipaddr($ipent['hostname'])) {
                $ip = $ipent['hostname'];
            } else {
                $ip = gethostbyname($ipent['hostname']);
            }
            $sn = is_ipaddrv6($ip) ? 128 : 32;
            if (is_ipaddr($ip)) {
                $ipfw = pfSense_ipfw_getTablestats($cpzoneid, IP_FW_TABLE_XLISTENTRY, 3, $ip);
                if (is_array($ipfw)) {
                    captiveportal_free_dn_ruleno($ipfw['dnpipe']);
                    pfSense_pipe_action("pipe delete {$ipfw['dnpipe']}");
                    pfSense_pipe_action("pipe delete " . ($ipfw['dnpipe'] + 1));
                }
                pfSense_ipfw_Tableaction($cpzoneid, IP_FW_TABLE_XDEL, 3, $ip, $sn);
                pfSense_ipfw_Tableaction($cpzoneid, IP_FW_TABLE_XDEL, 4, $ip, $sn);
            }
        }
        unset($a_allowedhostnames[$_GET['id']]);
        write_config();
        captiveportal_allowedhostname_configure();
        header("Location: services_captiveportal_hostname.php?zone={$cpzone}");
        exit;
    }
}
include "head.inc";
if ($savemsg) {
    print_info_box($savemsg);
}
$tab_array = array();
$tab_array[] = array(gettext("Configuration"), false, "services_captiveportal.php?zone={$cpzone}");
}
$a_cp =& $config['captiveportal'];
if (isset($cpzone) && !empty($cpzone) && isset($a_cp[$cpzone]['zoneid'])) {
    $cpzoneid = $a_cp[$cpzone]['zoneid'];
}
$pgtitle = array(gettext("Services"), gettext("Captive portal"), $a_cp[$cpzone]['zone']);
$shortcut_section = "captiveportal";
if ($_GET['act'] == "del" && !empty($cpzone) && isset($cpzoneid)) {
    $a_allowedips =& $config['captiveportal'][$cpzone]['allowedip'];
    if ($a_allowedips[$_GET['id']]) {
        $ipent = $a_allowedips[$_GET['id']];
        if (isset($config['captiveportal'][$cpzone]['enable'])) {
            $mask = !empty($ipent['sn']) ? $ipent['sn'] : 32;
            $ipfw = pfSense_ipfw_getTablestats($cpzoneid, IP_FW_TABLE_XLISTENTRY, 3, $ipent['ip']);
            pfSense_ipfw_Tableaction($cpzoneid, IP_FW_TABLE_XDEL, 3, $ipent['ip'], $mask);
            pfSense_ipfw_Tableaction($cpzoneid, IP_FW_TABLE_XDEL, 4, $ipent['ip'], $mask);
            if (is_array($ipfw)) {
                captiveportal_free_dn_ruleno($ipfw['dnpipe']);
                pfSense_pipe_action("pipe delete {$ipfw['dnpipe']}");
                pfSense_pipe_action("pipe delete " . ($ipfw['dnpipe'] + 1));
            }
        }
        unset($a_allowedips[$_GET['id']]);
        write_config();
        header("Location: services_captiveportal_ip.php?zone={$cpzone}");
        exit;
    }
}
include "head.inc";
if ($savemsg) {
    print_info_box($savemsg);