1 |
diff -Nur mod_auth_tkt-2.3.99b1.old/src/mod_auth_tkt.c mod_auth_tkt-2.3.99b1/src/mod_auth_tkt.c |
2 |
--- mod_auth_tkt-2.3.99b1.old/src/mod_auth_tkt.c 2015-07-31 00:12:55.000000000 -0400 |
3 |
+++ mod_auth_tkt-2.3.99b1/src/mod_auth_tkt.c 2016-06-13 01:54:03.994000000 -0400 |
4 |
@@ -1225,6 +1225,7 @@ |
5 |
char *url = location; |
6 |
char *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 |
@@ -1243,6 +1244,9 @@ |
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 |
if (! hostinfo) hostinfo = apr_table_get(r->headers_in, "Host"); |
20 |
if (! hostinfo) { |
21 |
/* Fallback to using r->hostname and the server port. This usually |
22 |
|