diff options
author | Rob Crittenden <rcritten@redhat.com> | 2015-08-06 15:12:16 +0000 |
---|---|---|
committer | Patrick Uiterwijk <puiterwijk@redhat.com> | 2015-08-11 12:10:50 +0200 |
commit | a69505f662aadfd38c31ebadab18e1beccc1b95c (patch) | |
tree | 865bfe0e5aaf17a9b535a372313cda651ea67795 | |
parent | ce2bbec3f2a010cfa26363a91a6224efe484f06f (diff) | |
download | ipsilon-a69505f662aadfd38c31ebadab18e1beccc1b95c.tar.gz ipsilon-a69505f662aadfd38c31ebadab18e1beccc1b95c.tar.xz ipsilon-a69505f662aadfd38c31ebadab18e1beccc1b95c.zip |
Use full path when constructing "Other authentication methods"
It was previously providing just a relative path and if the paths
overlapped I guess the browser was trying to smash them together.
This would result in a double "gssapi" in the gssapi URL like:
https://my.ipsilon.org/idp/login/gssapi/gssapi/negotiate?ips...
Don't rely on the browser to get the path right, use self.basepath.
https://fedorahosted.org/ipsilon/ticket/153
Signed-off-by: Rob Crittenden <rcritten@redhat.com>
Reviewed-by: Simo Sorce <simo@redhat.com>
-rw-r--r-- | ipsilon/login/common.py | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/ipsilon/login/common.py b/ipsilon/login/common.py index 31053a0..cd4f166 100644 --- a/ipsilon/login/common.py +++ b/ipsilon/login/common.py @@ -184,7 +184,9 @@ class LoginFormBase(LoginPageBase): if other_login_stacks: other_stacks = list() for ls in other_login_stacks: - url = '%s?%s' % (ls.path, self.trans.get_GET_arg()) + url = '%s/login/%s?%s' % ( + self.basepath, ls.path, self.trans.get_GET_arg() + ) name = ls.name other_stacks.append({'url': url, 'name': name}) |