cas_logout formats the destination url incorrectly

jwbuzz - June 4, 2009 - 15:05
Project:CAS
Version:5.x-4.x-dev
Component:Code
Category:bug report
Priority:normal
Assigned:metzlerd
Status:closed
Description

After updating to the 5.x-4.x-dev version (in order to get single sign-out), the caslogout call quit working. I added a debug statement and dumped the $logout_destination variable to the error log and it's formatted like this:

https://cas.mydomain.com/cas/logout?destination=/?Array&service=/?Array&...

#1

jwbuzz - June 4, 2009 - 15:21

This is happening because the call to url() around line 720 is passing an array as the 2nd arg. Looks like this is the D6 format for the function instead of the D5. Will try to get a patch going for it.

#2

jwbuzz - June 4, 2009 - 15:24

I believe that all that needs to be done is to change this line

$destination = url($destination, array('absolute' => TRUE));

To this:

$destination = url($destination, null,null,TRUE);

Any way that can be done for the dev 5.x-4.x-dev branch?

#3

metzlerd - June 4, 2009 - 15:29

Yep my bad. I was just jumping in to look at that too.

Thanks for the fix, here's the patch. I'll commit this immediately, but it will take up to 12 hours for a new release to be rolled.

AttachmentSize
cas-482080.patch 886 bytes

#4

metzlerd - June 4, 2009 - 15:32
Assigned to:Anonymous» metzlerd
Status:active» fixed

Commited to 5.x.4 branch.

#5

System Message - June 18, 2009 - 15:40
Status:fixed» closed

Automatically closed -- issue fixed for 2 weeks with no activity.

 
 

Drupal is a registered trademark of Dries Buytaert.