httpd-test-cvs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From aa...@apache.org
Subject cvs commit: httpd-test/flood STATUS config.h.in configure.in
Date Fri, 16 Nov 2001 22:38:13 GMT
aaron       01/11/16 14:38:12

  Modified:    flood    STATUS config.h.in configure.in
  Log:
  Added a new parameter --enable-ssl. SSL is enabled by default, so if you
  don't have the libs you either have to install them or pass --disable-ssl.
  
  Revamp of the --with-openssl arg to work with the new --enable-ssl arg.
  It now just adds the paths to the appropriate compiler/linker flags
  and moves on. I left in the -R flag for solaris, but I'm wondering if
  I forgot a crossplatform way to do this in libtool. Oh well.
  
  If SSL is enabled (ie not explicitly disabled) it must pass a number of
  criteria: existence of various headers, ability to link libssl and
  libcrypto (either from given env vars or appropriate --with-openssl
  parameters), and the openssl version must be at least 0.9.6. This last
  requirement may be further raised to 0.9.6b if the rumors of lower
  version crashing under higher load is true.
  
  Revision  Changes    Path
  1.19      +8 -8      httpd-test/flood/STATUS
  
  Index: STATUS
  ===================================================================
  RCS file: /home/cvs/httpd-test/flood/STATUS,v
  retrieving revision 1.18
  retrieving revision 1.19
  diff -u -r1.18 -r1.19
  --- STATUS	2001/10/17 22:18:17	1.18
  +++ STATUS	2001/11/16 22:38:12	1.19
  @@ -1,5 +1,5 @@
   flood STATUS:							-*-text-*-
  -Last modified at [$Date: 2001/10/17 22:18:17 $]
  +Last modified at [$Date: 2001/11/16 22:38:12 $]
   
   Release:
   
  @@ -28,10 +28,13 @@
         to recognize it.  However, all HTTP headers need to be normalized
         before checking their values.  This isn't easy to do.  Grr.
   
  -    * Autoconf should check that OpenSSL is version 0.9.6a or greater.
  -       Aaron says: <openssl/opensslv.h> defines OPENSSL_VERSION_NUMBER,
  -                   someone just needs to write an autoconf rule to check
  -                   for it.
  +    * OpenSSL 0.9.6
  +      Segfaults under high load.  Upgrade to OpenSSL 0.9.6b.
  +       Aaron says: I'll bump the required version number after I upgrade. :)
  +
  +    * FLOOD_HAS_OPENSSL is now a CPP defined symbol. Use it to optionally
  +      compile OpenSSL code so that we don't have to require OpenSSL any
  +      longer.
   
   Other features that need writing:
   
  @@ -129,6 +132,3 @@
         No one told BEA how to make an HTTP server.  Send it Connection: Close
         and a cookie, and it'll respond with Connection: Keep-Alive (no cookie
         and it honors Connection: Close).  That's wrong.
  -
  -    * OpenSSL 0.9.6
  -      Segfaults under high load.  Upgrade to OpenSSL 0.9.6b.
  
  
  
  1.17      +2 -0      httpd-test/flood/config.h.in
  
  Index: config.h.in
  ===================================================================
  RCS file: /home/cvs/httpd-test/flood/config.h.in,v
  retrieving revision 1.16
  retrieving revision 1.17
  diff -u -r1.16 -r1.17
  --- config.h.in	2001/08/24 04:26:39	1.16
  +++ config.h.in	2001/11/16 22:38:12	1.17
  @@ -64,6 +64,8 @@
   #define FLOOD_HAS_STRTOLL   @hasstrtoll@
   #define FLOOD_HAS_STRTOQ    @hasstrtoq@
   
  +#define FLOOD_HAS_OPENSSL   @flood_has_openssl@
  +
   #if !FLOOD_HAS_STRTOLL && FLOOD_HAS_STRTOQ
   #define strtoll(p, e, b) strtoq(p, e, b)
   #endif
  
  
  
  1.7       +50 -27    httpd-test/flood/configure.in
  
  Index: configure.in
  ===================================================================
  RCS file: /home/cvs/httpd-test/flood/configure.in,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- configure.in	2001/08/24 04:26:39	1.6
  +++ configure.in	2001/11/16 22:38:12	1.7
  @@ -13,11 +13,56 @@
   
   AC_CANONICAL_SYSTEM
   
  -dnl openssl-0.9.x/{include,lib}
   AC_ARG_WITH(openssl,
  -  [  --with-openssl=PATH     Prefix to openssl (default /pkg/openssl-0.9.6b)],
  -  [if test "$withval" = "yes"; then AC_MSG_ERROR('option --with-openssl requires a path');
else OPENSSL_PREFIX="$withval"; fi],
  -  [OPENSSL_PREFIX="/pkg/openssl-0.9.6b"])
  +  [  --with-openssl=PATH     Prefix to openssl],
  +[if test "$withval" = "yes"; then
  +  AC_MSG_ERROR('option --with-openssl requires a path')
  +else
  +  fl_openssl_prefix=$withval
  +
  +  if test "x$fl_openssl_prefix" != "x" -a ! -d "$fl_openssl_prefix"; then
  +    AC_MSG_ERROR('open --with-openssl requires a path to a directory')
  +  fi
  +
  +  dnl XXX: We could probably do some better checking here, like looking
  +  dnl for headers and libraries with an explicit path.
  +
  +  dnl Prefix these to the list, so they override env var settings
  +  CPPFLAGS="-I${fl_openssl_prefix}/include $CPPFLAGS"
  +  dnl We may need to also include $fl_openssl_prefix/openssl
  +  LDFLAGS="-L${fl_openssl_prefix}/lib $LDFLAGS"
  +
  +  case "$host" in
  +    *-solaris2*)
  +        LDFLAGS="$LDFLAGS -R${fl_openssl_prefix}/lib"
  +        ;;
  +    *linux*)
  +        ;;
  +  esac
  +
  +fi])
  +
  +dnl SSL is enabled by default
  +AC_ARG_ENABLE(ssl,
  +  [  --disable-ssl           Disable SSL support (enabled by default)],
  +[enable_ssl=$enableval],
  +[enable_ssl=yes])
  +
  +flood_has_openssl=0
  +if test "$enable_ssl" = "yes"; then
  +  AC_CHECK_HEADERS(openssl/ssl.h openssl/opensslv.h,,
  +    AC_MSG_ERROR('OpenSSL Headers not found at patch specified'))
  +  AC_TRY_COMPILE([#include <openssl/opensslv.h>],
  +    [#if (OPENSSL_VERSION_NUMBER < 0x0090600fL)
  +     #error You need OpenSSL version 0.9.6 or greater.
  +     #endif],,
  +    AC_MSG_ERROR('OpenSSL version 0.9.6 or greater required.'))
  +  
  +  AC_CHECK_LIB(crypto, SHA1, LIBS="$LIBS -lcrypto")
  +  dnl BIO_next only appears in newer versions of OpenSSL
  +  AC_CHECK_LIB(ssl, BIO_next, LIBS="$LIBS -lssl")
  +  flood_has_openssl=1
  +fi
   
   AC_ARG_WITH(randfile,
     [  --with-randfile=PATH    Path to a random file used by OpenSSL (default /tmp/.rnd)],
  @@ -47,29 +92,6 @@
   
   . $APR_SOURCE/APRVARS
   
  -EXTRA_CPPFLAGS="$EXTRA_CPPFLAGS -I${OPENSSL_PREFIX}/include"
  -
  -EXTRA_LDFLAGS="$EXTRA_LDFLAGS -L${OPENSSL_PREFIX}/lib"
  -
  -case "$host" in
  -  *-solaris2*)
  -      EXTRA_LDFLAGS="$EXTRA_LDFLAGS -R${OPENSSL_PREFIX}/lib"
  -      ;;
  -  *linux*)
  -      ;;
  -esac
  -
  -dnl Use our specified *FLAGS when testing for the libraries.
  -LDFLAGS="$LDFLAGS $EXTRA_LDFLAGS"
  -LIBS="$LIBS $EXTRA_LIBS"
  -CPPFLAGS="$CPPFLAGS $EXTRA_CPPFLAGS"
  -CFLAGS="$CFLAGS $EXTRA_CFLAGS"
  -
  -dnl Checks for libraries.
  -dnl Replace `main' with a function in -lcrypto:
  -AC_CHECK_LIB(crypto, SHA1)
  -AC_CHECK_LIB(ssl, SSL_library_init)
  -
   AC_CHECK_FUNC(strtoll, hasstrtoll="1", hasstrtoll="0")
   AC_CHECK_FUNC(strtoq, hasstrtoq="1", hasstrtoq="0")
   
  @@ -109,6 +131,7 @@
   AC_SUBST(prngrandom)
   AC_SUBST(hasstrtoll)
   AC_SUBST(hasstrtoq)
  +AC_SUBST(flood_has_openssl)
   
   dnl Makefile outputs
   dnl Note: There can only be one AC_OUTPUT command.
  
  
  

Mime
View raw message