diff options
| author | Yue Tao <Yue.Tao@windriver.com> | 2014-04-15 15:57:31 +0800 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-05-21 09:09:00 +0100 |
| commit | 722ff438b355afc04f82e0aca47f9082d2d3d7df (patch) | |
| tree | 3035607d7744b5d4bf8718e94f63533794583ae8 | |
| parent | e8d6c874a72a14e1b0850bef104caceb7fb7d0ad (diff) | |
| download | poky-722ff438b355afc04f82e0aca47f9082d2d3d7df.tar.gz | |
subversion: fix for Security Advisory CVE-2013-4131
The mod_dav_svn Apache HTTPD server module in Subversion 1.7.0 through
1.7.10 and 1.8.x before 1.8.1 allows remote authenticated users to cause
a denial of service (assertion failure or out-of-bounds read) via a
certain (1) COPY, (2) DELETE, or (3) MOVE request against a revision
root.
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2013-4131
(From OE-Core rev: ce41ed3ca5b6ef06c02c5ca65f285e5ee8c04e7f)
Signed-off-by: Yue Tao <Yue.Tao@windriver.com>
Signed-off-by: Roy Li <rongqing.li@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
| -rw-r--r-- | meta/recipes-devtools/subversion/subversion-1.7.10/subversion-CVE-2013-4131.patch | 42 | ||||
| -rw-r--r-- | meta/recipes-devtools/subversion/subversion_1.7.10.bb | 1 |
2 files changed, 43 insertions, 0 deletions
diff --git a/meta/recipes-devtools/subversion/subversion-1.7.10/subversion-CVE-2013-4131.patch b/meta/recipes-devtools/subversion/subversion-1.7.10/subversion-CVE-2013-4131.patch new file mode 100644 index 0000000000..88bd25e0d9 --- /dev/null +++ b/meta/recipes-devtools/subversion/subversion-1.7.10/subversion-CVE-2013-4131.patch | |||
| @@ -0,0 +1,42 @@ | |||
| 1 | Upstream-Status: Backport | ||
| 2 | |||
| 3 | Index: subversion/mod_dav_svn/repos.c | ||
| 4 | =================================================================== | ||
| 5 | --- a/subversion/mod_dav_svn/repos.c (revision 1503527) | ||
| 6 | +++ b/subversion/mod_dav_svn/repos.c (revision 1503528) | ||
| 7 | @@ -2408,21 +2408,12 @@ | ||
| 8 | svn_boolean_t is_urlpath, | ||
| 9 | apr_pool_t *pool) | ||
| 10 | { | ||
| 11 | - apr_size_t len; | ||
| 12 | - char *tmp = apr_pstrdup(pool, path); | ||
| 13 | - | ||
| 14 | - len = strlen(tmp); | ||
| 15 | - | ||
| 16 | - if (len > 0) | ||
| 17 | + if (*path != '\0') /* not an empty string */ | ||
| 18 | { | ||
| 19 | - /* Remove any trailing slash; else svn_path_dirname() asserts. */ | ||
| 20 | - if (tmp[len-1] == '/') | ||
| 21 | - tmp[len-1] = '\0'; | ||
| 22 | - | ||
| 23 | if (is_urlpath) | ||
| 24 | - return svn_urlpath__dirname(tmp, pool); | ||
| 25 | + return svn_urlpath__dirname(path, pool); | ||
| 26 | else | ||
| 27 | - return svn_fspath__dirname(tmp, pool); | ||
| 28 | + return svn_fspath__dirname(path, pool); | ||
| 29 | } | ||
| 30 | |||
| 31 | return path; | ||
| 32 | @@ -2458,7 +2449,9 @@ | ||
| 33 | parent->versioned = 1; | ||
| 34 | parent->hooks = resource->hooks; | ||
| 35 | parent->pool = resource->pool; | ||
| 36 | - parent->uri = get_parent_path(resource->uri, TRUE, resource->pool); | ||
| 37 | + parent->uri = get_parent_path(svn_urlpath__canonicalize(resource->uri, | ||
| 38 | + resource->pool), | ||
| 39 | + TRUE, resource->pool); | ||
| 40 | parent->info = parentinfo; | ||
| 41 | |||
| 42 | parentinfo->uri_path = | ||
diff --git a/meta/recipes-devtools/subversion/subversion_1.7.10.bb b/meta/recipes-devtools/subversion/subversion_1.7.10.bb index 011d51b613..2d06263a1e 100644 --- a/meta/recipes-devtools/subversion/subversion_1.7.10.bb +++ b/meta/recipes-devtools/subversion/subversion_1.7.10.bb | |||
| @@ -15,6 +15,7 @@ SRC_URI = "${APACHE_MIRROR}/${BPN}/${BPN}-${PV}.tar.bz2 \ | |||
| 15 | file://allow-updated-neon.patch \ | 15 | file://allow-updated-neon.patch \ |
| 16 | file://neon.m4-fix-includes-and-cflags.patch \ | 16 | file://neon.m4-fix-includes-and-cflags.patch \ |
| 17 | file://subversion-CVE-2013-4505.patch \ | 17 | file://subversion-CVE-2013-4505.patch \ |
| 18 | file://subversion-CVE-2013-4131.patch \ | ||
| 18 | " | 19 | " |
| 19 | SRC_URI[md5sum] = "4088a77e14232876c9b4ff1541e6e200" | 20 | SRC_URI[md5sum] = "4088a77e14232876c9b4ff1541e6e200" |
| 20 | SRC_URI[sha256sum] = "c1df222bec83d014d17785e2ceba6bc80962f64b280967de0285836d8d77a8e7" | 21 | SRC_URI[sha256sum] = "c1df222bec83d014d17785e2ceba6bc80962f64b280967de0285836d8d77a8e7" |
