You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by do...@apache.org on 2002/01/17 05:03:09 UTC

cvs commit: httpd-2.0/modules/ssl ssl_engine_vars.c

dougm       02/01/16 20:03:09

  Modified:    modules/ssl ssl_engine_vars.c
  Log:
  prevent possible segv if  SSL_get_current_cipher() returns NULL in
  ssl_var_lookup_ssl_cipher()
  
  Revision  Changes    Path
  1.12      +4 -2      httpd-2.0/modules/ssl/ssl_engine_vars.c
  
  Index: ssl_engine_vars.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/ssl/ssl_engine_vars.c,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- ssl_engine_vars.c	10 Jan 2002 04:55:19 -0000	1.11
  +++ ssl_engine_vars.c	17 Jan 2002 04:03:09 -0000	1.12
  @@ -552,8 +552,10 @@
       ssl = sslconn->ssl;
       ssl_var_lookup_ssl_cipher_bits(ssl, &usekeysize, &algkeysize);
   
  -    if (strEQ(var, ""))
  -        result = (ssl != NULL ? (char *)SSL_get_cipher_name(ssl) : NULL);
  +    if (ssl && strEQ(var, "")) {
  +        SSL_CIPHER *cipher = SSL_get_current_cipher(ssl);
  +        result = (cipher != NULL ? (char *)SSL_CIPHER_get_name(cipher) : NULL);
  +    }
       else if (strcEQ(var, "_EXPORT"))
           result = (usekeysize < 56 ? "true" : "false");
       else if (strcEQ(var, "_USEKEYSIZE")) {