I am getting the following error after logging in through my universities CAS system.
phpCAS error: phpCAS::forceAuthentication(): one of the methods phpCAS::setCasServerCert(), phpCAS::setCasServerCACert() or phpCAS::setNoCasServerValidation() must be called. in /var/www/html/sites/all/modules/cas/cas.module on line 54
I am running the following:
Drupal 5.5
CAPTCHA Already 0 blocked form submissions
Configuration file Protected
Cron maintenance tasks Last run 22 hours 45 min ago
You can run cron manually.
Database schema Up to date
Drupal core update status Up to date
File system Writable (public download method)
GD library bundled (2.0.28 compatible)
Module update status Up to date
MySQL database 5.0.22
PHP 5.1.6
Unicode library PHP Mbstring Extension
Web server Apache/2.2.3 (CentOS)
Comments
Comment #1
metzlerd CreditAttribution: metzlerd commentedDo you know what version of the CAS client you are running? Which did you download?
Dave
Comment #2
jsloyer CreditAttribution: jsloyer commentedphpcas-0.6.0-RC4
Comment #3
jsloyer CreditAttribution: jsloyer commentedI just switched to phpcas-0.5.1-1 and that seems to be partially working. I can log in with CAS now but a blank white page comes up without anything, if you refresh the url, it will go to a page in Drupal, page not found.
I have copied part of the Apache error log, it looks like an issue with pathauto. I have removed parts of the log for security.
[Wed Dec 12 22:28:04 2007] [error] [client xxx.xxx.xxx.xxx] PHP Fatal error: Call to undefined function token_get_values() in /var/www/html/sites/all/modules/pathauto/pathauto.inc on line 354, referer: https://auth.domain.edu/login?service=https%3A%2F%2Fsite.subdomain.domai...
Comment #4
metzlerd CreditAttribution: metzlerd commentedYes, it looks like I'm going to need to add some new configuration options to fully support the 0.6 version. I think you would get this function not found problem with path-auto regardless of the cas version. You might consider trying to turn caching off to see if the undefined function calls go away.
The problem is that we invoke a user login, and when page caching is on, certain functions are not available.
Alternatively, download the Devel module and use it to adjust module weights so that CAS loads later in the module list. It might help alleviate some of these problems.
I'll leave this active and get back to a patch for the new version of PHPcas.
Dave
Comment #5
metzlerd CreditAttribution: metzlerd commentedIn HEAD, I updated the code so that it supports the new PEM Cert options in phpCAS 0.6 RC4. I haven't been able to get the certificate authentications to fail no matter what I put in, but at least the phpCAS api has support for the new feature now. Default is to not authenticate the certificate. But no errors are thrown for the client now in this version. Will be testing with older versions of CAS back at the office for backwards compatibiiity.
Dave
Comment #6
jsloyer CreditAttribution: jsloyer commentedI just checked my config. Caching is turned off. I also tried changing the weight of module to 10 and still no luck.
If it helps, I am hitting the following URL,
https://site.subdomain.domain.edu/?q=cas&ticket=ST-32653-HHnPe52a2Ab4nWM...
The above URL is what Apache is choking on with the PHP pathauto error.
Comment #7
jsloyer CreditAttribution: jsloyer commentedI found a quick and dirty fix to fix the problem with token not being found. Inside of cas.module I added
Comment #8
jdleonardThe problem finding token.inc is no longer an issue in Token >5.x-1.9 (5.x-1.x-dev) because token.inc has been merged into token.module.
Comment #9
metzlerd CreditAttribution: metzlerd commentedClosing this then. It's really about the phpCAS version support and not token.inc