summaryrefslogtreecommitdiff
path: root/www/apache24
diff options
context:
space:
mode:
authorOlli Hauer <ohauer@FreeBSD.org>2013-11-24 20:51:20 +0000
committerOlli Hauer <ohauer@FreeBSD.org>2013-11-24 20:51:20 +0000
commitf013f198298fbdc5ee7a99b2ac182b781a3a6f91 (patch)
treea548b898179504f10ba5ce3f79ebda50bf576fbb /www/apache24
parent- Allow ports to work with any django version avaliable. (diff)
- add patch for apache bug-id 55306
- bump PORTREVISION There is an subversion update on the way and we will see the new subversion before apache24-2.4.7 so adopt the mod_dav patches from upstrem.
Notes
Notes: svn path=/head/; revision=334790
Diffstat (limited to 'www/apache24')
-rw-r--r--www/apache24/Makefile1
-rw-r--r--www/apache24/files/patch-bug5530646
2 files changed, 47 insertions, 0 deletions
diff --git a/www/apache24/Makefile b/www/apache24/Makefile
index 464cc25da7ad..c3f2fdf81ff6 100644
--- a/www/apache24/Makefile
+++ b/www/apache24/Makefile
@@ -2,6 +2,7 @@
PORTNAME= apache24
PORTVERSION= 2.4.6
+PORTREVISION= 1
CATEGORIES= www ipv6
MASTER_SITES= ${MASTER_SITE_APACHE_HTTPD}
DISTNAME= httpd-${PORTVERSION}
diff --git a/www/apache24/files/patch-bug55306 b/www/apache24/files/patch-bug55306
new file mode 100644
index 000000000000..bdacfdf98836
--- /dev/null
+++ b/www/apache24/files/patch-bug55306
@@ -0,0 +1,46 @@
+--- ./modules/dav/main/util.c.orig 2013-11-24 21:27:34.000000000 +0100
++++ ./modules/dav/main/util.c 2013-11-24 21:28:13.000000000 +0100
+@@ -954,13 +954,16 @@
+ /*
+ ** For methods other than LOCK:
+ **
+- ** If we have no locks, then <seen_locktoken> can be set to true --
++ ** If we have no locks or if the resource is not being modified
++ ** (per RFC 4918 the lock token is not required on resources
++ ** we are not changing), then <seen_locktoken> can be set to true --
+ ** pretending that we've already met the requirement of seeing one
+ ** of the resource's locks in the If: header.
+ **
+ ** Otherwise, it must be cleared and we'll look for one.
+ */
+- seen_locktoken = (lock_list == NULL);
++ seen_locktoken = (lock_list == NULL
++ || flags & DAV_VALIDATE_NO_MODIFY);
+ }
+
+ /*
+--- ./modules/dav/main/mod_dav.h.orig 2013-11-24 21:28:30.000000000 +0100
++++ ./modules/dav/main/mod_dav.h 2013-11-24 21:29:00.000000000 +0100
+@@ -1297,6 +1297,9 @@
+ the 424 DAV:response */
+ #define DAV_VALIDATE_USE_424 0x0080 /* return 424 status, not 207 */
+ #define DAV_VALIDATE_IS_PARENT 0x0100 /* for internal use */
++#define DAV_VALIDATE_NO_MODIFY 0x0200 /* resource is not being modified
++ so allow even if lock token
++ is not provided */
+
+ /* Lock-null related public lock functions */
+ DAV_DECLARE(int) dav_get_resource_state(request_rec *r,
+--- ./modules/dav/main/mod_dav.c.orig 2013-11-24 21:29:13.000000000 +0100
++++ ./modules/dav/main/mod_dav.c 2013-11-24 21:37:17.000000000 +0100
+@@ -2765,7 +2765,9 @@
+ */
+ if ((err = dav_validate_request(r, resource, depth, NULL,
+ &multi_response,
+- DAV_VALIDATE_PARENT
++ (is_move ? DAV_VALIDATE_PARENT
++ : DAV_VALIDATE_RESOURCE
++ | DAV_VALIDATE_NO_MODIFY)
+ | DAV_VALIDATE_USE_424,
+ NULL)) != NULL) {
+ err = dav_push_error(r->pool, err->status, 0,