MCPcopy Create free account
hub / github.com/apache/httpd / dav_popen_propdb

Function dav_popen_propdb

modules/dav/main/props.c:540–581  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

538}
539
540DAV_DECLARE(dav_error *)dav_popen_propdb(apr_pool_t *p,
541 request_rec *r, dav_lockdb *lockdb,
542 const dav_resource *resource,
543 int flags,
544 apr_array_header_t * ns_xlate,
545 dav_propdb **p_propdb)
546{
547 dav_propdb *propdb = NULL;
548
549 propdb = apr_pcalloc(p, sizeof(*propdb));
550 propdb->p = p;
551
552 *p_propdb = NULL;
553
554#if DAV_DEBUG
555 if (resource->uri == NULL) {
556 return dav_new_error(r->pool, HTTP_INTERNAL_SERVER_ERROR, 0, 0,
557 "INTERNAL DESIGN ERROR: resource must define "
558 "its URI.");
559 }
560#endif
561
562 propdb->r = r;
563 propdb->resource = resource;
564 propdb->ns_xlate = ns_xlate;
565
566 propdb->db_hooks = DAV_GET_HOOKS_PROPDB(r);
567
568 propdb->lockdb = lockdb;
569
570 propdb->flags = flags;
571
572 /* always defer actual open, to avoid expense of accessing db
573 * when only live properties are involved
574 */
575 propdb->deferred = 1;
576
577 /* ### what to do about closing the propdb on server failure? */
578
579 *p_propdb = propdb;
580 return NULL;
581}
582
583DAV_DECLARE(void) dav_close_propdb(dav_propdb *propdb)
584{

Callers 2

dav_propfind_walkerFunction · 0.85
dav_open_propdbFunction · 0.85

Calls 1

dav_new_errorFunction · 0.85

Tested by

no test coverage detected