drop __RCSID (these are all -kb anyway) and reduce diff to upstream
[alioth/cvs.git] / src / parseinfo.h
1 /*
2  *    Copyright (c) 2004  Derek Price, Ximbiot <http://ximbiot.com>,
3  *                        and the Free Software Foundation
4  *
5  *    You may distribute under the terms of the GNU General Public License
6  *    as specified in the README file that comes with the CVS source
7  *    distribution.
8  *
9  * This is the header file for definitions and functions shared by parseinfo.c
10  * with other portions of CVS.
11  */
12 #ifndef PARSEINFO_H
13 # define PARSEINFO_H
14
15 struct config
16 {
17     void *keywords;
18     bool top_level_admin;
19     char *lock_dir;
20     char *logHistory;
21     char *HistoryLogPath;
22     char *HistorySearchPath;
23     char *TmpDir;
24
25     /* Should the logmsg be re-read during the do_verify phase?
26      * RereadLogAfterVerify=no|stat|yes
27      * LOGMSG_REREAD_NEVER  - never re-read the logmsg
28      * LOGMSG_REREAD_STAT   - re-read the logmsg only if it has changed
29      * LOGMSG_REREAD_ALWAYS - always re-read the logmsg
30      */
31     int RereadLogAfterVerify;
32
33     char *UserAdminOptions;
34
35     /* Control default behavior of 'cvs import' (-X option on or off) in
36      * CVSROOT/config.  Defaults to off, for backward compatibility.
37      */
38     bool ImportNewFilesToVendorBranchOnly;
39
40     size_t MaxCommentLeaderLength;
41     bool UseArchiveCommentLeader;
42
43 #ifdef AUTH_SERVER_SUPPORT
44     /* Should we check for system usernames/passwords?  */
45     bool system_auth;
46 #endif /* AUTH_SERVER_SUPPORT */
47
48 #ifdef SUPPORT_OLD_INFO_FMT_STRINGS
49     bool UseNewInfoFmtStrings;
50 #endif /* SUPPORT_OLD_INFO_FMT_STRINGS */
51     cvsroot_t *PrimaryServer;
52 #ifdef PROXY_SUPPORT
53     size_t MaxProxyBufferSize;
54 #endif /* PROXY_SUPPORT */
55 #ifdef SERVER_SUPPORT
56     unsigned MinCompressionLevel;
57     unsigned MaxCompressionLevel;
58 #endif /* SERVER_SUPPORT */
59 #ifdef PRESERVE_PERMISSIONS_SUPPORT
60     bool preserve_perms;
61 #endif /* PRESERVE_PERMISSIONS_SUPPORT */
62 };
63
64 bool parse_error (const char *, unsigned int);
65 struct config *parse_config (const char *, const char *);
66 void free_config (struct config *data);
67 #endif /* !PARSEINFO_H */