Package: x2gosqlitewrapper
Version: 4.0.1.20-3.4

When a username starts with a number, the session on the client computer will 
not open, after connecting to the server.
The problem lies within x2gosqlitewrapper.pl in the sanitizer function.
This function will return 0 in the  $type eq "x2gosid" case, when the username 
starts with a number.
My workaround is to add a 0-9 in the line number 67 of x2gosqlitewrapper.pl


diff x2gosqlitewrapper.pl x2gosqlitewrapper.pl.original
67c67
<                       if ($string =~ 
/^([a-zA-Z0-9\_][a-zA-Z0-9\_\-\.\@]{0,47}[\$]?)\-([\d]{2,4})\-([\d]{9,12})\_[a-zA-Z0-9\_\-\.]*\_dp[\d]{1,2}$/)
 {
---
                      if ($string =~ 
/^([a-zA-Z\_][a-zA-Z0-9\_\-\.\@]{0,47}[\$]?)\-([\d]{2,4})\-([\d]{9,12})\_[a-zA-Z0-9\_\-\.]*\_dp[\d]{1,2}$/)
 {


elsif ($type eq "x2gosid") {
                $string =~ s/[^a-zA-Z0-9\_\-\$\.\@]//g;
                if ($string =~ /^([a-zA-Z0-9\_\-\$\.\@]*)$/) {
                        $string = $1;
-                        if ($string =~ 
/^([a-zA-Z\_][a-zA-Z0-9\_\-\.\@]{0,47}[\$]?)\-([\d]{2,4})\-([\d]{9,12})\_[a-zA-Z0-9\_\-\.]*\_dp[\d]{1,2}$/)
 {
+                        if ($string =~ 
/^([a-zA-Z0-9\_][a-zA-Z0-9\_\-\.\@]{0,47}[\$]?)\-([\d]{2,4})\-([\d]{9,12})\_[a-zA-Z0-9\_\-\.]*\_dp[\d]{1,2}$/)
 {
                                if ((length($1) > 0) and (length($1) < 48)){
                                        return $string;
                                } else {return 0;}
                        } else {return 0;}
                } else {return 0;}
        }

I  am using a OpenSuSE Leap System with x2goserver Version 4.0.1.20-3.4

Sincerly

Frank Knoben
_______________________________________________
x2go-dev mailing list
[email protected]
http://lists.x2go.org/listinfo/x2go-dev

Reply via email to