~ubuntu-branches/debian/sid/subversion/sid

« back to all changes in this revision

Viewing changes to subversion/mod_dav_svn/merge.c

  • Committer: Package Import Robot
  • Author(s): James McCoy
  • Date: 2015-08-07 21:32:47 UTC
  • mfrom: (0.2.15) (4.1.7 experimental)
  • Revision ID: package-import@ubuntu.com-20150807213247-ozyewtmgsr6tkewl
Tags: 1.9.0-1
* Upload to unstable
* New upstream release.
  + Security fixes
    - CVE-2015-3184: Mixed anonymous/authenticated path-based authz with
      httpd 2.4
    - CVE-2015-3187: svn_repos_trace_node_locations() reveals paths hidden
      by authz
* Add >= 2.7 requirement for python-all-dev Build-Depends, needed to run
  tests.
* Remove Build-Conflicts against ruby-test-unit.  (Closes: #791844)
* Remove patches/apache_module_dependency in favor of expressing the
  dependencies in authz_svn.load/dav_svn.load.
* Build-Depend on apache2-dev (>= 2.4.16) to ensure ap_some_authn_required()
  is available when building mod_authz_svn and Depend on apache2-bin (>=
  2.4.16) for runtime support.

Show diffs side-by-side

added added

removed removed

Lines of Context:
85
85
                            SVN_IGNORED_REVNUM, path, 0 /* add_href */, pool);
86
86
  rev_to_use = dav_svn__get_safe_cr(root, path, pool);
87
87
  vsn_url = dav_svn__build_uri(repos, DAV_SVN__BUILD_URI_VERSION,
88
 
                               rev_to_use, path, 0 /* add_href */, pool);
 
88
                               rev_to_use, path, FALSE /* add_href */, pool);
89
89
  status = ap_fputstrs(output, bb,
90
90
                       "<D:response>" DEBUG_CR
91
91
                       "<D:href>",
136
136
      const void *key;
137
137
      void *val;
138
138
      const char *path;
 
139
      apr_ssize_t path_len;
139
140
      svn_fs_path_change2_t *change;
140
141
      svn_boolean_t send_self;
141
142
      svn_boolean_t send_parent;
142
143
 
143
144
      svn_pool_clear(subpool);
144
 
      apr_hash_this(hi, &key, NULL, &val);
 
145
      apr_hash_this(hi, &key, &path_len, &val);
145
146
      path = key;
146
147
      change = val;
147
148
 
170
171
        {
171
172
          /* If we haven't already sent this path, send it (and then
172
173
             remember that we sent it). */
173
 
          if (! svn_hash_gets(sent, path))
 
174
          if (! apr_hash_get(sent, path, path_len))
174
175
            {
175
176
              svn_node_kind_t kind;
176
177
              SVN_ERR(svn_fs_check_path(&kind, root, path, subpool));
177
178
              SVN_ERR(send_response(repos, root, path,
178
179
                                    kind == svn_node_dir,
179
180
                                    output, bb, subpool));
180
 
              svn_hash_sets(sent, path, (void *)1);
 
181
              apr_hash_set(sent, path, path_len, (void *)1);
181
182
            }
182
183
        }
183
184
      if (send_parent)
241
242
 
242
243
  /* the HREF for the baseline is actually the VCC */
243
244
  vcc = dav_svn__build_uri(repos, DAV_SVN__BUILD_URI_VCC, SVN_IGNORED_REVNUM,
244
 
                           NULL, 0 /* add_href */, pool);
 
245
                           NULL, FALSE /* add_href */, pool);
245
246
 
246
247
  /* the version-name of the baseline is the revision number */
247
248
  rev = apr_psprintf(pool, "%ld", new_rev);