Explorar o código

add ipv6 support

Bad Apple!! %!s(int64=4) %!d(string=hai) anos
pai
achega
f25cea2d43
Modificáronse 2 ficheiros con 13 adicións e 5 borrados
  1. 12 4
      backend/report.php
  2. 1 1
      index.html

+ 12 - 4
backend/report.php

@@ -3,16 +3,24 @@
 require_once "./SleekDB/SleekDB.php";
 require_once "./config.php";
 
+function maskLastSegment($ip) {
+    $ipaddr = inet_pton($ip);
+    if (strlen($ipaddr) == 4) {
+        $ipaddr[3] = chr(0);
+    } else {
+        $ipaddr[14] = chr(0);
+        $ipaddr[15] = chr(0);
+    }
+    return rtrim(inet_ntop($ipaddr),"0")."*";
+}
+
 $store = \SleekDB\SleekDB::store('speedlogs', './',[
     'auto_cache' => false,
     'timeout' => 120
 ]);
 
-$ip = filter_var($_POST['ip'], FILTER_SANITIZE_STRING);
-$ipMask = preg_replace('/((?:\d{1,3}\.){3})\d{1,3}/','$1*', $ip);
-
 $reportData = [
-    "ip" => $ipMask,
+    "ip" => maskLastSegment(filter_var($_POST['ip'], FILTER_SANITIZE_STRING)),
     "isp" => filter_var($_POST['isp'], FILTER_SANITIZE_STRING),
     "addr" => filter_var($_POST['addr'], FILTER_SANITIZE_STRING),
     "dspeed" => (double) filter_var($_POST['dspeed'], FILTER_SANITIZE_STRING),

+ 1 - 1
index.html

@@ -211,7 +211,7 @@ function I(id){return document.getElementById(id);}
 	</div>
 	<div class="testGroup">
 		<div class="testArea">
-			<div class="testName">Ping</div>
+			<div class="testName">延迟</div>
 			<div id="pingText" class="meterText"></div>
 			<div class="unit">ms</div>
 		</div>