1 |
unnilennium |
1.1 |
diff -Nur mod_auth_tkt-2.1.0.old/src/mod_auth_tkt.c mod_auth_tkt-2.1.0/src/mod_auth_tkt.c |
2 |
|
|
--- mod_auth_tkt-2.1.0.old/src/mod_auth_tkt.c 2009-07-10 03:46:51.000000000 -0400 |
3 |
|
|
+++ mod_auth_tkt-2.1.0/src/mod_auth_tkt.c 2016-06-13 04:57:55.934000000 -0400 |
4 |
|
|
@@ -1188,6 +1188,7 @@ |
5 |
|
|
char *back_arg_name = conf->back_arg_name; |
6 |
|
|
char *url, *cookie, *back; |
7 |
|
|
const char *hostinfo = 0; |
8 |
|
|
+ char *xproto = 0 ; |
9 |
|
|
int port; |
10 |
|
|
|
11 |
|
|
/* Get the scheme we use (http or https) */ |
12 |
|
|
@@ -1206,6 +1207,10 @@ |
13 |
|
|
/* Use X-Forward-Host header for host:port info if available */ |
14 |
|
|
/* Failing that, use Host header */ |
15 |
|
|
hostinfo = apr_table_get(r->headers_in, "X-Forwarded-Host"); |
16 |
|
|
+ xproto = apr_table_get(r->headers_in, "X-Forwarded-Proto"); |
17 |
|
|
+ if ( xproto && (strncasecmp(xproto, "http", 4) == 0) ) { |
18 |
|
|
+ scheme= xproto; |
19 |
|
|
+ } |
20 |
|
|
if (! hostinfo) hostinfo = apr_table_get(r->headers_in, "Host"); |
21 |
|
|
if (! hostinfo) { |
22 |
|
|
/* Fallback to using r->hostname and the server port. This usually |