From c14573f74d845754aa48d1d5f011db06bf2191e5 Mon Sep 17 00:00:00 2001 From: Sergio Carlos Morales Angeles Date: Sun, 16 Apr 2017 17:48:22 -0500 Subject: Add ability to delete NDP entry (cherry picked from commit 13105d9c79fe3ac8be2b01c152fb9fb6a95147b4) --- src/usr/local/www/diag_ndp.php | 31 +++++++++++++++++++++++++++++-- 1 file changed, 29 insertions(+), 2 deletions(-) (limited to 'src/usr') diff --git a/src/usr/local/www/diag_ndp.php b/src/usr/local/www/diag_ndp.php index cc5fcfd..496823b 100644 --- a/src/usr/local/www/diag_ndp.php +++ b/src/usr/local/www/diag_ndp.php @@ -65,10 +65,28 @@ @ini_set('zlib.output_compression', 0); @ini_set('implicit_flush', 1); - +define('NDP_BINARY_PATH', '/usr/sbin/ndp'); require_once("guiconfig.inc"); -exec("/usr/sbin/ndp -na", $rawdata); +// Delete ndp entry. +if (isset($_POST['deleteentry'])) { + $ip = $_POST['deleteentry']; + if (is_ipaddrv6($ip)) { + $commandReturnValue = mwexec(NDP_BINARY_PATH . " -d " . $ip, true); + $deleteSucceededFlag = ($commandReturnValue == 0); + } else { + $deleteSucceededFlag = false; + } + + $deleteResultMessage = ($deleteSucceededFlag) + ? sprintf(gettext("The NDP entry for %s has been deleted."), $ip) + : sprintf(gettext("%s is not a valid IPv6 address or could not be deleted."), $ip); + $deleteResultMessageType = ($deleteSucceededFlag) + ? 'success' + : 'alert-warning'; +} + +exec(NDP_BINARY_PATH . " -na", $rawdata); $i = 0; @@ -127,6 +145,11 @@ $mac_man = load_mac_manufacturer_table(); $pgtitle = array(gettext("Diagnostics"), gettext("NDP Table")); include("head.inc"); + +// Show message if defined. +if (isset($deleteResultMessage, $deleteResultMessageType)) { + print_info_box(htmlentities($deleteResultMessage), $deleteResultMessageType); +} ?>
@@ -141,6 +164,7 @@ include("head.inc"); + @@ -171,6 +195,9 @@ include("head.inc"); } ?> + + + -- cgit v1.1