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 size_t MinCompressionLevel; 57 size_t 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 */ 68