View | Details | Raw Unified | Return to bug 196139 | Differences between
and this patch

Collapse All | Expand All

(-)modules/ssl/ssl_engine_init.c (-1 / +7 lines)
Lines 353-361 Link Here
353
            return ssl_die(s);
353
            return ssl_die(s);
354
        }
354
        }
355
355
356
#ifdef ENGINE_CTRL_CHIL_SET_FORKCHECK
356
        if (strEQ(mc->szCryptoDevice, "chil")) {
357
        if (strEQ(mc->szCryptoDevice, "chil")) {
357
            ENGINE_ctrl(e, ENGINE_CTRL_CHIL_SET_FORKCHECK, 1, 0, 0);
358
            ENGINE_ctrl(e, ENGINE_CTRL_CHIL_SET_FORKCHECK, 1, 0, 0);
358
        }
359
        }
360
#endif
359
361
360
        if (!ENGINE_set_default(e, ENGINE_METHOD_ALL)) {
362
        if (!ENGINE_set_default(e, ENGINE_METHOD_ALL)) {
361
            ap_log_error(APLOG_MARK, APLOG_EMERG, 0, s, APLOGNO(01889)
363
            ap_log_error(APLOG_MARK, APLOG_EMERG, 0, s, APLOGNO(01889)
Lines 828-834 Link Here
828
        }
830
        }
829
    }
831
    }
