xref: /netbsd/external/gpl2/xcvs/dist/src/parseinfo.h (revision 6550d01e)
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     char *UserAdminGroup;
35 
36     /* Control default behavior of 'cvs import' (-X option on or off) in
37      * CVSROOT/config.  Defaults to off, for backward compatibility.
38      */
39     bool ImportNewFilesToVendorBranchOnly;
40 
41     size_t MaxCommentLeaderLength;
42     bool UseArchiveCommentLeader;
43 
44 #ifdef AUTH_SERVER_SUPPORT
45     /* Should we check for system usernames/passwords?  */
46     bool system_auth;
47 #endif /* AUTH_SERVER_SUPPORT */
48 
49 #ifdef SUPPORT_OLD_INFO_FMT_STRINGS
50     bool UseNewInfoFmtStrings;
51 #endif /* SUPPORT_OLD_INFO_FMT_STRINGS */
52     cvsroot_t *PrimaryServer;
53 #ifdef PROXY_SUPPORT
54     size_t MaxProxyBufferSize;
55 #endif /* PROXY_SUPPORT */
56 #ifdef SERVER_SUPPORT
57     size_t MinCompressionLevel;
58     size_t MaxCompressionLevel;
59 #endif /* SERVER_SUPPORT */
60 #ifdef PRESERVE_PERMISSIONS_SUPPORT
61     bool preserve_perms;
62 #endif /* PRESERVE_PERMISSIONS_SUPPORT */
63 };
64 
65 bool parse_error (const char *, unsigned int);
66 struct config *parse_config (const char *, const char *);
67 void free_config (struct config *data);
68 #endif /* !PARSEINFO_H */
69