From cf8a422ba66272e4d997f253965f421f7cb93507 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Andr=C3=A9=20Malo?= Date: Mon, 12 Jan 2004 22:36:32 +0000 Subject: [PATCH] make REMOTE_PORT available PR: 25772 git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102304 13f79535-47bb-0310-9956-ffa450edef68 --- CHANGES | 3 +++ modules/mappers/mod_rewrite.c | 9 ++++++--- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/CHANGES b/CHANGES index b7394cfc6c..421b500021 100644 --- a/CHANGES +++ b/CHANGES @@ -2,6 +2,9 @@ Changes with Apache 2.1.0-dev [Remove entries to the current 2.0 section below, when backported] + *) Make REMOTE_PORT variable available in mod_rewrite. + PR 25772. [André Malo] + *) Allow unescaped error logs via compile time switch "-DAP_ERROR_LOG_UNESCAPED". [Geoffrey Young , André Malo] diff --git a/modules/mappers/mod_rewrite.c b/modules/mappers/mod_rewrite.c index cc888383fc..2823418bce 100644 --- a/modules/mappers/mod_rewrite.c +++ b/modules/mappers/mod_rewrite.c @@ -1829,12 +1829,15 @@ static char *lookup_variable(char *var, rewrite_ctx *ctx) break; case 'O': - if (*var == 'R' && !strcmp(var, "REMOTE_HOST")) { + if (*var == 'S' && !strcmp(var, "SERVER_PORT")) { + return apr_psprintf(r->pool, "%u", ap_get_server_port(r)); + } + else if (var[7] == 'H' && !strcmp(var, "REMOTE_HOST")) { result = ap_get_remote_host(r->connection,r->per_dir_config, REMOTE_NAME, NULL); } - else if (!strcmp(var, "SERVER_PORT")) { - return apr_psprintf(r->pool, "%u", ap_get_server_port(r)); + else if (!strcmp(var, "REMOTE_PORT")) { + return apr_itoa(r->pool, r->connection->remote_addr->port); } break; -- 2.50.1