Commit d67d70ba authored by Ad Schellevis's avatar Ad Schellevis

(legacy) refactor status_upnp.php

parent 0c0d3a3c
<?php <?php
/* /*
Copyright (C) 2014-2015 Deciso B.V. Copyright (C) 2014-2016 Deciso B.V.
Copyright (C) 2010 Seth Mos <seth.mos@dds.nl>. Copyright (C) 2010 Seth Mos <seth.mos@dds.nl>.
All rights reserved. All rights reserved.
...@@ -31,95 +31,86 @@ require_once("guiconfig.inc"); ...@@ -31,95 +31,86 @@ require_once("guiconfig.inc");
require_once("services.inc"); require_once("services.inc");
require_once("interfaces.inc"); require_once("interfaces.inc");
if ($_POST) { if ($_SERVER['REQUEST_METHOD'] === 'POST') {
if ($_POST['clear'] == "Clear") { if (!empty($_POST['clear'])) {
upnp_stop(); upnp_stop();
upnp_start(); upnp_start();
$savemsg = gettext("Rules have been cleared and the daemon restarted"); header("Location: status_upnp.php");
exit;
} }
} }
$rdr_entries = array(); $rdr_entries = array();
exec("/sbin/pfctl -aminiupnpd -sn", $rdr_entries, $pf_ret); exec("/sbin/pfctl -aminiupnpd -sn", $rdr_entries, $pf_ret);
$now = time();
$year = date("Y");
$service_hook = 'miniupnpd'; $service_hook = 'miniupnpd';
include("head.inc"); include("head.inc");
?> ?>
<body> <body>
<?php include("fbegin.inc"); ?> <?php include("fbegin.inc"); ?>
<section class="page-content-main"> <section class="page-content-main">
<div class="container-fluid"> <div class="container-fluid">
<div class="row"> <div class="row">
<?php if (isset($savemsg)) print_info_box($savemsg); ?>
<section class="col-xs-12"> <section class="col-xs-12">
<div class="content-box"> <div class="content-box">
<?php
<?php if(!$config['installedpackages'] || !$config['installedpackages']['miniupnpd']['config'][0]['iface_array'] || !$config['installedpackages']['miniupnpd']['config'][0]['enable']): ?> if (empty($config['installedpackages']['miniupnpd']['config'][0]['iface_array']) || empty($config['installedpackages']['miniupnpd']['config'][0]['enable'])): ?>
<header class="content-box-head container-fluid"> <header class="content-box-head container-fluid">
<h3><?php echo gettext("UPnP is currently disabled."); ?></h3> <h3><?php echo gettext("UPnP is currently disabled."); ?></h3>
</header> </header>
<?php
<?php else: ?> else: ?>
<div class="table-responsive"> <div class="table-responsive">
<table class="table table-striped">
<table class="table table-striped table-sort sortable"> <thead>
<tr> <tr>
<td width="10%" class="listhdrr"><?=gettext("Port");?></td> <td><?=gettext("Port");?></td>
<td width="10%" class="listhdrr"><?=gettext("Protocol");?></td> <td><?=gettext("Protocol");?></td>
<td width="20%" class="listhdrr"><?=gettext("Internal IP");?></td> <td><?=gettext("Internal IP");?></td>
<td width="10%" class="listhdrr"><?=gettext("Int. Port");?></td> <td><?=gettext("Int. Port");?></td>
<td width="50%" class="listhdr"><?=gettext("Description");?></td> <td><?=gettext("Description");?></td>
</tr> </tr>
<?php $i = 0; foreach ($rdr_entries as $rdr_entry) { </thead>
if (preg_match("/on (.*) inet proto (.*) from any to any port = (.*) keep state label \"(.*)\" rtable [0-9] -> (.*) port (.*)/", $rdr_entry, $matches)) <tbody>
<?php
foreach ($rdr_entries as $rdr_entry):
if (!preg_match("/on (.*) inet proto (.*) from (.*) to (.*) port = (.*) keep state label \"(.*)\" rtable [0-9] -> (.*) port (.*)/", $rdr_entry, $matches)) {
continue;
}
$rdr_proto = $matches[2]; $rdr_proto = $matches[2];
$rdr_port = $matches[3]; $rdr_port = $matches[5];
$rdr_label =$matches[4]; $rdr_label =$matches[6];
$rdr_ip = $matches[5]; $rdr_ip = $matches[7];
$rdr_iport = $matches[6]; $rdr_iport = $matches[8];
?> ?>
<tr> <tr>
<td class="listlr"> <td><?=$rdr_port;?></td>
<?php print $rdr_port;?> <td><?=$rdr_proto;?></td>
</td> <td><?=$rdr_ip;?></td>
<td class="listlr"> <td><?=$rdr_iport;?></td>
<?php print $rdr_proto;?> <td><?=$rdr_label;?></td>
</td> </tr>
<td class="listlr"> <?php
<?php print $rdr_ip;?> endforeach;?>
</td> </tbody>
<td class="listlr"> <tfoot>
<?php print $rdr_iport;?> <tr>
</td> <td colspan="5">
<td class="listlr"> <form method="post">
<?php print $rdr_label;?> <button type="submit" name="clear" id="clear" class="btn btn-primary" value="Clear"><?=gettext("Clear");?></button>
<?=gettext("all currently connected sessions");?>.
</form>
</td> </td>
</tr> </tr>
<?php $i++; }?> </tfoot>
</table> </table>
</div> </div>
<?php
<form action="status_upnp.php" method="post"> endif; ?>
<button type="submit" name="clear" id="clear" class="btn btn-primary" value="Clear"><?=gettext("Clear");?></button> <?=gettext("all currently connected sessions");?>.
</form>
<?php endif; ?>
</div> </div>
</section> </section>
</div> </div>
</div> </div>
</section> </section>
<?php include("foot.inc"); ?> <?php include("foot.inc"); ?>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment