tor.cgi: Catch invalid characters in relay name.

This commit is contained in:
Michael Tremer
2013-08-02 11:06:40 +02:00
parent 3308f8d09f
commit b0449403e6
6 changed files with 17 additions and 6 deletions

View File

@@ -409,6 +409,7 @@ WARNING: translation string unused: too long 80 char max
WARNING: translation string unused: tor accounting period daily
WARNING: translation string unused: tor accounting period monthly
WARNING: translation string unused: tor accounting period weekly
WARNING: translation string unused: tor errmsg invalid relay name
WARNING: translation string unused: tor exit country
WARNING: translation string unused: traffic back
WARNING: translation string unused: traffic calc time

View File

@@ -442,6 +442,7 @@ WARNING: translation string unused: tor accounting period monthly
WARNING: translation string unused: tor accounting period weekly
WARNING: translation string unused: tor bridge enabled
WARNING: translation string unused: tor errmsg invalid node id
WARNING: translation string unused: tor errmsg invalid relay name
WARNING: translation string unused: tor exit country
WARNING: translation string unused: traffic back
WARNING: translation string unused: traffic calc time

View File

@@ -139,6 +139,7 @@
< tor do not advertise relay
< tor enabled
< tor errmsg invalid ip or mask
< tor errmsg invalid relay name
< tor exit country
< tor exit country any
< tor exit nodes
@@ -370,6 +371,7 @@
< tor do not advertise relay
< tor enabled
< tor errmsg invalid ip or mask
< tor errmsg invalid relay name
< tor exit country
< tor exit country any
< tor exit nodes
@@ -553,6 +555,7 @@
< tor do not advertise relay
< tor enabled
< tor errmsg invalid ip or mask
< tor errmsg invalid relay name
< tor exit country
< tor exit country any
< tor exit nodes
@@ -741,6 +744,7 @@
< tor do not advertise relay
< tor enabled
< tor errmsg invalid ip or mask
< tor errmsg invalid relay name
< tor exit country
< tor exit country any
< tor exit nodes

View File

@@ -74,6 +74,8 @@ if (&Header::blue_used()) {
$settings{'TOR_RELAY_ENABLED'} = 'off';
$settings{'TOR_RELAY_MODE'} = 'exit';
$settings{'TOR_RELAY_PORT'} = 9001;
$settings{'TOR_RELAY_NICKNAME'} = '';
$settings{'TOR_RELAY_CONTACT_INFO'} = '';
$settings{'TOR_RELAY_NOADVERTISE'} = 'off';
$settings{'TOR_RELAY_BANDWIDTH_RATE'} = 0;
$settings{'TOR_RELAY_BANDWIDTH_BURST'} = 0;
@@ -95,6 +97,10 @@ our $torctrl = &TorConnect();
# Toggle enable/disable field.
if ($settings{'ACTION'} eq $Lang::tr{'save'}) {
if ($settings{'TOR_RELAY_NICKNAME'} !~ /^[a-zA-Z0-9]+$/) {
$errormessage = "$Lang::tr{'tor errmsg invalid relay name'}: $settings{'TOR_RELAY_NICKNAME'}";
}
my @temp = split(/[\n,]/,$settings{'TOR_ALLOWED_SUBNETS'});
$settings{'TOR_ALLOWED_SUBNETS'} = "";
foreach (@temp) {
@@ -131,14 +137,11 @@ if ($settings{'ACTION'} eq $Lang::tr{'save'}) {
# Update configuration files.
&BuildConfiguration();
}
# Reset ACTION.
$settings{'ACTION'} = '';
} else {
# Load settings from file.
&General::readhash("${General::swroot}/tor/settings", \%settings);
}
# Load settings from file.
&General::readhash("${General::swroot}/tor/settings", \%settings);
&showMainBox();
# Close Tor control connection.

View File

@@ -1820,6 +1820,7 @@
'tor do not advertise relay' => 'Relay nicht announcieren',
'tor enabled' => 'Tor einschalten',
'tor errmsg invalid ip or mask' => 'Ungültiges IP-Subnetz',
'tor errmsg invalid relay name' => 'Ungültiger Relay-Nickname.',
'tor exit country' => 'Exit-Land',
'tor exit country any' => 'Beliebig',
'tor exit nodes' => 'Exit-Nodes',

View File

@@ -1856,6 +1856,7 @@
'tor enabled' => 'Enable Tor',
'tor errmsg invalid ip or mask' => 'Invalid IP subnet',
'tor errmsg invalid node id' => 'Invalid node ID',
'tor errmsg invalid relay name' => 'Invalid relay nickname',
'tor exit country' => 'Exit country',
'tor exit country any' => 'Any country',
'tor exit nodes' => 'Exit Nodes',