Merge from vendor branch GDB:
[dragonfly.git] / contrib / cvs-1.12.12 / 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
22     /* Should the logmsg be re-read during the do_verify phase?
23      * RereadLogAfterVerify=no|stat|yes
24      * LOGMSG_REREAD_NEVER  - never re-read the logmsg
25      * LOGMSG_REREAD_STAT   - re-read the logmsg only if it has changed
26      * LOGMSG_REREAD_ALWAYS - always re-read the logmsg
27      */
28     int RereadLogAfterVerify;
29
30     char *UserAdminOptions;
31
32     /* Control default behavior of 'cvs import' (-X option on or off) in
33      * CVSROOT/config.  Defaults to off, for backward compatibility.
34      */
35     bool ImportNewFilesToVendorBranchOnly;
36
37     size_t MaxCommentLeaderLength;
38     bool UseArchiveCommentLeader;
39
40 #ifdef AUTH_SERVER_SUPPORT
41     /* Should we check for system usernames/passwords?  */
42     bool system_auth;
43 #endif /* AUTH_SERVER_SUPPORT */
44
45 #ifdef SUPPORT_OLD_INFO_FMT_STRINGS
46     bool UseNewInfoFmtStrings;
47 #endif /* SUPPORT_OLD_INFO_FMT_STRINGS */
48     cvsroot_t *PrimaryServer;
49 #ifdef PROXY_SUPPORT
50     size_t MaxProxyBufferSize;
51 #endif /* PROXY_SUPPORT */
52 #ifdef PRESERVE_PERMISSIONS_SUPPORT
53     bool preserve_perms;
54 #endif /* PRESERVE_PERMISSIONS_SUPPORT */
55 };
56
57 bool parse_error (const char *, unsigned int);
58 struct config *parse_config (const char *);
59 void free_config (struct config *data);
60 #endif /* !PARSEINFO_H */