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 15struct 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 65bool parse_error (const char *, unsigned int); 66struct config *parse_config (const char *, const char *); 67void free_config (struct config *data); 68#endif /* !PARSEINFO_H */ 69