Index: CHANGES
===================================================================
--- CHANGES (revision 155344)
+++ CHANGES (revision 155345)
@@ -2,6 +2,9 @@
[Remove entries to the current 2.0 section below, when backported]
+ *) Correctly export all mod_dav public functions.
+ [Branko �ibej <brane xbc.nu>]
+
Changes with Apache 2.1.3
*) core_input_filter: Move buckets to a persistent brigade instead of
Index: modules/dav/main/mod_dav.h
===================================================================
--- modules/dav/main/mod_dav.h (revision 155344)
+++ modules/dav/main/mod_dav.h (revision 155345)
@@ -464,8 +464,8 @@
} dav_lookup_result;
-dav_lookup_result dav_lookup_uri(const char *uri, request_rec *r,
- int must_be_absolute);
+DAV_DECLARE(dav_lookup_result) dav_lookup_uri(const char *uri, request_rec *r,
+ int must_be_absolute);
/* defines type of property info a provider is to return */
typedef enum {
@@ -492,10 +492,12 @@
#define DAV_STYLE_RFC822 2
#define DAV_TIMEBUF_SIZE 30
-int dav_get_depth(request_rec *r, int def_depth);
+DAV_DECLARE(int) dav_get_depth(request_rec *r, int def_depth);
-int dav_validate_root(const apr_xml_doc *doc, const char *tagname);
-apr_xml_elem *dav_find_child(const apr_xml_elem *elem, const char *tagname);
+DAV_DECLARE(int) dav_validate_root(const apr_xml_doc *doc,
+ const char *tagname);
+DAV_DECLARE(apr_xml_elem *) dav_find_child(const apr_xml_elem *elem,
+ const char *tagname);
/* gather up all the CDATA into a single string */
DAV_DECLARE(const char *) dav_xml_get_cdata(const apr_xml_elem *elem, apr_pool_t *pool,
@@ -631,15 +633,15 @@
(request_rec *r, const dav_resource *resource,
dav_prop_insert what, apr_text_header *phdr))
-const dav_hooks_locks *dav_get_lock_hooks(request_rec *r);
-const dav_hooks_propdb *dav_get_propdb_hooks(request_rec *r);
-const dav_hooks_vsn *dav_get_vsn_hooks(request_rec *r);
-const dav_hooks_binding *dav_get_binding_hooks(request_rec *r);
-const dav_hooks_search *dav_get_search_hooks(request_rec *r);
+DAV_DECLARE(const dav_hooks_locks *) dav_get_lock_hooks(request_rec *r);
+DAV_DECLARE(const dav_hooks_propdb *) dav_get_propdb_hooks(request_rec *r);
+DAV_DECLARE(const dav_hooks_vsn *) dav_get_vsn_hooks(request_rec *r);
+DAV_DECLARE(const dav_hooks_binding *) dav_get_binding_hooks(request_rec *r);
+DAV_DECLARE(const dav_hooks_search *) dav_get_search_hooks(request_rec *r);
DAV_DECLARE(void) dav_register_provider(apr_pool_t *p, const char *name,
const dav_provider *hooks);
-const dav_provider * dav_lookup_provider(const char *name);
+DAV_DECLARE(const dav_provider *) dav_lookup_provider(const char *name);
/* ### deprecated */
@@ -712,7 +714,8 @@
struct dav_locktoken_list *next;
} dav_locktoken_list;
-dav_error * dav_get_locktoken_list(request_rec *r, dav_locktoken_list **ltl);
+DAV_DECLARE(dav_error *) dav_get_locktoken_list(request_rec *r,
+ dav_locktoken_list **ltl);
/* --------------------------------------------------------------------
@@ -885,22 +888,27 @@
DAV_DECLARE(int) dav_get_liveprop_ns_index(const char *uri);
/* ### docco */
-int dav_get_liveprop_ns_count(void);
+DAV_DECLARE(int) dav_get_liveprop_ns_count(void);
/* ### docco */
-void dav_add_all_liveprop_xmlns(apr_pool_t *p, apr_text_header *phdr);
+DAV_DECLARE(void) dav_add_all_liveprop_xmlns(apr_pool_t *p,
+ apr_text_header *phdr);
/*
** The following three functions are part of mod_dav's internal handling
** for the core WebDAV properties. They are not part of mod_dav's API.
*/
-int dav_core_find_liveprop(const dav_resource *resource,
- const char *ns_uri, const char *name,
- const dav_hooks_liveprop **hooks);
-void dav_core_insert_all_liveprops(request_rec *r,
- const dav_resource *resource,
- dav_prop_insert what, apr_text_header *phdr);
-void dav_core_register_uris(apr_pool_t *p);
+DAV_DECLARE_NONSTD(int) dav_core_find_liveprop(
+ const dav_resource *resource,
+ const char *ns_uri,
+ const char *name,
+ const dav_hooks_liveprop **hooks);
+DAV_DECLARE_NONSTD(void) dav_core_insert_all_liveprops(
+ request_rec *r,
+ const dav_resource *resource,
+ dav_prop_insert what,
+ apr_text_header *phdr);
+DAV_DECLARE_NONSTD(void) dav_core_register_uris(apr_pool_t *p);
/*
@@ -1126,7 +1134,7 @@
/* Used to represent a Timeout header of "Infinity" */
#define DAV_TIMEOUT_INFINITE 0
-time_t dav_get_timeout(request_rec *r);
+DAV_DECLARE(time_t) dav_get_timeout(request_rec *r);
/*
** Opaque, provider-specific information for a lock database.
@@ -1221,34 +1229,40 @@
} dav_lock;
/* Property-related public lock functions */
-const char *dav_lock_get_activelock(request_rec *r, dav_lock *locks,
- dav_buffer *pbuf);
+DAV_DECLARE(const char *)dav_lock_get_activelock(request_rec *r,
+ dav_lock *locks,
+ dav_buffer *pbuf);
/* LockDB-related public lock functions */
-dav_error * dav_lock_parse_lockinfo(request_rec *r,
- const dav_resource *resrouce,
- dav_lockdb *lockdb,
- const apr_xml_doc *doc,
- dav_lock **lock_request);
-int dav_unlock(request_rec *r, const dav_resource *resource,
- const dav_locktoken *locktoken);
-dav_error * dav_add_lock(request_rec *r, const dav_resource *resource,
- dav_lockdb *lockdb, dav_lock *request,
- dav_response **response);
-dav_error * dav_notify_created(request_rec *r,
- dav_lockdb *lockdb,
- const dav_resource *resource,
- int resource_state,
- int depth);
+DAV_DECLARE(dav_error *) dav_lock_parse_lockinfo(request_rec *r,
+ const dav_resource *resrouce,
+ dav_lockdb *lockdb,
+ const apr_xml_doc *doc,
+ dav_lock **lock_request);
+DAV_DECLARE(int) dav_unlock(request_rec *r,
+ const dav_resource *resource,
+ const dav_locktoken *locktoken);
+DAV_DECLARE(dav_error *) dav_add_lock(request_rec *r,
+ const dav_resource *resource,
+ dav_lockdb *lockdb, dav_lock *request,
+ dav_response **response);
+DAV_DECLARE(dav_error *) dav_notify_created(request_rec *r,
+ dav_lockdb *lockdb,
+ const dav_resource *resource,
+ int resource_state,
+ int depth);
DAV_DECLARE(dav_error*) dav_lock_query(dav_lockdb *lockdb,
const dav_resource *resource,
dav_lock **locks);
-dav_error * dav_validate_request(request_rec *r, dav_resource *resource,
- int depth, dav_locktoken *locktoken,
-