summaryrefslogtreecommitdiff
path: root/external/gpl2/xcvs/dist/src/parseinfo.h
blob: 2666c8405eecda96de8e44f61643a06c32c51282 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
/*
 *    Copyright (c) 2004  Derek Price, Ximbiot <http://ximbiot.com>,
 *                        and the Free Software Foundation
 *
 *    You may distribute under the terms of the GNU General Public License
 *    as specified in the README file that comes with the CVS source
 *    distribution.
 *
 * This is the header file for definitions and functions shared by parseinfo.c
 * with other portions of CVS.
 */
#ifndef PARSEINFO_H
# define PARSEINFO_H

struct config
{
    void *keywords;
    bool top_level_admin;
    char *lock_dir;
    char *logHistory;
    char *HistoryLogPath;
    char *HistorySearchPath;
    char *TmpDir;

    /* Should the logmsg be re-read during the do_verify phase?
     * RereadLogAfterVerify=no|stat|yes
     * LOGMSG_REREAD_NEVER  - never re-read the logmsg
     * LOGMSG_REREAD_STAT   - re-read the logmsg only if it has changed
     * LOGMSG_REREAD_ALWAYS - always re-read the logmsg
     */
    int RereadLogAfterVerify;

    char *UserAdminOptions;
    char *UserAdminGroup;

    /* Control default behavior of 'cvs import' (-X option on or off) in
     * CVSROOT/config.  Defaults to off, for backward compatibility.
     */
    bool ImportNewFilesToVendorBranchOnly;

    size_t MaxCommentLeaderLength;
    bool UseArchiveCommentLeader;

#ifdef AUTH_SERVER_SUPPORT
    /* Should we check for system usernames/passwords?  */
    bool system_auth;
#endif /* AUTH_SERVER_SUPPORT */

#ifdef SUPPORT_OLD_INFO_FMT_STRINGS
    bool UseNewInfoFmtStrings;
#endif /* SUPPORT_OLD_INFO_FMT_STRINGS */
    cvsroot_t *PrimaryServer;
#ifdef PROXY_SUPPORT
    size_t MaxProxyBufferSize;
#endif /* PROXY_SUPPORT */
#ifdef SERVER_SUPPORT
    size_t MinCompressionLevel;
    size_t MaxCompressionLevel;
#endif /* SERVER_SUPPORT */
#ifdef PRESERVE_PERMISSIONS_SUPPORT
    bool preserve_perms;
#endif /* PRESERVE_PERMISSIONS_SUPPORT */
};

bool parse_error (const char *, unsigned int);
struct config *parse_config (const char *, const char *);
void free_config (struct config *data);
int parse_aclconfig (const char *cvsroot);
#endif /* !PARSEINFO_H */