Fix segfault and log proper error message if apr DBM driver cannot be loaded.
PR: 51751
Reviewed by: sf, trawick, rpluem
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.2.x@
1165381 13f79535-47bb-0310-9956-
ffa450edef68
-*- coding: utf-8 -*-
Changes with Apache 2.2.21
+ *) mod_dav_fs: Fix segfault if apr DBM driver cannot be loaded. PR 51751.
+ [Stefan Fritsch]
+
*) mod_alias: Adjust log severity of "incomplete redirection target"
message. PR 44020.
- *) mod_rewrite: Check validity of each internal (int:) RewriteMap even if the
- RewriteEngine is disabled in server context, avoiding a crash while
- referencing the invalid int: map at runtime. PR 50994.
- [Ben Noordhuis <info noordhuis nl>]
+ *) mod_rewrite: Check validity of each internal (int:) RewriteMap even if the
+ RewriteEngine is disabled in server context, avoiding a crash while
+ referencing the invalid int: map at runtime. PR 50994.
+ [Ben Noordhuis <info noordhuis nl>]
*) core: Add MaxRanges directive to control the number of ranges permitted
before returning the entire resource, with a default limit of 200.
PATCHES ACCEPTED TO BACKPORT FROM TRUNK:
[ start all new proposals below, under PATCHES PROPOSED. ]
- * mod_dav_fs: Fix segfault and log proper error message if apr DBM driver
- cannot be loaded. PR 51751
- Trunk patch: http://svn.apache.org/viewvc?rev=1133152&view=rev
- http://svn.apache.org/viewvc?rev=1133158&view=rev
- 2.2.x patch: http://people.apache.org/~sf/PR51751.diff
- +1: sf, trawick, rpluem
-
PATCHES PROPOSED TO BACKPORT FROM TRUNK:
[ New proposals should be added at the end of the list ]
#include "mod_dav.h"
#include "repos.h"
+#include "http_log.h"
struct dav_db {
if (db == NULL) {
errcode = 1;
errstr = "Could not open property database.";
+ if (APR_STATUS_IS_EDSOOPEN(status))
+ ap_log_error(APLOG_MARK, APLOG_CRIT, status, NULL,
+ "The DBM driver could not be loaded");
}
else {
(void) apr_dbm_geterror(db->file, &errcode, errbuf, sizeof(errbuf));
dav_db **pdb)
{
apr_status_t status;
- apr_dbm_t *file;
+ apr_dbm_t *file = NULL;
*pdb = NULL;