summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--index.php10
-rw-r--r--routers/bird.php4
-rw-r--r--routers/cisco.php4
-rw-r--r--routers/juniper.php4
-rw-r--r--routers/quagga.php6
-rw-r--r--utils.php8
6 files changed, 18 insertions, 18 deletions
diff --git a/index.php b/index.php
index 7c7f6a8..78672a4 100644
--- a/index.php
+++ b/index.php
@@ -157,11 +157,11 @@ final class LookingGlass {
if (!isset($this->frontpage['show_visitor_ip']) ||
$this->frontpage['show_visitor_ip']) {
- if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {
- print 'Your IP address: '.htmlentities($_SERVER['HTTP_X_FORWARDED_FOR']).'<br />';
- } else {
- print 'Your IP address: '.htmlentities($_SERVER['REMOTE_ADDR']).'<br />';
- }
+ if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {
+ print 'Your IP address: '.htmlentities($_SERVER['HTTP_X_FORWARDED_FOR']).'<br />';
+ } else {
+ print 'Your IP address: '.htmlentities($_SERVER['REMOTE_ADDR']).'<br />';
+ }
}
if (isset($this->frontpage['disclaimer'])) {
diff --git a/routers/bird.php b/routers/bird.php
index 9b0923f..b964367 100644
--- a/routers/bird.php
+++ b/routers/bird.php
@@ -31,9 +31,9 @@ final class Bird extends Router {
switch ($command) {
case 'bgp':
- if (match_ipv4($parameters)) {
+ if (match_ipv4($parameters, false)) {
$commands[] = $birdc.' \'show route for '.$parameters.'\'';
- } else if (match_ipv6($parameters)) {
+ } else if (match_ipv6($parameters, false)) {
$commands[] = $birdc6.' \'show route for '.$parameters.'\'';
} else {
throw new Exception('The parameter is not an IPv4/IPv6 address.');
diff --git a/routers/cisco.php b/routers/cisco.php
index bebec78..fa010e1 100644
--- a/routers/cisco.php
+++ b/routers/cisco.php
@@ -28,9 +28,9 @@ final class Cisco extends Router {
switch ($command) {
case 'bgp':
- if (match_ipv4($parameters)) {
+ if (match_ipv4($parameters, false)) {
$commands[] = 'show bgp ipv4 unicast '.$parameters;
- } else if (match_ipv6($parameters)) {
+ } else if (match_ipv6($parameters, false)) {
$commands[] = 'show bgp ipv6 unicast '.$parameters;
} else {
throw new Exception('The parameter is not an IPv4/IPv6 address.');
diff --git a/routers/juniper.php b/routers/juniper.php
index 32330e4..30d783b 100644
--- a/routers/juniper.php
+++ b/routers/juniper.php
@@ -28,10 +28,10 @@ final class Juniper extends Router {
switch ($command) {
case 'bgp':
- if (match_ipv4($parameters)) {
+ if (match_ipv4($parameters, false)) {
$commands[] = 'show route '.$parameters.
' protocol bgp table inet.0 active-path';
- } else if (match_ipv6($parameters)) {
+ } else if (match_ipv6($parameters, false)) {
$commands[] = 'show route '.$parameters.
' protocol bgp table inet6.0 active-path';
} else {
diff --git a/routers/quagga.php b/routers/quagga.php
index a9fe99b..c905a5e 100644
--- a/routers/quagga.php
+++ b/routers/quagga.php
@@ -30,9 +30,9 @@ final class Quagga extends Router {
switch ($command) {
case 'bgp':
- if (match_ipv4($parameters)) {
+ if (match_ipv4($parameters, false)) {
$commands[] = $vtysh.'show bgp ipv4 unicast '.$parameters.'"';
- } else if (match_ipv6($parameters)) {
+ } else if (match_ipv6($parameters, false)) {
$commands[] = $vtysh.'show bgp ipv6 unicast '.$parameters.'"';
} else {
throw new Exception('The parameter is not an IPv4/IPv6 address.');
@@ -85,4 +85,4 @@ final class Quagga extends Router {
}
}
-// End of cisco.php
+// End of quagga.php
diff --git a/utils.php b/utils.php
index 99a6a06..b6fc061 100644
--- a/utils.php
+++ b/utils.php
@@ -21,8 +21,8 @@
require_once 'config.php';
-function match_ipv4($ip) {
- if (strrpos($ip, '/')) {
+function match_ipv4($ip, $ip_only = true) {
+ if (strrpos($ip, '/') && !$ip_only) {
$ip_and_mask = explode('/', $ip, 2);
return filter_var($ip_and_mask[0], FILTER_VALIDATE_IP, FILTER_FLAG_IPV4) &&
@@ -32,8 +32,8 @@ function match_ipv4($ip) {
}
}
-function match_ipv6($ip) {
- if (strrpos($ip, '/')) {
+function match_ipv6($ip, $ip_only = true) {
+ if (strrpos($ip, '/') && !$ip_only) {
$ip_and_mask = explode('/', $ip, 2);
return filter_var($ip_and_mask[0], FILTER_VALIDATE_IP, FILTER_FLAG_IPV6) &&