[Privoxy-commits] [privoxy] 12/19: change_encrypted_request_destination(): Keep the original port instead of defaulting to 443
User Git
git at git.privoxy.org
Sun Jan 10 15:50:51 UTC 2021
This is an automated email from the git hooks/post-receive script.
git pushed a commit to branch master
in repository privoxy.
commit 594cdeca7423ba3fb23a3b7fe274a054b41e23da
Author: Fabian Keil <fk at fabiankeil.de>
AuthorDate: Thu Jan 7 14:13:55 2021 +0100
change_encrypted_request_destination(): Keep the original port instead of defaulting to 443
... when the rewritten request line does not contain a host and port.
---
jcc.c | 15 +++++++++++++--
1 file changed, 13 insertions(+), 2 deletions(-)
diff --git a/jcc.c b/jcc.c
index ff390f1a..a805f0b2 100644
--- a/jcc.c
+++ b/jcc.c
@@ -2556,6 +2556,7 @@ static jb_err change_encrypted_request_destination(struct client_state *csp)
{
jb_err err;
char *original_host = csp->http->host;
+ int original_port = csp->http->port;
log_error(LOG_LEVEL_REDIRECTS, "Rewrite detected: %s",
csp->https_headers->first->str);
@@ -2572,22 +2573,32 @@ static jb_err change_encrypted_request_destination(struct client_state *csp)
if (csp->http->host == NULL)
{
+ char port_string[10];
/*
* The rewritten request line did not specify a host
* which means we can use the original host specified
* by the client.
*/
csp->http->host = original_host;
+ csp->http->port = original_port;
log_error(LOG_LEVEL_REDIRECTS, "Keeping the original host: %s",
csp->http->host);
/*
* If the rewritten request line didn't contain a host
* it also didn't contain a port so we can reuse the host
- * and set the port to 443.
+ * port.
*/
freez(csp->http->hostport);
csp->http->hostport = strdup_or_die(csp->http->host);
- csp->http->port = 443;
+ snprintf(port_string, sizeof(port_string), ":%d", original_port);
+ err = string_append(&csp->http->hostport, port_string);
+ if (err != JB_ERR_OK)
+ {
+ log_error(LOG_LEVEL_ERROR, "Failed to rebuild hostport: %s.",
+ jb_err_to_string(err));
+ return err;
+ }
+
/*
* While the request line didn't mention it,
* we're https-inspecting and want to speak TLS
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
More information about the Privoxy-commits
mailing list