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/04/03 00:07:09 UTC
cvs commit: httpd-2.0/modules/ssl ssl_util_ssl.c
dougm 02/04/02 14:07:09
Modified: modules/ssl ssl_util_ssl.c
Log:
fix SSL_X509_INFO_load_path so SSLProxyMachineCertificatePath works
Revision Changes Path
1.20 +10 -5 httpd-2.0/modules/ssl/ssl_util_ssl.c
Index: ssl_util_ssl.c
===================================================================
RCS file: /home/cvs/httpd-2.0/modules/ssl/ssl_util_ssl.c,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -r1.19 -r1.20
--- ssl_util_ssl.c 30 Mar 2002 01:41:35 -0000 1.19
+++ ssl_util_ssl.c 2 Apr 2002 22:07:09 -0000 1.20
@@ -444,8 +444,13 @@
STACK_OF(X509_INFO) *sk,
const char *pathname)
{
+ /* XXX: this dir read code is exactly the same as that in
+ * ssl_engine_init.c, only the call to handle the fullname is different,
+ * should fold the duplication.
+ */
apr_dir_t *dir;
apr_finfo_t dirent;
+ apr_int32_t finfo_flags = APR_FINFO_MIN|APR_FINFO_NAME;
const char *fullname;
BOOL ok = FALSE;
@@ -453,14 +458,14 @@
return FALSE;
}
- while ((apr_dir_read(&dirent, APR_FINFO_DIRENT, dir)) == APR_SUCCESS) {
+ while ((apr_dir_read(&dirent, finfo_flags, dir)) == APR_SUCCESS) {
+ if (dirent.filetype == APR_DIR) {
+ continue; /* don't try to load directories */
+ }
+
fullname = apr_pstrcat(ptemp,
pathname, "/", dirent.name,
NULL);
-
- if (dirent.filetype != APR_REG) {
- continue;
- }
if (SSL_X509_INFO_load_file(ptemp, sk, fullname)) {
ok = TRUE;