diff --git a/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Attributes.pm b/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Attributes.pm index 557dce2d2..622cee1ab 100644 --- a/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Attributes.pm +++ b/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Attributes.pm @@ -27,7 +27,7 @@ sub types { BEGIN { ${^WARNING_BITS} = -"\x54\x55\x55\x55\x15\x55\x55\x55\x55\x55\x51\x55\x55\x55\x55\x55\x55\x05"; +"\x54\x55\x55\x55\x15\x55\x55\x55\x55\x55\x51\x55\x55\x55\x55\x55\x55\x01"; } eval "$s $val"; my $err = join( @@ -662,7 +662,7 @@ sub attributes { BEGIN { ${^WARNING_BITS} = -"\x54\x55\x55\x55\x15\x55\x55\x55\x55\x55\x51\x55\x55\x55\x55\x55\x55\x05"; +"\x54\x55\x55\x55\x15\x55\x55\x55\x55\x55\x51\x55\x55\x55\x55\x55\x55\x01"; } eval "$s $val"; my $err = join( @@ -1026,7 +1026,7 @@ qr/^(?:\*\.)?(?:(?:(?:(?:[a-zA-Z0-9][-a-zA-Z0-9]*)?[a-zA-Z0-9])[.])*(?:[a-zA-Z][ BEGIN { ${^WARNING_BITS} = -"\x54\x55\x55\x55\x15\x55\x55\x55\x55\x55\x51\x55\x55\x55\x55\x55\x55\x05"; +"\x54\x55\x55\x55\x15\x55\x55\x55\x55\x55\x51\x55\x55\x55\x55\x55\x55\x01"; } eval $s; my $err = join( @@ -1111,7 +1111,7 @@ qr/^(?:\*\.)?(?:(?:(?:(?:[a-zA-Z0-9][-a-zA-Z0-9]*)?[a-zA-Z0-9])[.])*(?:[a-zA-Z][ BEGIN { ${^WARNING_BITS} = -"\x54\x55\x55\x55\x15\x55\x55\x55\x55\x55\x51\x55\x55\x55\x55\x55\x55\x05"; +"\x54\x55\x55\x55\x15\x55\x55\x55\x55\x55\x51\x55\x55\x55\x55\x55\x55\x01"; } eval "$s $val"; my $err = join( @@ -1134,7 +1134,7 @@ qr/^(?:\*\.)?(?:(?:(?:(?:[a-zA-Z0-9][-a-zA-Z0-9]*)?[a-zA-Z0-9])[.])*(?:[a-zA-Z][ BEGIN { ${^WARNING_BITS} = -"\x54\x55\x55\x55\x15\x55\x55\x55\x55\x55\x51\x55\x55\x55\x55\x55\x55\x05"; +"\x54\x55\x55\x55\x15\x55\x55\x55\x55\x55\x51\x55\x55\x55\x55\x55\x55\x01"; } eval "$s $val"; my $err = join( @@ -1489,7 +1489,7 @@ qr/^(?:\*\.)?(?:(?:(?:(?:[a-zA-Z0-9][-a-zA-Z0-9]*)?[a-zA-Z0-9])[.])*(?:[a-zA-Z][ BEGIN { ${^WARNING_BITS} = -"\x54\x55\x55\x55\x15\x55\x55\x55\x55\x55\x51\x55\x55\x55\x55\x55\x55\x05"; +"\x54\x55\x55\x55\x15\x55\x55\x55\x55\x55\x51\x55\x55\x55\x55\x55\x55\x01"; } eval $s; my $err = join( @@ -1526,7 +1526,7 @@ qr/^(?:\*\.)?(?:(?:(?:(?:[a-zA-Z0-9][-a-zA-Z0-9]*)?[a-zA-Z0-9])[.])*(?:[a-zA-Z][ BEGIN { ${^WARNING_BITS} = -"\x54\x55\x55\x55\x15\x55\x55\x55\x55\x55\x51\x55\x55\x55\x55\x55\x55\x05"; +"\x54\x55\x55\x55\x15\x55\x55\x55\x55\x55\x51\x55\x55\x55\x55\x55\x55\x01"; } eval "$s $val"; my $err = join( @@ -1885,7 +1885,7 @@ qr/^(?:\*\.)?(?:(?:(?:(?:[a-zA-Z0-9][-a-zA-Z0-9]*)?[a-zA-Z0-9])[.])*(?:[a-zA-Z][ BEGIN { ${^WARNING_BITS} = -"\x54\x55\x55\x55\x15\x55\x55\x55\x55\x55\x51\x55\x55\x55\x55\x55\x55\x05"; +"\x54\x55\x55\x55\x15\x55\x55\x55\x55\x55\x51\x55\x55\x55\x55\x55\x55\x01"; } eval "$s $val"; my $err = join( @@ -2222,7 +2222,7 @@ qr/^(?:\*\.)?(?:(?:(?:(?:[a-zA-Z0-9][-a-zA-Z0-9]*)?[a-zA-Z0-9])[.])*(?:[a-zA-Z][ BEGIN { ${^WARNING_BITS} = -"\x54\x55\x55\x55\x15\x55\x55\x55\x55\x55\x51\x55\x55\x55\x55\x55\x55\x05"; +"\x54\x55\x55\x55\x15\x55\x55\x55\x55\x55\x51\x55\x55\x55\x55\x55\x55\x01"; } eval "$s $val"; my $err = join( @@ -2925,7 +2925,7 @@ qr/(?:(?:https?):\/\/(?:(?:(?:(?:(?:(?:[a-zA-Z0-9][-a-zA-Z0-9]*)?[a-zA-Z0-9])[.] BEGIN { ${^WARNING_BITS} = -"\x54\x55\x55\x55\x15\x55\x55\x55\x55\x55\x51\x55\x55\x55\x55\x55\x55\x05"; +"\x54\x55\x55\x55\x15\x55\x55\x55\x55\x55\x51\x55\x55\x55\x55\x55\x55\x01"; } eval "$s $val"; my $err = join( @@ -3004,19 +3004,19 @@ qr/(?:(?:https?):\/\/(?:(?:(?:(?:(?:(?:[a-zA-Z0-9][-a-zA-Z0-9]*)?[a-zA-Z0-9])[.] 'default' => 0, 'select' => [ { - 'k' => 0, + 'k' => '0', 'v' => 'unsecuredCookie' }, { - 'k' => 1, + 'k' => '1', 'v' => 'securedCookie' }, { - 'k' => 2, + 'k' => '2', 'v' => 'doubleCookie' }, { - 'k' => 3, + 'k' => '3', 'v' => 'doubleCookieForSingleSession' } ], diff --git a/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Build/Attributes.pm b/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Build/Attributes.pm index fb078f2cb..f59e413a5 100644 --- a/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Build/Attributes.pm +++ b/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Build/Attributes.pm @@ -1059,12 +1059,12 @@ sub attributes { max2FDevices => { default => 10, type => 'int', - documentation => 'Register session timeout', + documentation => 'Maximum registered 2F devices', }, max2FDevicesNameLength => { default => 20, type => 'int', - documentation => 'Register session timeout', + documentation => 'Maximum 2F devices name length', }, # U2F diff --git a/lemonldap-ng-portal/lib/Lemonldap/NG/Portal/2F/Register/TOTP.pm b/lemonldap-ng-portal/lib/Lemonldap/NG/Portal/2F/Register/TOTP.pm index 5a73f5a05..1744e37f7 100644 --- a/lemonldap-ng-portal/lib/Lemonldap/NG/Portal/2F/Register/TOTP.pm +++ b/lemonldap-ng-portal/lib/Lemonldap/NG/Portal/2F/Register/TOTP.pm @@ -29,8 +29,6 @@ has ott => ( ); sub init { - my ($self) = @_; - $self->conf->{max2FDevices} ||= 10; return 1; } @@ -110,19 +108,15 @@ sub run { } # Check if user can register one more device - my $size = @$_2FDevices; - $self->logger->debug( - "Nbr 2FDevices = $size / $self->conf->{max2FDevices}"); - if ( $size > $self->conf->{max2FDevices} ) { - $self->userLogger->error("Max number of 2F devices is reached !!!"); - return $self->p->sendHtml( - $req, 'error', - params => { - RAW_ERROR => 'MaxNumberof2FDevicesReached', - AUTH_ERROR_TYPE => 'warning', + my $size = @$_2FDevices; + my $maxSize = $self->conf->{max2FDevices}; + $self->logger->debug( + "Nbr 2FDevices = $size / $maxSize"); + if ( $size > $maxSize ) { + $self->userLogger->error( + "Max number of 2F devices is reached !!!"); + return $self->p->sendError( $req, 'MaxNumberof2FDevicesReached', 200 ); } - ); - } push @{$_2FDevices}, { diff --git a/lemonldap-ng-portal/lib/Lemonldap/NG/Portal/2F/Register/U2F.pm b/lemonldap-ng-portal/lib/Lemonldap/NG/Portal/2F/Register/U2F.pm index c2bbac38e..183bd1b95 100644 --- a/lemonldap-ng-portal/lib/Lemonldap/NG/Portal/2F/Register/U2F.pm +++ b/lemonldap-ng-portal/lib/Lemonldap/NG/Portal/2F/Register/U2F.pm @@ -19,7 +19,6 @@ has logo => ( is => 'rw', default => 'u2f.png' ); sub init { my ($self) = @_; - $self->conf->{max2FDevices} ||= 10; return 0 unless $self->SUPER::init; return 1; } @@ -80,18 +79,13 @@ sub run { # Check if user can register one more device my $size = @$_2FDevices; + my $maxSize = $self->conf->{max2FDevices}; $self->logger->debug( - "Nbr 2FDevices = $size / $self->conf->{max2FDevices}"); - if ( $size > $self->conf->{max2FDevices} ) { + "Nbr 2FDevices = $size / $maxSize"); + if ( $size > $maxSize ) { $self->userLogger->error( "Max number of 2F devices is reached !!!"); - return $self->p->sendHtml( - $req, 'error', - params => { - RAW_ERROR => 'MaxNumberof2FDevicesReached', - AUTH_ERROR_TYPE => 'warning', - } - ); + return $self->p->sendError( $req, 'MaxNumberof2FDevicesReached', 200 ); } my $keyName = $req->param('keyName'); diff --git a/lemonldap-ng-portal/lib/Lemonldap/NG/Portal/2F/Register/Yubikey.pm b/lemonldap-ng-portal/lib/Lemonldap/NG/Portal/2F/Register/Yubikey.pm index 62b5de180..b335edaf6 100644 --- a/lemonldap-ng-portal/lib/Lemonldap/NG/Portal/2F/Register/Yubikey.pm +++ b/lemonldap-ng-portal/lib/Lemonldap/NG/Portal/2F/Register/Yubikey.pm @@ -24,7 +24,6 @@ has logo => ( is => 'rw', default => 'yubikey.png' ); sub init { my ($self) = @_; $self->conf->{yubikey2fPublicIDSize} ||= 12; - $self->conf->{max2FDevices} ||= 10; return 1; } @@ -81,20 +80,15 @@ sub run { } # Check if user can register one more device - my $size = @$_2FDevices; - $self->logger->debug( - "Nbr 2FDevices = $size / $self->conf->{max2FDevices}"); - if ( $size > $self->conf->{max2FDevices} ) { - $self->userLogger->error( - "Max number of 2F devices is reached !!!"); - return $self->p->sendHtml( - $req, 'error', - params => { - RAW_ERROR => 'MaxNumberof2FDevicesReached', - AUTH_ERROR_TYPE => 'warning', - } - ); - } + my $size = @$_2FDevices; + my $maxSize = $self->conf->{max2FDevices}; + $self->logger->debug( + "Nbr 2FDevices = $size / $maxSize"); + if ( $size > $maxSize ) { + $self->userLogger->error( + "Max number of 2F devices is reached !!!"); + return $self->p->sendError( $req, 'MaxNumberof2FDevicesReached', 200 ); + } push @{$_2FDevices}, {