diff -ur httpd-2.4.46/server/vhost.c httpd-2.4.46-aliases/server/vhost.c --- httpd-2.4.46/server/vhost.c 2019-07-18 16:55:35.000000000 +0300 +++ httpd-2.4.46-aliases/server/vhost.c 2020-08-18 15:02:15.070191309 +0300 @@ -424,6 +424,18 @@ return wild_match; } +static void print_array_elements(apr_file_t *f, const char *t, apr_array_header_t *a) { + if (a) { + char **e = (char **)a->elts; + int i; + for (i = 0; i < a->nelts; ++i) { + if (e[i]) { + apr_file_printf(f, t, "", e[i]); + } + } + } +} + #if APR_HAVE_IPV6 #define IS_IN6_ANYADDR(ad) ((ad)->family == APR_INET6 \ && IN6_IS_ADDR_UNSPECIFIED(&(ad)->sa.sin6.sin6_addr)) @@ -436,6 +448,9 @@ name_chain *nc; int len; char buf[MAX_STRING_LEN]; + char *alias_format = "%16s alias %s\n"; + char *wild_alias_format = "%16s wild alias %s\n"; + apr_sockaddr_t *ha = ic->sar->host_addr; if ((ha->family == APR_INET && ha->sa.sin.sin_addr.s_addr == INADDR_ANY) @@ -453,6 +468,8 @@ apr_file_printf(f, "%-22s %s (%s:%u)\n", buf, ic->server->server_hostname, ic->server->defn_name, ic->server->defn_line_number); + print_array_elements(f, alias_format, ic->server->names); + print_array_elements(f, wild_alias_format, ic->server->wild_names); return; } apr_file_printf(f, "%-22s is a NameVirtualHost\n" @@ -469,26 +486,8 @@ apr_file_printf(f, "namevhost %s (%s:%u)\n", nc->server->server_hostname, nc->server->defn_name, nc->server->defn_line_number); - if (nc->server->names) { - apr_array_header_t *names = nc->server->names; - char **name = (char **)names->elts; - int i; - for (i = 0; i < names->nelts; ++i) { - if (name[i]) { - apr_file_printf(f, "%16s alias %s\n", "", name[i]); - } - } - } - if (nc->server->wild_names) { - apr_array_header_t *names = nc->server->wild_names; - char **name = (char **)names->elts; - int i; - for (i = 0; i < names->nelts; ++i) { - if (name[i]) { - apr_file_printf(f, "%16s wild alias %s\n", "", name[i]); - } - } - } + print_array_elements(f, alias_format, nc->server->names); + print_array_elements(f, wild_alias_format, nc->server->wild_names); } }