Subversion
Loading...
Searching...
No Matches
Functions | Variables
mod_dav_svn.h File Reference

Subversion's backend for Apache's mod_dav module. More...

#include <httpd.h>
#include <mod_dav.h>

Go to the source code of this file.

Functions

 AP_MODULE_DECLARE (dav_error *) dav_svn_split_uri2(request_rec *r
 Given an apache request r, a uri, and a root_path to the svn location block, process uri and return many things, allocated in pool:
 

Variables

const char * uri_to_split
 
const char const char * root_path
 
const char const char const char ** cleaned_uri
 
const char const char const char int * trailing_slash
 
const char const char const char int const char ** repos_basename
 
const char const char const char int const char const char ** relative_path
 
const char const char const char int const char const char const char ** repos_path
 
const char const char const char int const char const char const char apr_pool_t * pool
 
const char * uri
 

Detailed Description

Subversion's backend for Apache's mod_dav module.

@if copyrights

Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations

under the License.

Definition in file mod_dav_svn.h.

Function Documentation

◆ AP_MODULE_DECLARE()

AP_MODULE_DECLARE ( dav_error * )

Given an apache request r, a uri, and a root_path to the svn location block, process uri and return many things, allocated in pool:

Same as dav_svn_get_repos_path2() but allocates the result inr->pool.

Given an apache request r and a root_path to the svn location block, set *repos_path to the path of the repository on disk.

Same as dav_svn_split_uri2() but allocates the result in r->pool.

  • cleaned_uri: The uri with duplicate and trailing slashes removed.
  • trailing_slash: Whether the uri had a trailing slash on it.

Three special substrings of the uri are returned for convenience:

  • repos_basename: The single path component that is the directory which contains the repository. (Don't confuse this with the "repository name" as optionally defined via the SVNReposName directive!)
  • relative_path: The remaining imaginary path components.
  • repos_path: The actual path within the repository filesystem, or NULL if no part of the uri refers to a path in the repository (e.g. "!svn/vcc/default" or "!svn/bln/25").

For example, consider the uri

/svn/repos/proj1/!svn/blah/13//A/B/alpha

In the SVNPath case, this function would receive a root_path of '/svn/repos/proj1', and in the SVNParentPath case would receive a root_path of '/svn/repos'. But either way, we would get back:

  • cleaned_uri: /svn/repos/proj1/!svn/blah/13/A/B/alpha
  • repos_basename: proj1
  • relative_path: /!svn/blah/13/A/B/alpha
  • repos_path: A/B/alpha
  • trailing_slash: FALSE

NOTE: The returned dav_error will be also allocated in pool, not in r->pool.

Since
New in 1.9

Perform all allocations in pool.

NOTE: The returned dav_error will be also allocated in pool, not in r->pool.

Since
New in 1.9

Variable Documentation

◆ cleaned_uri

const char const char const char ** cleaned_uri

Definition at line 86 of file mod_dav_svn.h.

◆ pool

const char const char apr_pool_t * pool

Definition at line 91 of file mod_dav_svn.h.

◆ relative_path

const char const char const char int const char const char ** relative_path

Definition at line 89 of file mod_dav_svn.h.

◆ repos_basename

const char const char const char int const char ** repos_basename

Definition at line 88 of file mod_dav_svn.h.

◆ repos_path

const char const char ** repos_path

Definition at line 90 of file mod_dav_svn.h.

◆ root_path

const char * root_path

Definition at line 85 of file mod_dav_svn.h.

◆ trailing_slash

const char const char const char int * trailing_slash

Definition at line 87 of file mod_dav_svn.h.

◆ uri

const char* uri

Definition at line 97 of file mod_dav_svn.h.

◆ uri_to_split

const char* uri_to_split

Definition at line 84 of file mod_dav_svn.h.