httpd-cvs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From traw...@apache.org
Subject cvs commit: httpd-2.0/server listen.c
Date Fri, 22 Nov 2002 12:23:10 GMT
trawick     2002/11/22 04:23:10

  Modified:    .        CHANGES
               server   listen.c
  Log:
  Fix critical bug in new --enable-v4-mapped configure option
  implementation which broke IPv4 listening sockets on
  systems with IPV6_V6ONLY socket option.
  
  That option should only be done on IPv6 listening sockets.
  
  Submitted by:	hiroyuki hanai <hanai@imgsrc.co.jp>]
  Reviewed by:	Jeff Trawick
  
  Revision  Changes    Path
  1.989     +4 -0      httpd-2.0/CHANGES
  
  Index: CHANGES
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/CHANGES,v
  retrieving revision 1.988
  retrieving revision 1.989
  diff -u -r1.988 -r1.989
  --- CHANGES	21 Nov 2002 23:53:20 -0000	1.988
  +++ CHANGES	22 Nov 2002 12:23:09 -0000	1.989
  @@ -1,5 +1,9 @@
   Changes with Apache 2.0.44
   
  +  *) Fix critical bug in new --enable-v4-mapped configure option
  +     implementation which broke IPv4 listening sockets on some
  +     systems.  [hiroyuki hanai <hanai@imgsrc.co.jp>]
  +
     *) mod_autoindex: AddDescription directives for directories
        now work as in Apache 1.3, where no trailing '/' is
        specified on the directory name.  Previously, the trailing
  
  
  
  1.84      +10 -8     httpd-2.0/server/listen.c
  
  Index: listen.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/server/listen.c,v
  retrieving revision 1.83
  retrieving revision 1.84
  diff -u -r1.83 -r1.84
  --- listen.c	14 Nov 2002 14:17:11 -0000	1.83
  +++ listen.c	22 Nov 2002 12:23:10 -0000	1.84
  @@ -118,14 +118,16 @@
       }
   
   #if APR_HAVE_IPV6
  -    stat = apr_socket_opt_set(s, APR_IPV6_V6ONLY, v6only_setting);
  -    if (stat != APR_SUCCESS && stat != APR_ENOTIMPL) {
  -        ap_log_perror(APLOG_MARK, APLOG_CRIT, stat, p,
  -                      "make_sock: for address %pI, apr_socket_opt_set: "
  -                      "(IPV6_V6ONLY)",
  -                      server->bind_addr);
  -        apr_socket_close(s);
  -        return stat;
  +    if (server->bind_addr->family == APR_INET6) {
  +        stat = apr_socket_opt_set(s, APR_IPV6_V6ONLY, v6only_setting);
  +        if (stat != APR_SUCCESS && stat != APR_ENOTIMPL) {
  +            ap_log_perror(APLOG_MARK, APLOG_CRIT, stat, p,
  +                          "make_sock: for address %pI, apr_socket_opt_set: "
  +                          "(IPV6_V6ONLY)",
  +                          server->bind_addr);
  +            apr_socket_close(s);
  +            return stat;
  +        }
       }
   #endif
   
  
  
  

Mime
View raw message