Browse code

Add IP-address patterns

git-svn-id: https://svn.schokokeks.org/repos/tools/webinterface/trunk@1140 87cf0b9e-d624-0410-a070-f6ee81989793

bernd authored on15/08/2008 20:07:57
Showing1 changed files
... ...
@@ -58,8 +58,8 @@ function filter_input_username( $input )
58 58
 function verify_input_username( $input )
59 59
 {
60 60
   if (filter_input_username( $input ) != $input) {
61
-    system_failure("Ihre Daten enthielten ungültige Zeichen!");
62 61
     logger('inc/security', 'verify_input_username', 'Ungültige Daten: '.$input);
62
+    system_failure("Ihre Daten enthielten ungültige Zeichen!");
63 63
   }
64 64
 }
65 65
 
... ...
@@ -77,6 +77,28 @@ function filter_input_hostname( $input )
77 77
   return $input;
78 78
 }
79 79
 
80
+function verify_input_hostname( $input )
81
+{
82
+  if (filter_input_hostname( $input ) != $input) {
83
+    logger('inc/security', 'verify_input_hostname', 'Ungültige Daten: '.$input);
84
+    system_failure("Ihre Daten enthielten ungültige Zeichen!");
85
+  }
86
+}
87
+
88
+
89
+function verify_input_ipv4( $input )
90
+{
91
+  if (! preg_match("/^([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(\.([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])){3}$/", $input))
92
+    system_failure('Keine IP-Adresse');
93
+}
94
+
95
+
96
+function verify_input_ipv6( $input )
97
+{
98
+  // ripped from Perl module Net-IPv6Addr v0.2
99
+  if (! preg_match("/^(([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}|[0-9a-f]{0,4}::|:(?::[a-f0-9]{1,4}){1,6}|(?:[a-f0-9]{1,4}:){1,6}:|(?:[a-f0-9]{1,4}:)(?::[a-f0-9]{1,4}){1,6}|(?:[a-f0-9]{1,4}:){2}(?::[a-f0-9]{1,4}){1,5}|(?:[a-f0-9]{1,4}:){3}(?::[a-f0-9]{1,4}){1,4}|(?:[a-f0-9]{1,4}:){4}(?::[a-f0-9]{1,4}){1,3}|(?:[a-f0-9]{1,4}:){5}(?::[a-f0-9]{1,4}){1,2}|(?:[a-f0-9]{1,4}:){6}(?::[a-f0-9]{1,4}))$/i", $input))
100
+    system_failure("Ungültige IPv6-Adresse");
101
+}
80 102
 
81 103
 
82 104
 function filter_quotes( $input )