summaryrefslogtreecommitdiffstats
path: root/modules/dav/main/util.c
diff options
context:
space:
mode:
authorJustin Erenkrantz <jerenkrantz@apache.org>2003-01-29 06:07:18 +0100
committerJustin Erenkrantz <jerenkrantz@apache.org>2003-01-29 06:07:18 +0100
commit6e09bb02b383fba804380aa61e672bb398a8c6be (patch)
treec525570db795d1949b56eebcdcdd7be155cd6233 /modules/dav/main/util.c
parent Note the change to default apr behavior for the moment. With much (diff)
downloadapache2-6e09bb02b383fba804380aa61e672bb398a8c6be.tar.xz
apache2-6e09bb02b383fba804380aa61e672bb398a8c6be.zip
Fix If header parsing when a non-mod_dav lock token is passed to it. We'll
now just skip over it rather than aborting. PR: 16452 git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@98524 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'modules/dav/main/util.c')
-rw-r--r--modules/dav/main/util.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/modules/dav/main/util.c b/modules/dav/main/util.c
index 1772982788..8cbc76a970 100644
--- a/modules/dav/main/util.c
+++ b/modules/dav/main/util.c
@@ -574,8 +574,16 @@ static dav_error * dav_add_if_state(apr_pool_t *p, dav_if_header *ih,
if ((err = (*locks_hooks->parse_locktoken)(p, state_token,
&new_sl->locktoken)) != NULL) {
- /* ### maybe add a higher-level description */
- return err;
+ /* In cases where the state token is invalid, we'll just skip
+ * it rather than return 400.
+ */
+ if (err->error_id == DAV_ERR_LOCK_UNK_STATE_TOKEN) {
+ return NULL;
+ }
+ else {
+ /* ### maybe add a higher-level description */
+ return err;
+ }
}
}
else