Can't find string terminator "!" anywhere before EOF at queue.cgi line 42
[freeside.git] / FS / FS / svc_acct.pm
index 2390de0..8e29cb7 100644 (file)
@@ -716,13 +716,14 @@ sub check {
 #    $error = $self->ut_textn('finger');
 #    return $error if $error;
     $self->getfield('finger') =~
-      /^([\w \t\!\@\#\$\%\&\(\)\-\+\;\:\'\"\,\.\?\/\*]*)$/
+      /^([\w \t\!\@\#\$\%\&\(\)\-\+\;\:\'\"\,\.\?\/\*\<\>]*)$/
         or return "Illegal finger: ". $self->getfield('finger');
     $self->setfield('finger', $1);
 
-    $recref->{dir} =~ /^([\/\w\-]*)$/
+    $recref->{dir} =~ /^([\/\w\-\.]*)$/
       or return "Illegal directory";
     $recref->{dir} = $1;
+    return "Illegal directory" if $recref->{dir} =~ /\.\./; #no ..
     unless ( $recref->{dir} ) {
       $recref->{dir} = $dir_prefix . '/';
       if ( $dirhash > 0 ) {
@@ -920,7 +921,7 @@ sub ssh {
 
 =head1 VERSION
 
-$Id: svc_acct.pm,v 1.49 2001-09-30 22:35:34 ivan Exp $
+$Id: svc_acct.pm,v 1.51 2001-10-22 14:48:28 ivan Exp $
 
 =head1 BUGS