From 8cc808f1de3ae488d8a336c03280b25d26545f3c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20Oudot?= Date: Fri, 1 Oct 2010 09:34:42 +0000 Subject: [PATCH] IssuerOpenID: store only OpenID params in hidden fields (#177) --- .../lib/Lemonldap/NG/Portal/IssuerDBOpenID.pm | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/modules/lemonldap-ng-portal/lib/Lemonldap/NG/Portal/IssuerDBOpenID.pm b/modules/lemonldap-ng-portal/lib/Lemonldap/NG/Portal/IssuerDBOpenID.pm index 559cc2b53..f54da9572 100644 --- a/modules/lemonldap-ng-portal/lib/Lemonldap/NG/Portal/IssuerDBOpenID.pm +++ b/modules/lemonldap-ng-portal/lib/Lemonldap/NG/Portal/IssuerDBOpenID.pm @@ -94,9 +94,15 @@ sub issuerLogout { # setHiddenFormValue() sub storeOpenIDprm { my $self = shift; - delete( $self->{_prm}->{lmhidden_openidprm} ); - $self->setHiddenFormValue( 'openidprm', - Storable::nfreeze( $self->{_prm} ) ); + + # Store all openid.* parameters + my $params = {}; + foreach ( $self->{_prm} ) { + next if $_ !~ /^openid\./; + $params->{$_} = $self->{_prm}->{$_}; + } + + $self->setHiddenFormValue( 'openidprm', Storable::nfreeze($params) ); } ## @method private void restoreOpenIDprm()