830
832
831
    n = SSL_CTX_use_certificate_chain(mctx->ssl_ctx,
833
#ifndef HAVE_SSL_CTX_USE_CERTIFICATE_CHAIN
834
          n = SSL_CTX_use_certificate_chain(mctx->ssl_ctx,
835
#else
836
          n = _SSL_CTX_use_certificate_chain(mctx->ssl_ctx,
837
#endif
832
                                      (char *)chain,
838
                                      (char *)chain,
833
                                      skip_first, NULL);
839
                                      skip_first, NULL);
834
    if (n < 0) {
840
    if (n < 0) {
(-)modules/ssl/ssl_util_ssl.c (+4 lines)
Lines 460-466 Link Here
460
 * format, possibly followed by a sequence of CA certificates that
460
 * format, possibly followed by a sequence of CA certificates that
461
 * should be sent to the peer in the SSL Certificate message.
461
 * should be sent to the peer in the SSL Certificate message.
462
 */
462
 */
463
#ifndef HAVE_SSL_CTX_USE_CERTIFICATE_CHAIN
463
int SSL_CTX_use_certificate_chain(
464
int SSL_CTX_use_certificate_chain(
465
#else
466
int _SSL_CTX_use_certificate_chain(
467
#endif
464
    SSL_CTX *ctx, char *file, int skipfirst, pem_password_cb *cb)
468
    SSL_CTX *ctx, char *file, int skipfirst, pem_password_cb *cb)
465
{
469
{
466
    BIO *bio;
470
    BIO *bio;
(-)modules/ssl/ssl_util_ssl.h (+4 lines)
Lines 69-75 Link Here
69
BOOL        SSL_X509_match_name(apr_pool_t *, X509 *, const char *, BOOL, server_rec *);
69
BOOL        SSL_X509_match_name(apr_pool_t *, X509 *, const char *, BOOL, server_rec *);
70
BOOL        SSL_X509_INFO_load_file(apr_pool_t *, STACK_OF(X509_INFO) *, const char *);
70
BOOL        SSL_X509_INFO_load_file(apr_pool_t *, STACK_OF(X509_INFO) *, const char *);
71
BOOL        SSL_X509_INFO_load_path(apr_pool_t *, STACK_OF(X509_INFO) *, const char *);
71
BOOL        SSL_X509_INFO_load_path(apr_pool_t *, STACK_OF(X509_INFO) *, const char *);
72
#ifndef HAVE_SSL_CTX_USE_CERTIFICATE_CHAIN
72
int         SSL_CTX_use_certificate_chain(SSL_CTX *, char *, int, pem_password_cb *);
73
int         SSL_CTX_use_certificate_chain(SSL_CTX *, char *, int, pem_password_cb *);
74
#else
75
int         _SSL_CTX_use_certificate_chain(SSL_CTX *, char *, int, pem_password_cb *);
76
#endif
73
char       *SSL_SESSION_id2sz(unsigned char *, int, char *, int);
77
char       *SSL_SESSION_id2sz(unsigned char *, int, char *, int);
74
78
75
#endif /* __SSL_UTIL_SSL_H__ */
79
#endif /* __SSL_UTIL_SSL_H__ */
(-)modules/ssl/ssl_engine_rand.c (+2 lines)
Lines 81-86 Link Here
81
                nDone += ssl_rand_feedfp(p, fp, pRandSeed->nBytes);
81
                nDone += ssl_rand_feedfp(p, fp, pRandSeed->nBytes);
82
                ssl_util_ppclose(s, p, fp);
82
                ssl_util_ppclose(s, p, fp);
83
            }
83
            }
84
#ifdef HAVE_RAND_EGD
84
            else if (pRandSeed->nSrc == SSL_RSSRC_EGD) {
85
            else if (pRandSeed->nSrc == SSL_RSSRC_EGD) {
85
                /*
86
                /*
86
                 * seed in contents provided by the external
87
                 * seed in contents provided by the external
Lines 90-95 Link Here
90
                    continue;
91
                    continue;
91
                nDone += n;
92
                nDone += n;
92
            }
93
            }
94
#endif
93
            else if (pRandSeed->nSrc == SSL_RSSRC_BUILTIN) {
95
            else if (pRandSeed->nSrc == SSL_RSSRC_BUILTIN) {
94
                struct {
96
                struct {
95
                    time_t t;
97
                    time_t t;
(-)configure (-1 / +1 lines)
Lines 24885-24891 Link Here
24885
fi
24885
fi
24886
done
24886
done
24887
24887
24888
      for ac_func in ENGINE_init ENGINE_load_builtin_engines
24888
      for ac_func in ENGINE_init ENGINE_load_builtin_engines SSL_CTX_use_certificate_chain RAND_egd
24889
do :
24889
do :
24890
  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
24890
  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
24891
ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
24891
ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
(-)include/ap_config_auto.h.in (+6 lines)
Lines 130-135 Link Here
130
/* Define to 1 if you have the <pwd.h> header file. */
130
/* Define to 1 if you have the <pwd.h> header file. */
131
#undef HAVE_PWD_H
131
#undef HAVE_PWD_H
132
132
133
/* Define to 1 if you have the `RAND_egd' function. */
134
#undef HAVE_RAND_EGD
135
133
/* Define to 1 if you have the `setsid' function. */
136
/* Define to 1 if you have the `setsid' function. */
134
#undef HAVE_SETSID
137
#undef HAVE_SETSID
135
138
Lines 139-144 Link Here
139
/* Define to 1 if you have the `SSL_CTX_new' function. */
142
/* Define to 1 if you have the `SSL_CTX_new' function. */
140
#undef HAVE_SSL_CTX_NEW
143
#undef HAVE_SSL_CTX_NEW
141
144
145
/* Define to 1 if you have the `SSL_CTX_use_certificate_chain' function. */
146
#undef HAVE_SSL_CTX_USE_CERTIFICATE_CHAIN
147
142
/* Define to 1 if you have the <stdint.h> header file. */
148
/* Define to 1 if you have the <stdint.h> header file. */
143
#undef HAVE_STDINT_H
149
#undef HAVE_STDINT_H
144
150
(-)acinclude.m4 (-1 / +1 lines)
Lines 576-582 Link Here
576
      liberrors=""
576
      liberrors=""
577
      AC_CHECK_HEADERS([openssl/engine.h])
577
      AC_CHECK_HEADERS([openssl/engine.h])
578
      AC_CHECK_FUNCS([SSLeay_version SSL_CTX_new], [], [liberrors="yes"])
578
      AC_CHECK_FUNCS([SSLeay_version SSL_CTX_new], [], [liberrors="yes"])
579
      AC_CHECK_FUNCS([ENGINE_init ENGINE_load_builtin_engines])
579
      AC_CHECK_FUNCS([ENGINE_init ENGINE_load_builtin_engines SSL_CTX_use_certificate_chain RAND_egd])
580
      if test "x$liberrors" != "x"; then
580
      if test "x$liberrors" != "x"; then
581
        AC_MSG_WARN([OpenSSL libraries are unusable])
581
        AC_MSG_WARN([OpenSSL libraries are unusable])
582
      fi
582
      fi

Return to bug 196139