patch #1972915 version 3 + Luc modifs + Marc modifs (link in contrib/swekey.sample.conf
This commit is contained in:
@@ -1,9 +0,0 @@
|
|||||||
# This is a typical file used to enable Feebee hardware authentication.
|
|
||||||
# Each line must contain the Feebee Id and the user associated with it
|
|
||||||
# Hardware authentication is enabled only if the file 'feebees.conf' exists.
|
|
||||||
# To get the id of your feebee just go on the http://auth-sample.musbe.com while
|
|
||||||
# your feebee is connected
|
|
||||||
|
|
||||||
0000000000000000000000000000763A:root
|
|
||||||
000000000000000000000000000089E4:steve
|
|
||||||
0000000000000000000000000000231E:scott
|
|
24
contrib/swekey.sample.conf
Normal file
24
contrib/swekey.sample.conf
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
# This is a typical file used to enable Swekey hardware authentication.
|
||||||
|
#
|
||||||
|
# To activate the Swekey authentication add the following line in your config.inc.php file.
|
||||||
|
# $cfg['Servers'][$i]['auth_swekey_config'] = './swekey.conf';
|
||||||
|
# Then rename this file "swekey.conf" and copy it next to your config.inc.php file.
|
||||||
|
# Add all the Swekey ids you want to grant access to in the file.
|
||||||
|
# After each Swekey id put the corresponding user.
|
||||||
|
#
|
||||||
|
# If you don't know the id of a Swekey just go on the http://auth-sample.musbe.com
|
||||||
|
# page while your Swekey is connected.
|
||||||
|
#
|
||||||
|
# If you need to purchase a Swekey please visit http://phpmyadmin.net/auth_key
|
||||||
|
# since this link provides funding to PhpMyAdmin.
|
||||||
|
#
|
||||||
|
|
||||||
|
0000000000000000000000000000763A:root
|
||||||
|
000000000000000000000000000089E4:steve
|
||||||
|
0000000000000000000000000000231E:scott
|
||||||
|
|
||||||
|
# You can also uncomment the following lines if you want to use custom authentication servers
|
||||||
|
|
||||||
|
#SERVER_CHECK=http://auth-check.musbe.net
|
||||||
|
#SERVER_RNDTOKEN=http://auth-rnd-gen.musbe.net
|
||||||
|
#SERVER_STATUS=http://auth-status.musbe.net
|
@@ -1075,8 +1075,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1074,8 +1074,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1076,8 +1076,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1071,8 +1071,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1050,8 +1050,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1068,8 +1068,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1051,8 +1051,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1050,8 +1050,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1074,8 +1074,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1048,8 +1048,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1071,8 +1071,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1046,8 +1046,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1076,8 +1076,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1055,8 +1055,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1049,8 +1049,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1050,8 +1050,8 @@ $strZip = '„zazipováno“';
|
|||||||
|
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1050,8 +1050,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1072,8 +1072,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -288,10 +288,10 @@ $strExtendedInserts = 'Extended inserts';
|
|||||||
$strExtra = 'Extra';
|
$strExtra = 'Extra';
|
||||||
|
|
||||||
$strFailedAttempts = 'Failed attempts';
|
$strFailedAttempts = 'Failed attempts';
|
||||||
$strFeebeeAuthenticating = 'Authenticating...';
|
$strSwekeyAuthenticating = 'Authenticating...';
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed';
|
$strSwekeyAuthFailed = 'Hardware authentication failed';
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id';
|
$strSwekeyNoKeyId = 'File %s does not contain any key id';
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged';
|
$strSwekeyNoKey = 'No valid authentication key plugged';
|
||||||
$strField = 'Field';
|
$strField = 'Field';
|
||||||
$strFieldHasBeenDropped = 'Field %s has been dropped';
|
$strFieldHasBeenDropped = 'Field %s has been dropped';
|
||||||
$strFieldInsertFromFileTempDirNotExists = 'Error moving the uploaded file, see FAQ 1.11';
|
$strFieldInsertFromFileTempDirNotExists = 'Error moving the uploaded file, see FAQ 1.11';
|
||||||
|
@@ -1056,8 +1056,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1050,8 +1050,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1047,8 +1047,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1049,8 +1049,8 @@ $strZip = 'comprimido no formato "zip"';
|
|||||||
|
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1076,8 +1076,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1056,8 +1056,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1073,8 +1073,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1068,8 +1068,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1076,8 +1076,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1067,8 +1067,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1066,8 +1066,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1051,8 +1051,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1067,8 +1067,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1071,8 +1071,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1073,8 +1073,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1066,8 +1066,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1051,8 +1051,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1088,8 +1088,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1071,8 +1071,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1048,8 +1048,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1073,8 +1073,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1044,8 +1044,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1077,8 +1077,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1065,8 +1065,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1052,8 +1052,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1050,8 +1050,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1050,8 +1050,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1053,8 +1053,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1051,8 +1051,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1070,8 +1070,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1046,8 +1046,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1049,8 +1049,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1062,8 +1062,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1072,8 +1072,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1056,8 +1056,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -1070,8 +1070,8 @@ $strViewHasAtLeast = 'This view has at least this number of rows. Please refer t
|
|||||||
$strUserDefined = 'User-defined'; //to translate
|
$strUserDefined = 'User-defined'; //to translate
|
||||||
$strRelationalKey = 'Relational key'; //to translate
|
$strRelationalKey = 'Relational key'; //to translate
|
||||||
$strRelationalDisplayField = 'Relational display field'; //to translate
|
$strRelationalDisplayField = 'Relational display field'; //to translate
|
||||||
$strFeebeeNoKey = 'No valid authentication key plugged'; //to translate
|
$strSwekeyNoKey = 'No valid authentication key plugged'; //to translate
|
||||||
$strFeebeeNoKeyId = 'File %s does not contain any key id'; //to translate
|
$strSwekeyNoKeyId = 'File %s does not contain any key id'; //to translate
|
||||||
$strFeebeeAuthFailed = 'Hardware authentication failed'; //to translate
|
$strSwekeyAuthFailed = 'Hardware authentication failed'; //to translate
|
||||||
$strFeebeeAuthenticating = 'Authenticating...'; //to translate
|
$strSwekeyAuthenticating = 'Authenticating...'; //to translate
|
||||||
?>
|
?>
|
||||||
|
@@ -12,7 +12,7 @@ if (! defined('PMA_COMING_FROM_COMMON')) {
|
|||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
|
|
||||||
require './libraries/auth/feebee/feebee.auth.lib.php';
|
require './libraries/auth/swekey/swekey.auth.lib.php';
|
||||||
|
|
||||||
if (function_exists('mcrypt_encrypt') || PMA_dl('mcrypt')) {
|
if (function_exists('mcrypt_encrypt') || PMA_dl('mcrypt')) {
|
||||||
/**
|
/**
|
||||||
@@ -219,10 +219,10 @@ if (top != self) {
|
|||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
|
|
||||||
// BEGIN Feebee Integration
|
// BEGIN Swekey Integration
|
||||||
$feebeeErr = Feebee_auth_error();
|
$swekeyErr = Swekey_auth_error();
|
||||||
if ($feebeeErr != null) {
|
if ($swekeyErr != null) {
|
||||||
PMA_Message::error($feebeeErr)->display();
|
PMA_Message::error($swekeyErr)->display();
|
||||||
if ($GLOBALS['error_handler']->hasDisplayErrors()) {
|
if ($GLOBALS['error_handler']->hasDisplayErrors()) {
|
||||||
echo '<div>';
|
echo '<div>';
|
||||||
$GLOBALS['error_handler']->dispErrors();
|
$GLOBALS['error_handler']->dispErrors();
|
||||||
@@ -242,7 +242,7 @@ if (top != self) {
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
$user_input_disabled = '';
|
$user_input_disabled = '';
|
||||||
// END Feebee Integration
|
// END Swekey Integration
|
||||||
|
|
||||||
?>
|
?>
|
||||||
<br />
|
<br />
|
||||||
@@ -417,10 +417,10 @@ function PMA_auth_check()
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
// BEGIN Feebee Integration
|
// BEGIN Swekey Integration
|
||||||
if (! Feebee_auth_check())
|
if (! Swekey_auth_check())
|
||||||
return false;
|
return false;
|
||||||
// END Feebee Integration
|
// END Swekey Integration
|
||||||
|
|
||||||
if (defined('PMA_CLEAR_COOKIES')) {
|
if (defined('PMA_CLEAR_COOKIES')) {
|
||||||
foreach($GLOBALS['cfg']['Servers'] as $key => $val) {
|
foreach($GLOBALS['cfg']['Servers'] as $key => $val) {
|
||||||
|
@@ -1,224 +0,0 @@
|
|||||||
<?php
|
|
||||||
/**
|
|
||||||
* Library that provides common functions that are used to help integrating Feebee Authentication in a PHP web site
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Errors codes
|
|
||||||
*/
|
|
||||||
define ("FBAUTH_ERR_INVALID_DEV_STATUS",901); // The satus of the device is not FBAUTH_STATUS_OK
|
|
||||||
define ("FBAUTH_ERR_INTERNAL",902); // Should never occurd
|
|
||||||
define ("FBAUTH_ERR_OUTDATED_RND_TOKEN",910); // You random token is too old
|
|
||||||
define ("FBAUTH_ERR_INVALID_OTP",911); // The otp was not correct
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Those errors are considered as an attack and your site will be blacklisted during one minute
|
|
||||||
* if you receive one of those errors
|
|
||||||
*/
|
|
||||||
define ("FBAUTH_ERR_BADLY_ENCODED_REQUEST",920);
|
|
||||||
define ("FBAUTH_ERR_INVALID_RND_TOKEN",921);
|
|
||||||
define ("FBAUTH_ERR_DEV_NOT_FOUND",922);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The last error of an operation is alway put in this global var
|
|
||||||
*/
|
|
||||||
global $gAuthErr;
|
|
||||||
|
|
||||||
$gAuthErr = 0;
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Get a Random Token from a Token Server
|
|
||||||
* The RT is a 64 vhars hexadecimal value
|
|
||||||
* You should better use FbAuth_GetFastRndToken() for performance
|
|
||||||
* @access public
|
|
||||||
*/
|
|
||||||
function FbAuth_GetRndToken()
|
|
||||||
{
|
|
||||||
return @file_get_contents('http://auth-rnd-gen.musbe.net/FULL-RND-TOKEN');
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Get a Half Random Token from a Token Server
|
|
||||||
* The RT is a 64 vhars hexadecimal value
|
|
||||||
* Use this value if you want to make your own FbAuth_GetFastRndToken()
|
|
||||||
* @access public
|
|
||||||
*/
|
|
||||||
function FbAuth_GetHalfRndToken()
|
|
||||||
{
|
|
||||||
return @file_get_contents('http://auth-rnd-gen.musbe.net/HALF-RND-TOKEN');
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Get a Random Token
|
|
||||||
* The RT is a 64 vhars hexadecimal value
|
|
||||||
* This function generates a unique random token for each call but call the
|
|
||||||
* server only once every 30 seconds.
|
|
||||||
* You should always use this function to get random token.
|
|
||||||
* @access public
|
|
||||||
*/
|
|
||||||
function FbAuth_GetFastRndToken()
|
|
||||||
{
|
|
||||||
$res = "";
|
|
||||||
|
|
||||||
// We check if we have a valid RT is the session
|
|
||||||
if (isset($_SESSION['rnd-token-date']))
|
|
||||||
if (time() - $_SESSION['rnd-token-date'] < 30)
|
|
||||||
$res = $_SESSION['rnd-token'];
|
|
||||||
|
|
||||||
// If not we try to get it from a temp file (PHP >= 5.2.1 only)
|
|
||||||
if (strlen($res) != 32)
|
|
||||||
{
|
|
||||||
if (function_exists('sys_get_temp_dir') )
|
|
||||||
{
|
|
||||||
$tempdir = sys_get_temp_dir();
|
|
||||||
$modif = filemtime($tempdir."/feebee-rnd-token");
|
|
||||||
if ($modif != false)
|
|
||||||
if (time() - $modif < 30)
|
|
||||||
{
|
|
||||||
$res = @file_get_contents($tempdir."/feebee-rnd-token");
|
|
||||||
if (strlen($res) != 32)
|
|
||||||
$res = "";
|
|
||||||
else
|
|
||||||
{
|
|
||||||
$_SESSION['rnd-token'] = $res;
|
|
||||||
$_SESSION['rnd-token-date'] = $modif;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// If we don't have a valid RT here we have to get it from the server
|
|
||||||
if (strlen($res) != 32)
|
|
||||||
{
|
|
||||||
$res = substr(FbAuth_GetHalfRndToken(), 0, 32);
|
|
||||||
$_SESSION['rnd-token'] = $res;
|
|
||||||
$_SESSION['rnd-token-date'] = time();
|
|
||||||
if (isset($tempdir))
|
|
||||||
{
|
|
||||||
$file = fopen ($tempdir."/feebee-rnd-token" , "w");
|
|
||||||
@fwrite($file, $res);
|
|
||||||
@fclose($file);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return $res.strtoupper(md5("Musbe Authentication Key" + mt_rand() + date(DATE_ATOM)));
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Checks the result of an http request
|
|
||||||
*
|
|
||||||
* @param res the result of the http request
|
|
||||||
* @param header the header returned by the http request
|
|
||||||
* @access private
|
|
||||||
*/
|
|
||||||
function FbAuth_CheckForOK($res, $header)
|
|
||||||
{
|
|
||||||
$err = substr($header, 9, 3); //HTTP/1.0
|
|
||||||
|
|
||||||
if ($res == "OK" && $err == 200)
|
|
||||||
return true;
|
|
||||||
|
|
||||||
global $gAuthErr;
|
|
||||||
if ($err != "")
|
|
||||||
$gAuthErr = $err;
|
|
||||||
else
|
|
||||||
$gAuthErr = "Unknown Error";
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Checks that an OTP generated by a Feebee is valid
|
|
||||||
*
|
|
||||||
* @param fbid The id of the feebee
|
|
||||||
* @param rt The random token used to generate the otp
|
|
||||||
* @param otp The otp generated by the feebee
|
|
||||||
* @return true or false
|
|
||||||
* @access public
|
|
||||||
*/
|
|
||||||
function FbAuth_CheckOtp($fbid, $rt, $otp)
|
|
||||||
{
|
|
||||||
global $http_response_header;
|
|
||||||
$res = file_get_contents('http://auth-check.musbe.net/CHECK-OTP/'.$fbid.'/'.$rt.'/'.$otp);
|
|
||||||
return FbAuth_CheckForOK($res, $http_response_header[0]);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Values that are associated with a key.
|
|
||||||
* The following values can be returned by the FbAuth_GetStatus() function
|
|
||||||
*/
|
|
||||||
define ("FBAUTH_STATUS_OK",0);
|
|
||||||
define ("FBAUTH_STATUS_NOT_FOUND",1); // The key does not exist in the db
|
|
||||||
define ("FBAUTH_STATUS_INACTIVE",2); // The key has never been activated
|
|
||||||
define ("FBAUTH_STATUS_LOST",3); // The user has lost his key
|
|
||||||
define ("FBAUTH_STATUS_STOLLEN",4); // The key was stollen
|
|
||||||
define ("FBAUTH_STATUS_FEE_DUE",5); // The annual fee was not paid
|
|
||||||
define ("FBAUTH_STATUS_OBSOLETE",6); // The hardware is no longer supported
|
|
||||||
define ("FBAUTH_STATUS_UNKOWN",201); // We could not connect to the authentication server
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Values that are associated with a key.
|
|
||||||
* The Javascript Api can also return the following values
|
|
||||||
*/
|
|
||||||
define ("FBAUTH_STATUS_REPLACED",100); // This key has been replaced by a backup key
|
|
||||||
define ("FBAUTH_STATUS_BACKUP_KEY",101); // This key is a backup key that is not activated yet
|
|
||||||
define ("FBAUTH_STATUS_NOTPLUGGED",200); // This key is not plugged in the computer
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Return the text corresponding to the integer status of a key
|
|
||||||
*
|
|
||||||
* @param status The status
|
|
||||||
* @return The text corresponding to the status
|
|
||||||
* @access public
|
|
||||||
*/
|
|
||||||
function FbAuth_GetStatusStr($status)
|
|
||||||
{
|
|
||||||
switch($status)
|
|
||||||
{
|
|
||||||
case FBAUTH_STATUS_OK : return 'OK';
|
|
||||||
case FBAUTH_STATUS_NOT_FOUND : return 'Key does not exist in the db';
|
|
||||||
case FBAUTH_STATUS_INACTIVE : return 'Key not activated';
|
|
||||||
case FBAUTH_STATUS_LOST : return 'Key was lost';
|
|
||||||
case FBAUTH_STATUS_STOLLEN : return 'Key was stollen';
|
|
||||||
case FBAUTH_STATUS_FEE_DUE : return 'The annual fee was not paid';
|
|
||||||
case FBAUTH_STATUS_OBSOLETE : return 'Key no longer supported';
|
|
||||||
case FBAUTH_STATUS_REPLACED : return 'This key has been replaced by a backup key';
|
|
||||||
case FBAUTH_STATUS_BACKUP_KEY : return 'This key is a backup key that is not activated yet';
|
|
||||||
case FBAUTH_STATUS_NOTPLUGGED : return 'This key is not plugged in the computer';
|
|
||||||
case FBAUTH_STATUS_UNKOWN : return 'Unknow Status, could not connect to the authentication server';
|
|
||||||
}
|
|
||||||
return 'unknown status '.$status;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* If your web site requires a key to login you should check that the key
|
|
||||||
* is still valid (has not been lost or stolen) before requiring it.
|
|
||||||
* A key can be authenticated only if its status is FBAUTH_STATUS_OK
|
|
||||||
* @param fbid The id of the feebee
|
|
||||||
* @return The status of the feebee
|
|
||||||
* @access public
|
|
||||||
*/
|
|
||||||
function FbAuth_GetStatus($fbid)
|
|
||||||
{
|
|
||||||
global $http_response_header;
|
|
||||||
$res = file_get_contents('http://auth-status.musbe.net/GET-STATUS/'.$fbid);
|
|
||||||
|
|
||||||
$err = substr($http_response_header[0], 9, 3); //HTTP/1.0
|
|
||||||
if ($err == "200")
|
|
||||||
return intval($res);
|
|
||||||
|
|
||||||
// in case of connection failure we return OK but it should never occurd
|
|
||||||
return FBAUTH_STATUS_UNKOWN;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
?>
|
|
@@ -1,103 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
function Feebee_auth_check()
|
|
||||||
{
|
|
||||||
// Load the feebee.conf file the first time
|
|
||||||
if (empty($_SESSION['PHP_AUTH_REQUIRED_FEEBEE'])) {
|
|
||||||
global $cfg;
|
|
||||||
$confFile = $cfg['Server']['auth_feebee_config'];
|
|
||||||
$_SESSION['PHP_AUTH_REQUIRES_FEEBEE'] = (! empty($confFile) && file_exists($confFile));
|
|
||||||
// $_SESSION['PHP_AUTH_REQUIRES_FEEBEE'] = file_exists($confFile);
|
|
||||||
if ($_SESSION['PHP_AUTH_REQUIRES_FEEBEE']) {
|
|
||||||
$_SESSION['PHP_AUTH_VALID_FEEBEES'] = "";
|
|
||||||
$valid_feebees = split("\n",@file_get_contents($confFile));
|
|
||||||
foreach ($valid_feebees as $line) {
|
|
||||||
if (ereg("^[0-9A-F]{32}:.+$", $line) != false)
|
|
||||||
$_SESSION['PHP_AUTH_VALID_FEEBEES'] .= $line . ",";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
unset($_SESSION['PHP_AUTH_VALID_FEEBEES']);
|
|
||||||
}
|
|
||||||
|
|
||||||
// check if a web key has been authenticated
|
|
||||||
if ($_SESSION['PHP_AUTH_REQUIRES_FEEBEE']) {
|
|
||||||
if (empty($_SESSION['PHP_AUTH_AUTHENTICATED_FEEBEE']))
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
function Feebee_auth_error()
|
|
||||||
{
|
|
||||||
if (! $_SESSION['PHP_AUTH_REQUIRES_FEEBEE'])
|
|
||||||
return null;
|
|
||||||
|
|
||||||
if (! empty($_SESSION['PHP_AUTH_AUTHENTICATED_FEEBEE']))
|
|
||||||
return null;
|
|
||||||
|
|
||||||
if (empty($_SESSION['PHP_AUTH_VALID_FEEBEES']))
|
|
||||||
return sprintf($GLOBALS['strFeebeeNoKeyId'], $GLOBALS['cfg']['Server']['auth_feebee_config']);
|
|
||||||
|
|
||||||
$result = null;
|
|
||||||
parse_str($_SERVER['QUERY_STRING']);
|
|
||||||
if (isset($feebee_id)) {
|
|
||||||
unset($_SESSION['PHP_AUTH_AUTHENTICATED_FEEBEE']);
|
|
||||||
if (! isset($_SESSION['PHP_AUTH_FEEBEE_RND_TOKEN'])) {
|
|
||||||
unset($feebee_id);
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
if (strlen($feebee_id) == 32) {
|
|
||||||
$res = file_get_contents('http://auth-check.musbe.net/CHECK-OTP/'.$feebee_id.'/'.$_SESSION['PHP_AUTH_FEEBEE_RND_TOKEN'].'/'.$feebee_otp);
|
|
||||||
unset($_SESSION['PHP_AUTH_FEEBEE_RND_TOKEN']);
|
|
||||||
if ($res != "OK") {
|
|
||||||
$result = $GLOBALS['strFeebeeAuthFailed'] . ' (' . $res . ')';
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
$_SESSION['PHP_AUTH_AUTHENTICATED_FEEBEE'] = $feebee_id;
|
|
||||||
unset($_SESSION['PHP_AUTH_FORCE_USER']);
|
|
||||||
$valid_feebees = split(",",$_SESSION['PHP_AUTH_VALID_FEEBEES']);
|
|
||||||
foreach ($valid_feebees as $line) {
|
|
||||||
if (substr($line,0,32) == $feebee_id) {
|
|
||||||
$_SESSION['PHP_AUTH_FORCE_USER'] = substr($line,33);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
$result = $GLOBALS['strFeebeeNoKey'];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
require_once './libraries/auth/feebee/authentication.inc.php';
|
|
||||||
|
|
||||||
if (! isset($feebee_id)) {
|
|
||||||
?>
|
|
||||||
<script>
|
|
||||||
window.location.search="?feebee_id=" + Feebee_GetValidKey() + "&feebee_otp=" + Feebee_GetOtp();
|
|
||||||
</script>
|
|
||||||
<?php
|
|
||||||
return $GLOBALS['strFeebeeAuthenticating'];
|
|
||||||
}
|
|
||||||
|
|
||||||
?>
|
|
||||||
<script>
|
|
||||||
var key = Feebee_GetValidKey();
|
|
||||||
function timedCheck()
|
|
||||||
{
|
|
||||||
if (key != Feebee_GetValidKey())
|
|
||||||
window.location.search="";
|
|
||||||
|
|
||||||
setTimeout("timedCheck()",1000);
|
|
||||||
}
|
|
||||||
timedCheck();
|
|
||||||
</script>
|
|
||||||
<?php
|
|
||||||
|
|
||||||
return $result;
|
|
||||||
}
|
|
||||||
|
|
||||||
?>
|
|
@@ -1,92 +1,89 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
require_once "libraries/auth/feebee/fbauth.php";
|
|
||||||
|
|
||||||
$_SESSION['PHP_AUTH_FEEBEE_RND_TOKEN'] = FbAuth_GetFastRndToken();
|
|
||||||
|
|
||||||
?>
|
?>
|
||||||
<embed type="application/fbauth-plugin" width=1 height=1 hidden="true" id="fbauth"><br>
|
<embed type="application/fbauth-plugin" width=1 height=1 hidden="true" id="fbauth"><br>
|
||||||
<script>
|
<script>
|
||||||
var glob_FbAuthPlugin = document.embeds["fbauth"];
|
var glob_SwekeyPlugin = document.embeds["fbauth"];
|
||||||
var glob_ValidFeebeeId;
|
var glob_ValidSwekeyId;
|
||||||
var glob_ValidFeebeeOtp;
|
var glob_ValidSwekeyOtp;
|
||||||
|
|
||||||
// -------------------------------------------------------------------
|
// -------------------------------------------------------------------
|
||||||
// List the id of the Feebee connected to the PC
|
// List the id of the Swekey connected to the PC
|
||||||
// Returns a string containing comma separated Feebee Ids
|
// Returns a string containing comma separated Swekey Ids
|
||||||
// A Feebee id is a 32 char hexadecimal value.
|
// A Swekey id is a 32 char hexadecimal value.
|
||||||
function FbAuth_ListKeyIds()
|
function Swekey_ListKeyIds()
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
if (window.ActiveXObject)
|
if (window.ActiveXObject)
|
||||||
{
|
{
|
||||||
var x = new ActiveXObject("FbAuthAx.FbAuthCtl");
|
var x = new ActiveXObject("FbAuthAx.SwekeyCtl");
|
||||||
return x.list();
|
return x.list();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
return glob_FbAuthPlugin.list();
|
return glob_SwekeyPlugin.list();
|
||||||
}
|
}
|
||||||
catch (e)
|
catch (e)
|
||||||
{
|
{
|
||||||
// alert("FbAuth_ListKeyIds" + e);
|
// alert("Swekey_ListKeyIds" + e);
|
||||||
}
|
}
|
||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
|
|
||||||
// -------------------------------------------------------------------
|
// -------------------------------------------------------------------
|
||||||
// Ask the Connected Feebee to generate an OTP
|
// Ask the Connected Swekey to generate an OTP
|
||||||
// fbid: The id of the connected Feebee (returne by FbAuth_ListKeyIds())
|
// fbid: The id of the connected Swekey (returne by Swekey_ListKeyIds())
|
||||||
// rt: A random token
|
// rt: A random token
|
||||||
// return: The calculated OTP encoded in a 64 chars hexadecimal value.
|
// return: The calculated OTP encoded in a 64 chars hexadecimal value.
|
||||||
function FbAuth_GetOtp(fbid, rt)
|
function Swekey_GetOtp(fbid, rt)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
if (window.ActiveXObject)
|
if (window.ActiveXObject)
|
||||||
{
|
{
|
||||||
var x = new ActiveXObject("FbAuthAx.FbAuthCtl");
|
var x = new ActiveXObject("FbAuthAx.SwekeyCtl");
|
||||||
return x.getotp(fbid, rt);
|
return x.getotp(fbid, rt);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
return glob_FbAuthPlugin.getotp(fbid, rt);
|
return glob_SwekeyPlugin.getotp(fbid, rt);
|
||||||
}
|
}
|
||||||
catch (e)
|
catch (e)
|
||||||
{
|
{
|
||||||
// alert("FbAuth_GetOtp " + e);
|
// alert("Swekey_GetOtp " + e);
|
||||||
}
|
}
|
||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
|
|
||||||
// -------------------------------------------------------------------
|
// -------------------------------------------------------------------
|
||||||
// Set a unplug handler (url) to the specified connected feebee
|
// Set a unplug handler (url) to the specified connected swekey
|
||||||
// fbid: The id of the connected Feebee (returne by FbAuth_ListKeyIds())
|
// fbid: The id of the connected Swekey (returne by Swekey_ListKeyIds())
|
||||||
// key: The key that index that url, (aplhanumeric values only)
|
// key: The key that index that url, (aplhanumeric values only)
|
||||||
// url: The url that will be launched ("" deletes the url)
|
// url: The url that will be launched ("" deletes the url)
|
||||||
function FbAuth_SetUnplugUrl(fbid, key, url)
|
function Swekey_SetUnplugUrl(fbid, key, url)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
if (window.ActiveXObject)
|
if (window.ActiveXObject)
|
||||||
{
|
{
|
||||||
var x = new ActiveXObject("FbAuthAx.FbAuthCtl");
|
var x = new ActiveXObject("FbAuthAx.SwekeyCtl");
|
||||||
return x.setunplugurl(fbid, key, url);
|
return x.setunplugurl(fbid, key, url);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
return glob_FbAuthPlugin.setunplugurl(fbid, key, url);
|
return glob_SwekeyPlugin.setunplugurl(fbid, key, url);
|
||||||
}
|
}
|
||||||
catch (e)
|
catch (e)
|
||||||
{
|
{
|
||||||
// alert("FbAuth_SetUnplugUrl " + e);
|
// alert("Swekey_SetUnplugUrl " + e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// -------------------------------------------------------------------
|
// -------------------------------------------------------------------
|
||||||
// Return a valid connected key id
|
// Return a valid connected key id
|
||||||
function Feebee_GetValidKey()
|
function Swekey_GetValidKey()
|
||||||
{
|
{
|
||||||
var valids = <?php echo '"'.$_SESSION['PHP_AUTH_VALID_FEEBEES'].'"';?>;
|
var valids = <?php echo '"'.$_SESSION['PHP_AUTH_VALID_SWEKEYS'].'"';?>;
|
||||||
var connected_keys = FbAuth_ListKeyIds().split(",");
|
var connected_keys = Swekey_ListKeyIds().split(",");
|
||||||
for (i in connected_keys)
|
for (i in connected_keys)
|
||||||
if (connected_keys[i] != null && connected_keys[i].length == 32)
|
if (connected_keys[i] != null && connected_keys[i].length == 32)
|
||||||
if (valids.indexOf(connected_keys[i]) >= 0)
|
if (valids.indexOf(connected_keys[i]) >= 0)
|
||||||
@@ -97,9 +94,9 @@
|
|||||||
|
|
||||||
// -------------------------------------------------------------------
|
// -------------------------------------------------------------------
|
||||||
// Return a valid connected key id
|
// Return a valid connected key id
|
||||||
function Feebee_GetOtp()
|
function Swekey_GetOtpFromValidKey()
|
||||||
{
|
{
|
||||||
var key = Feebee_GetValidKey();
|
var key = Swekey_GetValidKey();
|
||||||
if (key.length != 32)
|
if (key.length != 32)
|
||||||
return "";
|
return "";
|
||||||
|
|
||||||
@@ -111,12 +108,8 @@
|
|||||||
if (url.lastIndexOf("/") > 0)
|
if (url.lastIndexOf("/") > 0)
|
||||||
url = url.substr(0, url.lastIndexOf("/"));
|
url = url.substr(0, url.lastIndexOf("/"));
|
||||||
|
|
||||||
FbAuth_SetUnplugUrl(key, "pma_login", url + "/libraries/auth/feebee/unplugged.php?session_to_unset=<?php echo session_id();?>");
|
Swekey_SetUnplugUrl(key, "pma_login", url + "/libraries/auth/swekey/unplugged.php?session_to_unset=<?php echo session_id();?>");
|
||||||
|
|
||||||
return FbAuth_GetOtp(key, <?php echo '"'.$_SESSION['PHP_AUTH_FEEBEE_RND_TOKEN'].'"';?>);
|
return Swekey_GetOtp(key, <?php echo '"'.$_SESSION['PHP_AUTH_SWEKEY_RND_TOKEN'].'"';?>);
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<?php
|
|
||||||
|
|
||||||
?>
|
|
122
libraries/auth/swekey/swekey.auth.lib.php
Normal file
122
libraries/auth/swekey/swekey.auth.lib.php
Normal file
@@ -0,0 +1,122 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
function Swekey_auth_check()
|
||||||
|
{
|
||||||
|
// Load the swekey.conf file the first time
|
||||||
|
if (empty($_SESSION['PHP_AUTH_REQUIRED_SWEKEY'])) {
|
||||||
|
global $cfg;
|
||||||
|
$confFile = $cfg['Server']['auth_swekey_config'];
|
||||||
|
$_SESSION['PHP_AUTH_REQUIRES_SWEKEY'] = (! empty($confFile) && file_exists($confFile));
|
||||||
|
if ($_SESSION['PHP_AUTH_REQUIRES_SWEKEY']) {
|
||||||
|
$_SESSION['PHP_AUTH_VALID_SWEKEYS'] = "";
|
||||||
|
$_SESSION['PHP_AUTH_SERVER_CHECK'] = "";
|
||||||
|
$_SESSION['PHP_AUTH_SERVER_RNDTOKEN'] = "";
|
||||||
|
$_SESSION['PHP_AUTH_SERVER_STATUS'] = "";
|
||||||
|
$valid_swekeys = split("\n",@file_get_contents($confFile));
|
||||||
|
foreach ($valid_swekeys as $line) {
|
||||||
|
if (ereg("^[0-9A-F]{32}:.+$", $line) != false)
|
||||||
|
$_SESSION['PHP_AUTH_VALID_SWEKEYS'] .= trim($line) . ",";
|
||||||
|
else if (ereg("^SERVER_[A-Z]+=.*$", $line) != false) {
|
||||||
|
$items = explode("=", $line);
|
||||||
|
$_SESSION['PHP_AUTH_'.trim($items[0])] = trim($items[1]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
unset($_SESSION['PHP_AUTH_VALID_SWEKEYS']);
|
||||||
|
}
|
||||||
|
|
||||||
|
// check if a web key has been authenticated
|
||||||
|
if ($_SESSION['PHP_AUTH_REQUIRES_SWEKEY']) {
|
||||||
|
if (empty($_SESSION['PHP_AUTH_AUTHENTICATED_SWEKEY']))
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function Swekey_auth_error()
|
||||||
|
{
|
||||||
|
if (! $_SESSION['PHP_AUTH_REQUIRES_SWEKEY'])
|
||||||
|
return null;
|
||||||
|
|
||||||
|
if (! empty($_SESSION['PHP_AUTH_AUTHENTICATED_SWEKEY']))
|
||||||
|
return null;
|
||||||
|
|
||||||
|
if (empty($_SESSION['PHP_AUTH_VALID_SWEKEYS']))
|
||||||
|
return sprintf($GLOBALS['strSwekeyNoKeyId'], $GLOBALS['cfg']['Server']['auth_swekey_config']);
|
||||||
|
|
||||||
|
require_once "./libraries/auth/swekey/swekey.php";
|
||||||
|
|
||||||
|
Swekey_SetCheckServer($_SESSION['PHP_AUTH_SERVER_CHECK']);
|
||||||
|
Swekey_SetRndTokenServer($_SESSION['PHP_AUTH_SERVER_RNDTOKEN']);
|
||||||
|
Swekey_SetStatusServer($_SESSION['PHP_AUTH_SERVER_STATUS']);
|
||||||
|
|
||||||
|
$result = null;
|
||||||
|
parse_str($_SERVER['QUERY_STRING']);
|
||||||
|
if (isset($swekey_id)) {
|
||||||
|
unset($_SESSION['PHP_AUTH_AUTHENTICATED_SWEKEY']);
|
||||||
|
if (! isset($_SESSION['PHP_AUTH_SWEKEY_RND_TOKEN'])) {
|
||||||
|
unset($swekey_id);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
if (strlen($swekey_id) == 32) {
|
||||||
|
$res = Swekey_CheckOtp($swekey_id, $_SESSION['PHP_AUTH_SWEKEY_RND_TOKEN'], $swekey_otp);
|
||||||
|
unset($_SESSION['PHP_AUTH_SWEKEY_RND_TOKEN']);
|
||||||
|
if (! $res) {
|
||||||
|
$result = $GLOBALS['strSwekeyAuthFailed'] . ' (' . Swekey_GetLastError() . ')';
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
$_SESSION['PHP_AUTH_AUTHENTICATED_SWEKEY'] = $swekey_id;
|
||||||
|
unset($_SESSION['PHP_AUTH_FORCE_USER']);
|
||||||
|
$valid_swekeys = split(",",$_SESSION['PHP_AUTH_VALID_SWEKEYS']);
|
||||||
|
foreach ($valid_swekeys as $line) {
|
||||||
|
if (substr($line,0,32) == $swekey_id) {
|
||||||
|
$_SESSION['PHP_AUTH_FORCE_USER'] = substr($line,33);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
$result = $GLOBALS['strSwekeyNoKey'];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$_SESSION['PHP_AUTH_SWEKEY_RND_TOKEN'] = Swekey_GetFastRndToken();
|
||||||
|
if (strlen($_SESSION['PHP_AUTH_SWEKEY_RND_TOKEN']) != 64) {
|
||||||
|
$result = $GLOBALS['strSwekeyAuthFailed'] . ' (' . Swekey_GetLastError() . ')';
|
||||||
|
}
|
||||||
|
|
||||||
|
require_once './libraries/auth/swekey/authentication.inc.php';
|
||||||
|
|
||||||
|
if (! isset($swekey_id)) {
|
||||||
|
?>
|
||||||
|
<script>
|
||||||
|
window.location.search="?swekey_id=" + Swekey_GetValidKey() + "&swekey_otp=" + Swekey_GetOtpFromValidKey();
|
||||||
|
</script>
|
||||||
|
<?php
|
||||||
|
return $GLOBALS['strSwekeyAuthenticating'];
|
||||||
|
}
|
||||||
|
|
||||||
|
?>
|
||||||
|
<script>
|
||||||
|
var key = Swekey_GetValidKey();
|
||||||
|
function timedCheck()
|
||||||
|
{
|
||||||
|
if (key != Swekey_GetValidKey())
|
||||||
|
window.location.search="";
|
||||||
|
|
||||||
|
setTimeout("timedCheck()",1000);
|
||||||
|
}
|
||||||
|
timedCheck();
|
||||||
|
</script>
|
||||||
|
<?php
|
||||||
|
|
||||||
|
return $result;
|
||||||
|
}
|
||||||
|
|
||||||
|
?>
|
349
libraries/auth/swekey/swekey.php
Normal file
349
libraries/auth/swekey/swekey.php
Normal file
@@ -0,0 +1,349 @@
|
|||||||
|
<?php
|
||||||
|
/**
|
||||||
|
* Library that provides common functions that are used to help integrating Swekey Authentication in a PHP web site
|
||||||
|
* Version 1.0
|
||||||
|
*
|
||||||
|
* History:
|
||||||
|
* 1.1 Added Swekey_HttpGet function that support faulty servers
|
||||||
|
* Support for custom servers
|
||||||
|
* 1.0 First release
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Errors codes
|
||||||
|
*/
|
||||||
|
define ("SWEKEY_ERR_INVALID_DEV_STATUS",901); // The satus of the device is not SWEKEY_STATUS_OK
|
||||||
|
define ("SWEKEY_ERR_INTERNAL",902); // Should never occurd
|
||||||
|
define ("SWEKEY_ERR_OUTDATED_RND_TOKEN",910); // You random token is too old
|
||||||
|
define ("SWEKEY_ERR_INVALID_OTP",911); // The otp was not correct
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Those errors are considered as an attack and your site will be blacklisted during one minute
|
||||||
|
* if you receive one of those errors
|
||||||
|
*/
|
||||||
|
define ("SWEKEY_ERR_BADLY_ENCODED_REQUEST",920);
|
||||||
|
define ("SWEKEY_ERR_INVALID_RND_TOKEN",921);
|
||||||
|
define ("SWEKEY_ERR_DEV_NOT_FOUND",922);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The last error of an operation is alway put in this global var
|
||||||
|
*/
|
||||||
|
|
||||||
|
global $gSwekeyLastError;
|
||||||
|
$gSwekeyLastError = 0;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Servers addresses
|
||||||
|
* Use the Swekey_SetXxxServer($server) functions to set them
|
||||||
|
*/
|
||||||
|
|
||||||
|
global $gSwekeyCheckServer;
|
||||||
|
if (! isset($gSwekeyCheckServer))
|
||||||
|
$gSwekeyCheckServer = 'http://auth-check.musbe.net';
|
||||||
|
|
||||||
|
global $gSwekeyRndTokenServer;
|
||||||
|
if (! isset($gSwekeyRndTokenServer))
|
||||||
|
$gSwekeyRndTokenServer = 'http://auth-rnd-gen.musbe.net';
|
||||||
|
|
||||||
|
global $gSwekeyStatusServer;
|
||||||
|
if (! isset($gSwekeyStatusServer))
|
||||||
|
$gSwekeyStatusServer = 'http://auth-status.musbe.net';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Change the address of the Check server.
|
||||||
|
* If $server is empty the default value 'http://auth-check.musbe.net' will be used
|
||||||
|
*
|
||||||
|
* @param server The protocol and hostname to use
|
||||||
|
* @access public
|
||||||
|
*/
|
||||||
|
function Swekey_SetCheckServer($server)
|
||||||
|
{
|
||||||
|
global $gSwekeyCheckServer;
|
||||||
|
if (empty($server))
|
||||||
|
$gSwekeyCheckServer = 'http://auth-check.musbe.net';
|
||||||
|
else
|
||||||
|
$gSwekeyCheckServer = $server;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Change the address of the Random Token Generator server.
|
||||||
|
* If $server is empty the default value 'http://auth-rnd-gen.musbe.net' will be used
|
||||||
|
*
|
||||||
|
* @param server The protocol and hostname to use
|
||||||
|
* @access public
|
||||||
|
*/
|
||||||
|
function Swekey_SetRndTokenServer($server)
|
||||||
|
{
|
||||||
|
global $gSwekeyRndTokenServer;
|
||||||
|
if (empty($server))
|
||||||
|
$gSwekeyRndTokenServer = 'http://auth-rnd-gen.musbe.net';
|
||||||
|
else
|
||||||
|
$gSwekeyRndTokenServer = $server;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Change the address of the Satus server.
|
||||||
|
* If $server is empty the default value 'http://auth-status.musbe.net' will be used
|
||||||
|
*
|
||||||
|
* @param server The protocol and hostname to use
|
||||||
|
* @access public
|
||||||
|
*/
|
||||||
|
function Swekey_SetStatusServer($server)
|
||||||
|
{
|
||||||
|
global $gSwekeyStatusServer;
|
||||||
|
if (empty($server))
|
||||||
|
$gSwekeyStatusServer = 'http://auth-status.musbe.net';
|
||||||
|
else
|
||||||
|
$gSwekeyStatusServer = $server;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Return the last error.
|
||||||
|
*
|
||||||
|
* @return The Last Error
|
||||||
|
* @access public
|
||||||
|
*/
|
||||||
|
function Swekey_GetLastError()
|
||||||
|
{
|
||||||
|
global $gSwekeyLastError;
|
||||||
|
return $gSwekeyLastError;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Send a synchronous request to the server.
|
||||||
|
* This function manages timeout then will not block if one of the server is down
|
||||||
|
*
|
||||||
|
* @param url The url to get
|
||||||
|
* @param response_code The response code
|
||||||
|
* @return The body of the response or "" in case of error
|
||||||
|
* @access private
|
||||||
|
*/
|
||||||
|
function Swekey_HttpGet($url, &$response_code)
|
||||||
|
{
|
||||||
|
global $gSwekeyLastError;
|
||||||
|
|
||||||
|
// you should install the pecl_http to be able to handle timeouts
|
||||||
|
if (class_exists('HttpRequest'))
|
||||||
|
{
|
||||||
|
// retry if one of the server is down
|
||||||
|
for ($num=1; $num <= 3; $num++ )
|
||||||
|
{
|
||||||
|
$r = new HttpRequest($url);
|
||||||
|
$options = array('timeout' => '3');
|
||||||
|
|
||||||
|
if (substr($url,0, 6) == "https:")
|
||||||
|
{
|
||||||
|
$cert = __FILE__;
|
||||||
|
$cert = substr($cert, 0, strlen($crt) - 3).'cert'; // replace ending 'php' by "cert"
|
||||||
|
if (file_exists($cert))
|
||||||
|
{
|
||||||
|
//TOFIX Don't know how to verify the certificate yet
|
||||||
|
//$options['ssl'] = array('cert' => $cert);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$r->setOptions($options);
|
||||||
|
|
||||||
|
try
|
||||||
|
{
|
||||||
|
$res = $r->send()->getBody();
|
||||||
|
$info = $r->getResponseInfo();
|
||||||
|
$response_code = $info['response_code'];
|
||||||
|
if ($response_code != 200)
|
||||||
|
{
|
||||||
|
$gSwekeyLastError = $response_code;
|
||||||
|
error_log("SWEKEY_ERROR:Error ".$gSwekeyLastError." getting ".$url);
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
|
||||||
|
return $res;
|
||||||
|
}
|
||||||
|
catch (HttpException $e)
|
||||||
|
{
|
||||||
|
error_log("SWEKEY_WARNING:HttpException ".$e." getting ".$url);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$response_code = 408; // Request Timeout
|
||||||
|
$gSwekeyLastError = $response_code;
|
||||||
|
error_log("SWEKEY_ERROR:Error ".$gSwekeyLastError." getting ".$url);
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
|
||||||
|
global $http_response_header;
|
||||||
|
$res = @file_get_contents($url);
|
||||||
|
$response_code = substr($http_response_header[0], 9, 3); //HTTP/1.0
|
||||||
|
if ($response_code == 200)
|
||||||
|
return $res;
|
||||||
|
|
||||||
|
global $gSwekeyLastError;
|
||||||
|
$gSwekeyLastError = $response_code;
|
||||||
|
error_log("SWEKEY_ERROR:Error ".$response_code." getting ".$url);
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get a Random Token from a Token Server
|
||||||
|
* The RT is a 64 vhars hexadecimal value
|
||||||
|
* You should better use Swekey_GetFastRndToken() for performance
|
||||||
|
* @access public
|
||||||
|
*/
|
||||||
|
function Swekey_GetRndToken()
|
||||||
|
{
|
||||||
|
global $gSwekeyRndTokenServer;
|
||||||
|
return Swekey_HttpGet($gSwekeyRndTokenServer.'/FULL-RND-TOKEN', $response_code);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get a Half Random Token from a Token Server
|
||||||
|
* The RT is a 64 vhars hexadecimal value
|
||||||
|
* Use this value if you want to make your own Swekey_GetFastRndToken()
|
||||||
|
* @access public
|
||||||
|
*/
|
||||||
|
function Swekey_GetHalfRndToken()
|
||||||
|
{
|
||||||
|
global $gSwekeyRndTokenServer;
|
||||||
|
return Swekey_HttpGet($gSwekeyRndTokenServer.'/HALF-RND-TOKEN', $response_code);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get a Random Token
|
||||||
|
* The RT is a 64 vhars hexadecimal value
|
||||||
|
* This function generates a unique random token for each call but call the
|
||||||
|
* server only once every 30 seconds.
|
||||||
|
* You should always use this function to get random token.
|
||||||
|
* @access public
|
||||||
|
*/
|
||||||
|
function Swekey_GetFastRndToken()
|
||||||
|
{
|
||||||
|
$res = "";
|
||||||
|
|
||||||
|
// We check if we have a valid RT is the session
|
||||||
|
if (isset($_SESSION['rnd-token-date']))
|
||||||
|
if (time() - $_SESSION['rnd-token-date'] < 30)
|
||||||
|
$res = $_SESSION['rnd-token'];
|
||||||
|
|
||||||
|
// If not we try to get it from a temp file (PHP >= 5.2.1 only)
|
||||||
|
if (strlen($res) != 32)
|
||||||
|
{
|
||||||
|
if (function_exists('sys_get_temp_dir') )
|
||||||
|
{
|
||||||
|
$tempdir = sys_get_temp_dir();
|
||||||
|
$modif = filemtime($tempdir."/swekey-rnd-token");
|
||||||
|
if ($modif != false)
|
||||||
|
if (time() - $modif < 30)
|
||||||
|
{
|
||||||
|
$res = @file_get_contents($tempdir."/swekey-rnd-token");
|
||||||
|
if (strlen($res) != 32)
|
||||||
|
$res = "";
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$_SESSION['rnd-token'] = $res;
|
||||||
|
$_SESSION['rnd-token-date'] = $modif;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// If we don't have a valid RT here we have to get it from the server
|
||||||
|
if (strlen($res) != 32)
|
||||||
|
{
|
||||||
|
$res = substr(Swekey_GetHalfRndToken(), 0, 32);
|
||||||
|
$_SESSION['rnd-token'] = $res;
|
||||||
|
$_SESSION['rnd-token-date'] = time();
|
||||||
|
if (isset($tempdir))
|
||||||
|
{
|
||||||
|
$file = fopen ($tempdir."/swekey-rnd-token" , "w");
|
||||||
|
@fwrite($file, $res);
|
||||||
|
@fclose($file);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return $res.strtoupper(md5("Musbe Authentication Key" + mt_rand() + date(DATE_ATOM)));
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Checks that an OTP generated by a Swekey is valid
|
||||||
|
*
|
||||||
|
* @param id The id of the swekey
|
||||||
|
* @param rt The random token used to generate the otp
|
||||||
|
* @param otp The otp generated by the swekey
|
||||||
|
* @return true or false
|
||||||
|
* @access public
|
||||||
|
*/
|
||||||
|
function Swekey_CheckOtp($id, $rt, $otp)
|
||||||
|
{
|
||||||
|
global $gSwekeyCheckServer;
|
||||||
|
$res = Swekey_HttpGet($gSwekeyCheckServer.'/CHECK-OTP/'.$id.'/'.$rt.'/'.$otp, $response_code);
|
||||||
|
return $response_code == 200 && $res == "OK";
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Values that are associated with a key.
|
||||||
|
* The following values can be returned by the Swekey_GetStatus() function
|
||||||
|
*/
|
||||||
|
define ("SWEKEY_STATUS_OK",0);
|
||||||
|
define ("SWEKEY_STATUS_NOT_FOUND",1); // The key does not exist in the db
|
||||||
|
define ("SWEKEY_STATUS_INACTIVE",2); // The key has never been activated
|
||||||
|
define ("SWEKEY_STATUS_LOST",3); // The user has lost his key
|
||||||
|
define ("SWEKEY_STATUS_STOLLEN",4); // The key was stollen
|
||||||
|
define ("SWEKEY_STATUS_FEE_DUE",5); // The annual fee was not paid
|
||||||
|
define ("SWEKEY_STATUS_OBSOLETE",6); // The hardware is no longer supported
|
||||||
|
define ("SWEKEY_STATUS_UNKOWN",201); // We could not connect to the authentication server
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Values that are associated with a key.
|
||||||
|
* The Javascript Api can also return the following values
|
||||||
|
*/
|
||||||
|
define ("SWEKEY_STATUS_REPLACED",100); // This key has been replaced by a backup key
|
||||||
|
define ("SWEKEY_STATUS_BACKUP_KEY",101); // This key is a backup key that is not activated yet
|
||||||
|
define ("SWEKEY_STATUS_NOTPLUGGED",200); // This key is not plugged in the computer
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Return the text corresponding to the integer status of a key
|
||||||
|
*
|
||||||
|
* @param status The status
|
||||||
|
* @return The text corresponding to the status
|
||||||
|
* @access public
|
||||||
|
*/
|
||||||
|
function Swekey_GetStatusStr($status)
|
||||||
|
{
|
||||||
|
switch($status)
|
||||||
|
{
|
||||||
|
case SWEKEY_STATUS_OK : return 'OK';
|
||||||
|
case SWEKEY_STATUS_NOT_FOUND : return 'Key does not exist in the db';
|
||||||
|
case SWEKEY_STATUS_INACTIVE : return 'Key not activated';
|
||||||
|
case SWEKEY_STATUS_LOST : return 'Key was lost';
|
||||||
|
case SWEKEY_STATUS_STOLLEN : return 'Key was stollen';
|
||||||
|
case SWEKEY_STATUS_FEE_DUE : return 'The annual fee was not paid';
|
||||||
|
case SWEKEY_STATUS_OBSOLETE : return 'Key no longer supported';
|
||||||
|
case SWEKEY_STATUS_REPLACED : return 'This key has been replaced by a backup key';
|
||||||
|
case SWEKEY_STATUS_BACKUP_KEY : return 'This key is a backup key that is not activated yet';
|
||||||
|
case SWEKEY_STATUS_NOTPLUGGED : return 'This key is not plugged in the computer';
|
||||||
|
case SWEKEY_STATUS_UNKOWN : return 'Unknow Status, could not connect to the authentication server';
|
||||||
|
}
|
||||||
|
return 'unknown status '.$status;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* If your web site requires a key to login you should check that the key
|
||||||
|
* is still valid (has not been lost or stolen) before requiring it.
|
||||||
|
* A key can be authenticated only if its status is SWEKEY_STATUS_OK
|
||||||
|
* @param id The id of the swekey
|
||||||
|
* @return The status of the swekey
|
||||||
|
* @access public
|
||||||
|
*/
|
||||||
|
function Swekey_GetStatus($id)
|
||||||
|
{
|
||||||
|
global $gSwekeyStatusServer;
|
||||||
|
$res = Swekey_HttpGet($gSwekeyStatusServer.'/GET-STATUS/'.$id, $response_code);
|
||||||
|
if ($response_code == 200)
|
||||||
|
return intval($res);
|
||||||
|
|
||||||
|
return SWEKEY_STATUS_UNKOWN;
|
||||||
|
}
|
||||||
|
|
||||||
|
?>
|
@@ -1,6 +1,6 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
// This url is triggered when a feebee is unplugged
|
// This url is triggered when a swekey is unplugged
|
||||||
|
|
||||||
parse_str($_SERVER['QUERY_STRING']);
|
parse_str($_SERVER['QUERY_STRING']);
|
||||||
session_id($session_to_unset);
|
session_id($session_to_unset);
|
@@ -154,12 +154,12 @@ $cfg['Servers'][$i]['controlpass'] = '';
|
|||||||
$cfg['Servers'][$i]['auth_type'] = 'config';
|
$cfg['Servers'][$i]['auth_type'] = 'config';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* File containing Feebee ids and login names (see /contrib);
|
* File containing Swekey ids and login names (see /contrib);
|
||||||
* leave empty to deactivate Feebee hardware authentication
|
* leave empty to deactivate Swekey hardware authentication
|
||||||
*
|
*
|
||||||
* @global string $cfg['Servers'][$i]['auth_feebee_config']
|
* @global string $cfg['Servers'][$i]['auth_swekey_config']
|
||||||
*/
|
*/
|
||||||
$cfg['Servers'][$i]['auth_feebee_config'] = '';
|
$cfg['Servers'][$i]['auth_swekey_config'] = '';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* MySQL user
|
* MySQL user
|
||||||
|
Reference in New Issue
Block a user