From b9a5448f314e05e808f8847fd2845d403a79bfe5 Mon Sep 17 00:00:00 2001 From: Stephen Beaver Date: Mon, 9 Nov 2015 15:21:11 -0500 Subject: Fixed #5404 --- src/usr/local/www/diag_sockets.php | 168 +++++++++++++++++-------------------- 1 file changed, 78 insertions(+), 90 deletions(-) (limited to 'src/usr/local') diff --git a/src/usr/local/www/diag_sockets.php b/src/usr/local/www/diag_sockets.php index 46d63fe..7b70a11 100644 --- a/src/usr/local/www/diag_sockets.php +++ b/src/usr/local/www/diag_sockets.php @@ -3,53 +3,53 @@ diag_sockets.php */ /* ==================================================================== - * Copyright (c) 2004-2015 Electric Sheep Fencing, LLC. All rights reserved. + * Copyright (c) 2004-2015 Electric Sheep Fencing, LLC. All rights reserved. * - * Redistribution and use in source and binary forms, with or without modification, - * are permitted provided that the following conditions are met: + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: * - * 1. Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. + * 1. Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. * - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. * - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgment: - * "This product includes software developed by the pfSense Project - * for use in the pfSense software distribution. (http://www.pfsense.org/). + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgment: + * "This product includes software developed by the pfSense Project + * for use in the pfSense software distribution. (http://www.pfsense.org/). * - * 4. The names "pfSense" and "pfSense Project" must not be used to - * endorse or promote products derived from this software without - * prior written permission. For written permission, please contact - * coreteam@pfsense.org. + * 4. The names "pfSense" and "pfSense Project" must not be used to + * endorse or promote products derived from this software without + * prior written permission. For written permission, please contact + * coreteam@pfsense.org. * - * 5. Products derived from this software may not be called "pfSense" - * nor may "pfSense" appear in their names without prior written - * permission of the Electric Sheep Fencing, LLC. + * 5. Products derived from this software may not be called "pfSense" + * nor may "pfSense" appear in their names without prior written + * permission of the Electric Sheep Fencing, LLC. * - * 6. Redistributions of any form whatsoever must retain the following - * acknowledgment: + * 6. Redistributions of any form whatsoever must retain the following + * acknowledgment: * - * "This product includes software developed by the pfSense Project - * for use in the pfSense software distribution (http://www.pfsense.org/). + * "This product includes software developed by the pfSense Project + * for use in the pfSense software distribution (http://www.pfsense.org/). * - * THIS SOFTWARE IS PROVIDED BY THE pfSense PROJECT ``AS IS'' AND ANY - * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE pfSense PROJECT OR - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, - * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. + * THIS SOFTWARE IS PROVIDED BY THE pfSense PROJECT ``AS IS'' AND ANY + * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE pfSense PROJECT OR + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. * - * ==================================================================== + * ==================================================================== * */ @@ -69,23 +69,14 @@ $pgtitle = array(gettext("Diagnostics"), gettext("Sockets")); include('head.inc'); -?> - - - -
-

System socket information for both IPv4 and IPv6

-
- -(Click here for explanation of the information listed for each socket)

- - + +
+
$table) { $elements = ($tabindex == 0 ? 7 : 7); $name = ($tabindex == 0 ? 'IPv4' : 'IPv6'); ?> +
+

system socket information

+
- - - - - - $line) { - if ($i == 0) - $class = 'info'; - else - $class = ''; - if (trim($line) == "") continue; - print("\n"); $j = 0; foreach (explode(' ', $line) as $entry) { - if ($entry == '' || $entry == "ADDRESS") continue; - if ($i == 0) + if ($entry == '' || $entry == "ADDRESS") + continue; + + if ($i == 0) { print("\n"); - else + } + else { print("\n"); + } $j++; } print("\n"); + if($i == 0) { + print("\n"); + print("\n"); + } } ?>
- -
$entry$entry
+
+
-
- - + +
+
+
' . +gettext('This page shows the output for the commands: "sockstat -4lL" and "sockstat -6lL".' . '
' . + 'Or in case of showing all sockets the output for: "sockstat -4" and "sockstat -6".' . '
' . '
' . +'The information listed for each socket is:' . '

' . +'
' . + '
USER
The user who owns the socket.
' . + '
COMMAND
The command which holds the socket.
' . + '
PID
The process ID of the command which holds the socket.
' . + '
FD
The file descriptor number of the socket.
' . + '
PROTO
The transport protocol associated with the socket for Internet sockets, or the type of socket (stream or data-gram) for UNIX sockets.
' . + '
ADDRESS
(UNIX sockets only) For bound sockets, this is the file-name of the socket. For other sockets, it is the name, PID and file descriptor number of the peer, or "(none)" if the socket is neither bound nor connected.
' . + '
LOCAL ADDRESS
(Internet sockets only) The address the local end of the socket is bound to (see getsockname(2)).
' . + '
FOREIGN ADDRESS
(Internet sockets only) The address the foreign end of the socket is bound to (see getpeername(2)).
' . + '
'), info); +?> +