From: Justin Erenkrantz Date: Wed, 29 Jan 2003 05:07:18 +0000 (+0000) Subject: Fix If header parsing when a non-mod_dav lock token is passed to it. We'll X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6bc40c13192d11ffc7d80844d3e68880dc6770f5;p=thirdparty%2Fapache%2Fhttpd.git 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 --- diff --git a/CHANGES b/CHANGES index 6336b7f7a9a..763f357eafd 100644 --- a/CHANGES +++ b/CHANGES @@ -2,6 +2,9 @@ Changes with Apache 2.1.0-dev [Remove entries to the current 2.0 section below, when backported] + *) Fix If header parsing when a non-mod_dav lock token is passed to it. + PR 16452. [Justin Erenkrantz] + *) Fix bug where 'Satisfy Any' without an AuthType lost all MIME information (and more). Related to PR 9076. [André Malo] diff --git a/modules/dav/main/util.c b/modules/dav/main/util.c index 17729827882..8cbc76a9700 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