|
View:
New views
1 Messages
—
Rating Filter:
Alert me
|
|
|
last and complete: pam_cas and HTTP/1.1: a patch attached !Sorry for the triple-posting... I'll return to mutt soon ;)
We've had some problems because of our apache proxy for cas service being hosted as 'virtualhost': pam_cas couldn't validate any ticket with HTTP/1.0 protocol. Here is a little patch, adding a 'Host: ' header with the configured hostname, and changing CAS_PROT to HTTP/1.1. It works for us™ Hope this can help ... more than without patch ;) -- ___________________________________________________________ / *Geoffroy DESVERNAY* | \ /\ `Service info` | Tel: (+33|0)4 91 05 45 24 /\ \/ Ecole Centrale de Marseille | Fax: (+33|0)4 91 05 45 98 \/ \ (ex-EGIM) | Mail: dgeo@... / ----------------------------------------------------------- diff -bruN ../Pam_cas-2.0.11-esup-2.0.4.bak/sources/cas.h sources/cas.h --- ../Pam_cas-2.0.11-esup-2.0.4.bak/sources/cas.h 2006-05-23 13:52:02.000000000 +0200 +++ sources/cas.h 2008-06-25 17:28:37.000000000 +0200 @@ -35,7 +35,7 @@ #define DEFAULT_URI_VALIDATE "/proxyValidate" #define CAS_METHOD "GET" -#define CAS_PROT "HTTP/1.0" +#define CAS_PROT "HTTP/1.1" #define CAS_LEN_NETID 32 diff -bruN ../Pam_cas-2.0.11-esup-2.0.4.bak/sources/cas_validator.c sources/cas_validator.c --- ../Pam_cas-2.0.11-esup-2.0.4.bak/sources/cas_validator.c 2006-08-30 16:31:13.000000000 +0200 +++ sources/cas_validator.c 2008-06-25 17:31:28.000000000 +0200 @@ -140,14 +140,14 @@ full_request = malloc(strlen(CAS_METHOD) + strlen(" ") + strlen(config->uriValidate) + strlen("?ticket=") + strlen(ticket) + + strlen("&service=") + strlen(service) + strlen(" ") - + strlen(CAS_PROT) + strlen("\n\n") + 1); + + strlen(CAS_PROT) + strlen("\n") + strlen("Host: ") + strlen(config->host) + strlen("\n\n") + 1); if (full_request == NULL) { LOG("Error memory allocation%s\n", ""); END(CAS_ERROR_MEMORY_ALLOC); } - sprintf(full_request, "%s %s?ticket=%s&service=%s %s\n\n", - CAS_METHOD, config->uriValidate, ticket, service, CAS_PROT); + sprintf(full_request, "%s %s?ticket=%s&service=%s %s\nHost: %s\n\n", + CAS_METHOD, config->uriValidate, ticket, service, CAS_PROT, config->host); /* send request */ if (BIO_write(bio, full_request, strlen(full_request)) != strlen(full_request)) _______________________________________________ Yale CAS mailing list cas@... http://tp.its.yale.edu/mailman/listinfo/cas |
| Free Forum Powered by Nabble | Forum Help |