***************
*** 626,632 ****
      }
  #endif
  
-     s->port = 0;
      s->server_admin = NULL;
      s->server_hostname = NULL; 
      s->error_fname = NULL;
--- 626,631 ----
      }
  #endif
  
      s->server_admin = NULL;
      s->server_hostname = NULL; 
      s->error_fname = NULL;
***************
*** 634,640 ****
      s->access_confname = NULL;
      s->timeout = 0;
      s->do_rfc931 = 0;
!     s->host_addr.s_addr = get_virthost_addr (hostname, 0);
      s->next = NULL;
  
      s->module_config = create_empty_config (p);
--- 633,640 ----
      s->access_confname = NULL;
      s->timeout = 0;
      s->do_rfc931 = 0;
!     s->host_addr.s_addr = get_virthost_addr (hostname, &s->host_port);
!     s->port = s->host_port;  /* set them the same, by default */
      s->next = NULL;
  
      s->module_config = create_empty_config (p);
***************
*** 645,651 ****
  
  int is_virtual_server (server_rec *s)
  {
!     return s->host_addr.s_addr != htonl (INADDR_ANY);
  }
  
  void fixup_virtual_hosts (pool *p, server_rec *main_server)
--- 645,651 ----
  
  int is_virtual_server (server_rec *s)
  {
!     return s->is_virtual;
  }
  
  void fixup_virtual_hosts (pool *p, server_rec *main_server)
***************
*** 700,705 ****
      pid_fname = DEFAULT_PIDLOG;
      max_requests_per_child = DEFAULT_MAX_REQUESTS_PER_CHILD;
      bind_address.s_addr = htonl(INADDR_ANY);
  }
  
  server_rec *init_server_config(pool *p)
--- 700,706 ----
      pid_fname = DEFAULT_PIDLOG;
      max_requests_per_child = DEFAULT_MAX_REQUESTS_PER_CHILD;
      bind_address.s_addr = htonl(INADDR_ANY);
+     listeners = NULL;
  }
  
  server_rec *init_server_config(pool *p)
***************
*** 719,724 ****
  					       * don't match any real network
  					       * interface.
  					       */
  
      s->module_config = create_server_config (p, s);
      s->lookup_defaults = create_default_per_dir_config (p);
--- 720,726 ----
  					       * don't match any real network
  					       * interface.
  					       */
+     s->host_port = 0; /* matches any port */
  
      s->module_config = create_server_config (p, s);
      s->lookup_defaults = create_default_per_dir_config (p);
