tor.cgi: Catch invalid characters in relay name.
authorMichael Tremer <michael.tremer@ipfire.org>
Fri, 2 Aug 2013 09:06:40 +0000 (11:06 +0200)
committerMichael Tremer <michael.tremer@ipfire.org>
Fri, 2 Aug 2013 09:06:40 +0000 (11:06 +0200)
doc/language_issues.de
doc/language_issues.en
doc/language_missings
html/cgi-bin/tor.cgi
langs/de/cgi-bin/de.pl
langs/en/cgi-bin/en.pl

index bbe5e1de78abdaf21ae7c3d4d7e6880fbeebd9d1..5336bbfd7ee189df938f75320f2b9ef041db06e9 100644 (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
index 12489577b404c2c94ade77687e7cc8690046bbf3..9d59bf593322e98491a646af8476e3eacabaa286 100644 (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
index a9fa8756e1d3463929ebb2da8f7e8d70d5a674e6..195b1df0a3551dc0c9a1a71a215b59b0226961f8 100644 (file)
 < 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
 < 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
 < 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
 < 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
index 0c5477fd60fa7040046b6d0e19df20627ecf37fd..14eac4e728db21be3e70e493bd5d52a4f1618be6 100644 (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.
index a21f75ab3448a3763c84433ee6daef641acc6e35..b9f1a45be7618dc889f91d3601d8667af5d7a954 100644 (file)
 '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',
index b16ecbf845e19613c4f70337b06c4d276a5ac812..aae29af0ff75841794cf3eed7799ff3d5cb299cd 100644 (file)
 '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',