]> git.ipfire.org Git - ipfire-2.x.git/commitdiff
vpnmain.cgi: Allow passing strings with double @@ as IDs
authorMichael Tremer <michael.tremer@ipfire.org>
Thu, 13 Jun 2024 17:09:36 +0000 (17:09 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Tue, 2 Jul 2024 09:09:37 +0000 (09:09 +0000)
This is required to configure a user FQDN which some VPN peers might
send.

This patch also allows setting a key ID using @#.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
html/cgi-bin/vpnmain.cgi

index 9173a85d847f5e17e1b0389144a00fd95c3e7e6c..25e0f0a53535d380d671bbe694f3c23aca59ce2f 100644 (file)
@@ -1856,8 +1856,8 @@ END
 
                # Allow nothing or a string (DN,FDQN,) beginning with @
                # with no comma but slashes between RID eg @O=FR/C=Paris/OU=myhome/CN=franck
-               if ( ($cgiparams{'LOCAL_ID'} !~ /^(|[\w.-]*@[\w. =*\/-]+|\d+\.\d+\.\d+\.\d+)$/) ||
-                       ($cgiparams{'REMOTE_ID'} !~ /^(|[\w.-]*@[\w. =*\/-]+|\d+\.\d+\.\d+\.\d+)$/) ||
+               if ( ($cgiparams{'LOCAL_ID'} !~ /^(|[\w.-]*@[@#]?[\w. =*\/-]+|\d+\.\d+\.\d+\.\d+)$/) ||
+                       ($cgiparams{'REMOTE_ID'} !~ /^(|[\w.-]*@[@#]?[\w. =*\/-]+|\d+\.\d+\.\d+\.\d+)$/) ||
                        (($cgiparams{'REMOTE_ID'} eq $cgiparams{'LOCAL_ID'}) && ($cgiparams{'LOCAL_ID'} ne ''))
                ) {
                        $errormessage = $Lang::tr{'invalid local-remote id'} . '<br />' .