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