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_uri(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 r->pool:
|
Variables |
const char * | uri |
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 |
Detailed Description
Subversion's backend for Apache's mod_dav module.
Definition in file mod_dav_svn.h.
Function Documentation
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 r->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.
- 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