Author: jfthomps
Date: Thu Apr  5 17:26:57 2012
New Revision: 1309960

URL: http://svn.apache.org/viewvc?rev=1309960&view=rev
Log:
VCL-497
dedup eppn

shibauth/index.php: added code to ignore anything after a ';' in the eppn

Modified:
    incubator/vcl/trunk/web/shibauth/index.php

Modified: incubator/vcl/trunk/web/shibauth/index.php
URL: 
http://svn.apache.org/viewvc/incubator/vcl/trunk/web/shibauth/index.php?rev=1309960&r1=1309959&r2=1309960&view=diff
==============================================================================
--- incubator/vcl/trunk/web/shibauth/index.php (original)
+++ incubator/vcl/trunk/web/shibauth/index.php Thu Apr  5 17:26:57 2012
@@ -36,7 +36,8 @@ if(! array_key_exists('eppn', $_SERVER) 
 
        # check for eppn; if there, see if it is a user we already have
        if(array_key_exists('eppn', $_SERVER)) {
-               $tmp = explode('@', $_SERVER['eppn']);
+               $tmp = explode(';', $_SERVER['eppn']);
+               $tmp = explode('@', $tmp[0]);
                $query = "SELECT u.firstname, "
                                 .        "u.lastname "
                                 . "FROM user u, "
@@ -103,7 +104,8 @@ if(! $keys['public'])
        abort(7);
 
 # get VCL affiliation from shib affiliation
-$tmp = explode('@', $_SERVER['eppn']);
+$tmp = explode(';', $_SERVER['eppn']);
+$tmp = explode('@', $tmp[0]);
 $username = strtolower($tmp[0]);
 $tmp1 = mysql_escape_string(strtolower($tmp[1]));
 $query = "SELECT name, shibonly FROM affiliation WHERE shibname = '$tmp1'";
@@ -193,7 +195,7 @@ $shibdata = array('Shib-Application-ID' 
                   'Shib-Identity-Provider' => 
$_SERVER['Shib-Identity-Provider'],
                   'Shib-AuthnContext-Dec' => 
$_SERVER['Shib-AuthnContext-Decl'],
                   'Shib-logouturl' => $_SERVER['Shib-logouturl'],
-                  'eppn' => $_SERVER['Shib-logouturl'],
+                  'eppn' => $_SERVER['eppn'],
                   'unscoped-affiliation' => $_SERVER['unscoped-affiliation'],
                   'affiliation' => $_SERVER['affiliation'],
 );


Reply via email to