FreeBSD/contrib/subversion/subversion/svnserve/serve.c
/* Canonicalize *ACCESS_FILE based on the type of argument.  Results are
 * placed in *ACCESS_FILE.  REPOSITORY is used to convert relative paths to
 * absolute paths rooted at the server root.  REPOS_ROOT is used to calculate
 * an absolute URL for repos-relative URLs. */
Canonicalize *ACCESS_FILE based on the type of argument.  Results are
placed in *ACCESS_FILE.  REPOSITORY is used to convert relative paths to
absolute paths rooted at the server root.  REPOS_ROOT is used to calculate
an absolute URL for repos-relative URLs.
Canonicalize * ACCESS_FILE based on the type of argument . Results are placed in * ACCESS_FILE . REPOSITORY is used to convert relative paths to absolute paths rooted at the server root . REPOS_ROOT is used to calculate an absolute URL for repos - relative URLs .
static svn_error_t *
canonicalize_access_file(const char **access_file, repository_t *repository,
                         const char *repos_root, apr_pool_t *pool)
{
  if (svn_path_is_url(*access_file))
    {
      *access_file = svn_uri_canonicalize(*access_file, pool);
    }
  else if (svn_path_is_repos_relative_url(*access_file))
    {
      const char *repos_root_url;
      SVN_ERR(svn_uri_get_file_url_from_dirent(&repos_root_url, repos_root,
                                               pool));
      SVN_ERR(svn_path_resolve_repos_relative_url(access_file, *access_file,
                                                  repos_root_url, pool));
      *access_file = svn_uri_canonicalize(*access_file, pool);
    }
  else
    {
      *access_file = svn_dirent_internal_style(*access_file, pool);
      *access_file = svn_dirent_join(repository->base, *access_file, pool);
    }
  return SVN_NO_ERROR;
}
static svn_error_t * canonicalize_access_file ( const char * * access_file , repository_t * repository , const char * repos_root , apr_pool_t * pool ) { if ( svn_path_is_url ( * access_file ) ) { * access_file = svn_uri_canonicalize ( * access_file , pool ) ; } else if ( svn_path_is_repos_relative_url ( * access_file ) ) { const char * repos_root_url ; SVN_ERR ( svn_uri_get_file_url_from_dirent ( & repos_root_url , repos_root , pool ) ) ; SVN_ERR ( svn_path_resolve_repos_relative_url ( access_file , * access_file , repos_root_url , pool ) ) ; * access_file = svn_uri_canonicalize ( * access_file , pool ) ; } else { * access_file = svn_dirent_internal_style ( * access_file , pool ) ; * access_file = svn_dirent_join ( repository -> base , * access_file , pool ) ; } return SVN_NO_ERROR ; }
Canonicalize *ACCESS_FILE based on the type of argument.
Canonicalize * ACCESS_FILE based on the type of argument .