summaryrefslogtreecommitdiffstats
path: root/ipsilon
diff options
context:
space:
mode:
authorPatrick Uiterwijk <puiterwijk@redhat.com>2014-10-10 20:11:59 +0200
committerPatrick Uiterwijk <puiterwijk@redhat.com>2014-10-24 18:03:28 +0200
commit5ea128eca075c19880419c072be36fd761aad4a4 (patch)
tree3eafea21ddaa998cb5a527811c09d4382df1b1ab /ipsilon
parent92291b4692864aad0aa4806eaf71e6e1cb354673 (diff)
downloadipsilon-5ea128eca075c19880419c072be36fd761aad4a4.tar.gz
ipsilon-5ea128eca075c19880419c072be36fd761aad4a4.tar.xz
ipsilon-5ea128eca075c19880419c072be36fd761aad4a4.zip
Show login target on the login screen
Signed-off-by: Patrick Uiterwijk <puiterwijk@redhat.com> Reviewed-by: Simo Sorce <simo@redhat.com>
Diffstat (limited to 'ipsilon')
-rwxr-xr-xipsilon/login/common.py3
-rwxr-xr-xipsilon/providers/openid/auth.py3
-rwxr-xr-xipsilon/providers/saml2/auth.py3
3 files changed, 7 insertions, 2 deletions
diff --git a/ipsilon/login/common.py b/ipsilon/login/common.py
index 6231997..94284b0 100755
--- a/ipsilon/login/common.py
+++ b/ipsilon/login/common.py
@@ -210,8 +210,10 @@ class LoginFormBase(LoginPageBase):
if username is None:
username = ''
+ target = None
if self.trans is not None:
tid = self.trans.transaction_id
+ target = self.trans.retrieve().get('login_target')
if tid is None:
tid = ''
@@ -224,6 +226,7 @@ class LoginFormBase(LoginPageBase):
"description": self.lm.help_text,
"next_url": next_url,
"username": username,
+ "login_target": target,
}
context.update(kwargs)
if self.trans is not None:
diff --git a/ipsilon/providers/openid/auth.py b/ipsilon/providers/openid/auth.py
index 868daf1..da110f7 100755
--- a/ipsilon/providers/openid/auth.py
+++ b/ipsilon/providers/openid/auth.py
@@ -90,7 +90,8 @@ class AuthenticateRequest(ProviderPageBase):
self.basepath, self.trans.get_GET_arg())
data = {'openid_stage': 'auth',
'openid_request': json.dumps(kwargs),
- 'login_return': returl}
+ 'login_return': returl,
+ 'login_target': request.trust_root}
self.trans.store(data)
redirect = '%s/login?%s' % (self.basepath,
self.trans.get_GET_arg())
diff --git a/ipsilon/providers/saml2/auth.py b/ipsilon/providers/saml2/auth.py
index 87f4ac8..49f73a9 100755
--- a/ipsilon/providers/saml2/auth.py
+++ b/ipsilon/providers/saml2/auth.py
@@ -127,7 +127,8 @@ class AuthenticateRequest(ProviderPageBase):
self.basepath, self.trans.get_GET_arg())
data = {'saml2_stage': 'auth',
'saml2_request': login.dump(),
- 'login_return': returl}
+ 'login_return': returl,
+ 'login_target': login.remoteProviderId}
self.trans.store(data)
redirect = '%s/login?%s' % (self.basepath,
self.trans.get_GET_arg())