6dc89b
6dc89b
https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2014-3580
6dc89b
6dc89b
http://subversion.apache.org/security/CVE-2014-3580-advisory.txt
6dc89b
6dc89b
--- subversion-1.7.14/subversion/mod_dav_svn/reports/deleted-rev.c.cve3580
6dc89b
+++ subversion-1.7.14/subversion/mod_dav_svn/reports/deleted-rev.c
6dc89b
@@ -56,6 +56,9 @@ dav_svn__get_deleted_rev_report(const da
6dc89b
   dav_error *derr = NULL;
6dc89b
 
6dc89b
   /* Sanity check. */
6dc89b
+  if (!resource->info->repos_path)
6dc89b
+    return dav_svn__new_error(resource->pool, HTTP_BAD_REQUEST, 0,
6dc89b
+                              "The request does not specify a repository path");
6dc89b
   ns = dav_svn__find_ns(doc->namespaces, SVN_XML_NAMESPACE);
6dc89b
   if (ns == -1)
6dc89b
     return dav_svn__new_error_tag(resource->pool, HTTP_BAD_REQUEST, 0,
6dc89b
--- subversion-1.7.14/subversion/mod_dav_svn/reports/file-revs.c.cve3580
6dc89b
+++ subversion-1.7.14/subversion/mod_dav_svn/reports/file-revs.c
6dc89b
@@ -251,6 +251,9 @@ dav_svn__file_revs_report(const dav_reso
6dc89b
   arb.repos = resource->info->repos;
6dc89b
 
6dc89b
   /* Sanity check. */
6dc89b
+  if (!resource->info->repos_path)
6dc89b
+    return dav_svn__new_error(resource->pool, HTTP_BAD_REQUEST, 0,
6dc89b
+                              "The request does not specify a repository path");
6dc89b
   ns = dav_svn__find_ns(doc->namespaces, SVN_XML_NAMESPACE);
6dc89b
   /* ### This is done on other places, but the document element is
6dc89b
      in this namespace, so is this necessary at all? */
6dc89b
--- subversion-1.7.14/subversion/mod_dav_svn/reports/get-locations.c.cve3580
6dc89b
+++ subversion-1.7.14/subversion/mod_dav_svn/reports/get-locations.c
6dc89b
@@ -106,6 +106,9 @@ dav_svn__get_locations_report(const dav_
6dc89b
                                       sizeof(svn_revnum_t));
6dc89b
 
6dc89b
   /* Sanity check. */
6dc89b
+  if (!resource->info->repos_path)
6dc89b
+    return dav_svn__new_error(resource->pool, HTTP_BAD_REQUEST, 0,
6dc89b
+                              "The request does not specify a repository path");
6dc89b
   ns = dav_svn__find_ns(doc->namespaces, SVN_XML_NAMESPACE);
6dc89b
   if (ns == -1)
6dc89b
     {
6dc89b
--- subversion-1.7.14/subversion/mod_dav_svn/reports/get-location-segments.c.cve3580
6dc89b
+++ subversion-1.7.14/subversion/mod_dav_svn/reports/get-location-segments.c
6dc89b
@@ -123,6 +123,9 @@ dav_svn__get_location_segments_report(co
6dc89b
   struct location_segment_baton location_segment_baton;
6dc89b
 
6dc89b
   /* Sanity check. */
6dc89b
+  if (!resource->info->repos_path)
6dc89b
+    return dav_svn__new_error(resource->pool, HTTP_BAD_REQUEST, 0,
6dc89b
+                              "The request does not specify a repository path");
6dc89b
   ns = dav_svn__find_ns(doc->namespaces, SVN_XML_NAMESPACE);
6dc89b
   if (ns == -1)
6dc89b
     {
6dc89b
--- subversion-1.7.14/subversion/mod_dav_svn/reports/log.c.cve3580
6dc89b
+++ subversion-1.7.14/subversion/mod_dav_svn/reports/log.c
6dc89b
@@ -307,6 +307,9 @@ dav_svn__log_report(const dav_resource *
6dc89b
     = apr_array_make(resource->pool, 1, sizeof(const char *));
6dc89b
 
6dc89b
   /* Sanity check. */
6dc89b
+  if (!resource->info->repos_path)
6dc89b
+    return dav_svn__new_error(resource->pool, HTTP_BAD_REQUEST, 0,
6dc89b
+                              "The request does not specify a repository path");
6dc89b
   ns = dav_svn__find_ns(doc->namespaces, SVN_XML_NAMESPACE);
6dc89b
   if (ns == -1)
6dc89b
     {
6dc89b
--- subversion-1.7.14/subversion/mod_dav_svn/reports/mergeinfo.c.cve3580
6dc89b
+++ subversion-1.7.14/subversion/mod_dav_svn/reports/mergeinfo.c
6dc89b
@@ -67,6 +67,9 @@ dav_svn__get_mergeinfo_report(const dav_
6dc89b
     = apr_array_make(resource->pool, 0, sizeof(const char *));
6dc89b
 
6dc89b
   /* Sanity check. */
6dc89b
+  if (!resource->info->repos_path)
6dc89b
+    return dav_svn__new_error(resource->pool, HTTP_BAD_REQUEST, 0,
6dc89b
+                              "The request does not specify a repository path");
6dc89b
   ns = dav_svn__find_ns(doc->namespaces, SVN_XML_NAMESPACE);
6dc89b
   if (ns == -1)
6dc89b
     {