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

« back to all changes in this revision

Viewing changes to subversion/svnserve/server.h

  • Committer: Package Import Robot
  • Author(s): James McCoy, Peter Samuelson, James McCoy
  • Date: 2014-01-12 19:48:33 UTC
  • mfrom: (0.2.10)
  • Revision ID: package-import@ubuntu.com-20140112194833-w3axfwksn296jn5x
Tags: 1.8.5-1
[ Peter Samuelson ]
* New upstream release.  (Closes: #725787) Rediff patches:
  - Remove apr-abi1 (applied upstream), rename apr-abi2 to apr-abi
  - Remove loosen-sqlite-version-check (shouldn't be needed)
  - Remove java-osgi-metadata (applied upstream)
  - svnmucc prompts for a changelog if none is provided. (Closes: #507430)
  - Remove fix-bdb-version-detection, upstream uses "apu-config --dbm-libs"
  - Remove ruby-test-wc (applied upstream)
  - Fix “svn diff -r N file” when file has svn:mime-type set.
    (Closes: #734163)
  - Support specifying an encoding for mod_dav_svn's environment in which
    hooks are run.  (Closes: #601544)
  - Fix ordering of “svnadmin dump” paths with certain APR versions.
    (Closes: #687291)
  - Provide a better error message when authentication fails with an
    svn+ssh:// URL.  (Closes: #273874)
  - Updated Polish translations.  (Closes: #690815)

[ James McCoy ]
* Remove all traces of libneon, replaced by libserf.
* patches/sqlite_3.8.x_workaround: Upstream fix for wc-queries-test test
  failurse.
* Run configure with --with-apache-libexecdir, which allows removing part of
  patches/rpath.
* Re-enable auth-test as upstream has fixed the problem of picking up
  libraries from the environment rather than the build tree.
  (Closes: #654172)
* Point LD_LIBRARY_PATH at the built auth libraries when running the svn
  command during the build.  (Closes: #678224)
* Add a NEWS entry describing how to configure mod_dav_svn to understand
  UTF-8.  (Closes: #566148)
* Remove ancient transitional package, libsvn-ruby.
* Enable compatibility with Sqlite3 versions back to Wheezy.
* Enable hardening flags.  (Closes: #734918)
* patches/build-fixes: Enable verbose build logs.
* Build against the default ruby version.  (Closes: #722393)

Show diffs side-by-side

added added

removed removed

Lines of Context:
42
42
  svn_repos_t *repos;
43
43
  const char *repos_name;  /* URI-encoded name of repository (not for authz) */
44
44
  svn_fs_t *fs;            /* For convenience; same as svn_repos_fs(repos) */
 
45
  const char *base;        /* Base directory for config files */
45
46
  svn_config_t *cfg;       /* Parsed repository svnserve.conf */
46
47
  svn_config_t *pwdb;      /* Parsed password database */
47
48
  svn_authz_t *authzdb;    /* Parsed authz rules */
59
60
  svn_boolean_t use_sasl;  /* Use Cyrus SASL for authentication;
60
61
                              always false if SVN_HAVE_SASL not defined */
61
62
  apr_file_t *log_file;    /* Log filehandle. */
 
63
  svn_boolean_t vhost;     /* Use virtual-host-based path to repo. */
62
64
  apr_pool_t *pool;
63
65
} server_baton_t;
64
66
 
86
88
     which forces all connections to be read-only. */
87
89
  svn_boolean_t read_only;
88
90
 
 
91
  /* The base directory for any relative configuration files. */
 
92
  const char *base;
 
93
 
89
94
  /* A parsed repository svnserve configuration file, ala
90
95
     svnserve.conf.  If this is NULL, then no configuration file was
91
96
     specified on the command line.  If this is non-NULL, then
92
97
     per-repository svnserve.conf are not read. */
93
98
  svn_config_t *cfg;
94
99
 
95
 
  /* A parsed repository password database.  If this is NULL, then
96
 
     either no svnserve configuration file was specified on the
97
 
     command line, or it was specified and it did not refer to a
98
 
     password database. */
99
 
  svn_config_t *pwdb;
100
 
 
101
 
  /* A parsed repository authorization database.  If this is NULL,
102
 
     then either no svnserve configuration file was specified on the
103
 
     command line, or it was specified and it did not refer to a
104
 
     authorization database. */
105
 
  svn_authz_t *authzdb;
106
 
 
107
100
  /* A filehandle open for writing logs to; possibly NULL. */
108
101
  apr_file_t *log_file;
109
102
 
116
109
  /* Enable full-text caching for all FSFS repositories. */
117
110
  svn_boolean_t cache_fulltexts;
118
111
 
 
112
  /* Enable revprop caching for all FSFS repositories. */
 
113
  svn_boolean_t cache_revprops;
 
114
 
119
115
  /* Size of the in-memory cache (used by FSFS only). */
120
116
  apr_uint64_t memory_cache_size;
121
117
 
125
121
     Defaults to SVN_DELTA_COMPRESSION_LEVEL_DEFAULT. */
126
122
  int compression_level;
127
123
 
 
124
  /* Item size up to which we use the zero-copy code path to transmit
 
125
     them over the network.  0 disables that code path. */
 
126
  apr_size_t zero_copy_limit;
 
127
 
 
128
  /* Amount of data to send between checks for cancellation requests
 
129
     coming in from the client. */
 
130
  apr_size_t error_check_interval;
 
131
 
 
132
  /* Use virtual-host-based path to repo. */
 
133
  svn_boolean_t vhost;
128
134
} serve_params_t;
129
135
 
130
136
/* Serve the connection CONN according to the parameters PARAMS. */
131
137
svn_error_t *serve(svn_ra_svn_conn_t *conn, serve_params_t *params,
132
138
                   apr_pool_t *pool);
133
139
 
134
 
/* Load a svnserve configuration file located at FILENAME into CFG,
135
 
   and if such as found, then:
136
 
 
137
 
    - set *PWDB to any referenced password database,
138
 
    - set *AUTHZDB to any referenced authorization database, and
139
 
    - set *USERNAME_CASE to the enumerated value of the
140
 
      'force-username-case' configuration value (or its default).
141
 
 
142
 
   If MUST_EXIST is true and FILENAME does not exist, then return an
143
 
   error.  BASE may be specified as the base path to any referenced
144
 
   password and authorization files found in FILENAME.
145
 
 
146
 
   If SERVER is not NULL, log the real errors with SERVER and CONN but
147
 
   return generic errors to the client.  CONN must not be NULL if SERVER
148
 
   is not NULL. */
149
 
svn_error_t *load_configs(svn_config_t **cfg,
150
 
                          svn_config_t **pwdb,
151
 
                          svn_authz_t **authzdb,
152
 
                          enum username_case_type *username_case,
153
 
                          const char *filename,
154
 
                          svn_boolean_t must_exist,
155
 
                          const char *base,
156
 
                          server_baton_t *server,
157
 
                          svn_ra_svn_conn_t *conn,
158
 
                          apr_pool_t *pool);
 
140
/* Load the password database for the listening server based on the
 
141
   entries in the SERVER struct.
 
142
 
 
143
   SERVER and CONN must not be NULL. The real errors will be logged with
 
144
   SERVER and CONN but return generic errors to the client. */
 
145
svn_error_t *load_pwdb_config(server_baton_t *server,
 
146
                              svn_ra_svn_conn_t *conn,
 
147
                              apr_pool_t *pool);
 
148
 
 
149
/* Load the authz database for the listening server based on the
 
150
   entries in the SERVER struct.
 
151
 
 
152
   SERVER and CONN must not be NULL. The real errors will be logged with
 
153
   SERVER and CONN but return generic errors to the client. */
 
154
svn_error_t *load_authz_config(server_baton_t *server,
 
155
                               svn_ra_svn_conn_t *conn,
 
156
                               const char *repos_root,
 
157
                               apr_pool_t *pool);
159
158
 
160
159
/* Initialize the Cyrus SASL library. POOL is used for allocations. */
161
160
svn_error_t *cyrus_init(apr_pool_t *pool);