From 8859fe342be9014f4763cbe39e63e4119fe61054 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20OUDOT?= Date: Wed, 3 Apr 2019 17:54:58 +0200 Subject: [PATCH] Fix setHiddenFormValue (#1692) --- .../lib/Lemonldap/NG/Portal/Issuer/OpenIDConnect.pm | 7 ++++--- lemonldap-ng-portal/lib/Lemonldap/NG/Portal/Main/Run.pm | 2 +- .../lib/Lemonldap/NG/Portal/Plugins/Upgrade.pm | 2 +- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/lemonldap-ng-portal/lib/Lemonldap/NG/Portal/Issuer/OpenIDConnect.pm b/lemonldap-ng-portal/lib/Lemonldap/NG/Portal/Issuer/OpenIDConnect.pm index 36875dc61..f9412fdd1 100644 --- a/lemonldap-ng-portal/lib/Lemonldap/NG/Portal/Issuer/OpenIDConnect.pm +++ b/lemonldap-ng-portal/lib/Lemonldap/NG/Portal/Issuer/OpenIDConnect.pm @@ -198,8 +198,8 @@ sub run { "Override $_ OIDC param by value present in request parameter" ); $oidc_request->{$_} = $request->{$_}; - $self->p->setHiddenFormValue( $req, $_, $request->{$_}, - '' ); + $self->p->setHiddenFormValue( $req, $_, $request->{$_}, '', + 0 ); } } @@ -855,7 +855,8 @@ sub run { $self->logger->debug( "OIDC request parameter $param: " . $oidc_request->{$param} ); $self->p->setHiddenFormValue( $req, $param, - $oidc_request->{$param}, '' ); + $oidc_request->{$param}, + '', 0 ); } } diff --git a/lemonldap-ng-portal/lib/Lemonldap/NG/Portal/Main/Run.pm b/lemonldap-ng-portal/lib/Lemonldap/NG/Portal/Main/Run.pm index 023ec89b1..72bdf4553 100644 --- a/lemonldap-ng-portal/lib/Lemonldap/NG/Portal/Main/Run.pm +++ b/lemonldap-ng-portal/lib/Lemonldap/NG/Portal/Main/Run.pm @@ -636,7 +636,7 @@ sub setHiddenFormValue { if ( defined $val or !( $val & ~$val ) ) { $key = $prefix . $key; - #$val =~ s/\+/%2B/g; + $val = encode_base64($val) if $base64; $req->{portalHiddenFormValues}->{$key} = $val; $self->logger->debug("Store $val in hidden key $key"); } diff --git a/lemonldap-ng-portal/lib/Lemonldap/NG/Portal/Plugins/Upgrade.pm b/lemonldap-ng-portal/lib/Lemonldap/NG/Portal/Plugins/Upgrade.pm index 42b920959..b61e276ca 100644 --- a/lemonldap-ng-portal/lib/Lemonldap/NG/Portal/Plugins/Upgrade.pm +++ b/lemonldap-ng-portal/lib/Lemonldap/NG/Portal/Plugins/Upgrade.pm @@ -76,7 +76,7 @@ sub confirm { $self->p->setHiddenFormValue( $req, upgrading => $self->ott->createToken, - '' + '', 0 ); # Insert token return $self->p->login($req); }