fixed redirect rule generation; added simple redirect address validation default tip
authorMatthias Förste <foerste@schlittermann.de>
Fri, 05 Oct 2012 14:38:38 +0200
changeset 4 6d58197d7719
parent 3 f501f512f8d3
fixed redirect rule generation; added simple redirect address validation
qf.cgi
--- a/qf.cgi	Fri Oct 05 12:58:38 2012 +0200
+++ b/qf.cgi	Fri Oct 05 14:38:38 2012 +0200
@@ -50,7 +50,7 @@
     my ($address, $keep) = @_;
     error "need address" unless $address;
     $address =~ s/"/\\"/g;
-    return "redirect \"$address\";" . $keep ? "\nkeep;" : '';
+    return "redirect \"$address\";" . ( $keep ? "\nkeep;" : '' );
 
 }
 
@@ -134,8 +134,8 @@
 
 if (defined $p->{add} and $p->{add} ne '') {
 
-    error({ status => 'Bitte geben Sie eine Umleitungsaddresse an.' })
-      unless defined $p->{address} and $p->{address} ne '';
+    error({ status => 'Bitte geben Sie eine gültige Umleitungsaddresse an.' })
+      unless defined $p->{address} and $p->{address} =~ /[^@]+@[^@]+/;
     error "Can't putscript: $@"
       unless $s->putscript($script_name, redirect($p->{address}, $p->{keep}));
     error "Can't setactive: $@" unless $s->setactive($script_name);