/* This file was automatically generated. Do not edit! */ char *subst(const char *zIn,const char **azSubst); int write_to_temp(const char *zText,char *zFile,size_t nLen); char *db_short_query(const char *zFormat,...); const char *quotable_string(const char *z); char *mprintf(const char *zFormat,...); const char *db_config(const char *zName,const char *zDefault); typedef struct Global Global; typedef struct Scm Scm; struct Scm { const char *zSCM; /* Which SCM subsystem is supported (i.e. "cvs") */ const char *zName; /* User-readable SCM name (i.e. "Subversion") */ int canFilterModules; /* non-zero if the SCM can filter modules */ int (*pxHistoryUpdate)(int isReread); int (*pxDiffVersions)(const char *zOldVersion, const char *zNewVersion, const char *zFile); int (*pxDiffChng)(int cn, int bRaw); int (*pxIsFileAvailable)(const char *zFile); int (*pxDumpVersion)(const char *zVers, const char *zFile, int bRaw); int (*pxUserRead)(); int (*pxUserWrite)(const char *zOmit); }; #define MX_AUX 10 struct Global { int argc; char **argv; /* Command-line arguments to the program */ struct Scm scm; /* SCM-specific variables, callbacks, etc */ const char *zName; /* Base name of the program */ const char *zUser; /* Name of the user */ const char *zHumanName; /* Human readable name of the user */ char *zBaseURL; /* Absolute base URL for any CVSTrac page */ char *zLinkURL; /* URL prefixed to all output URLs */ char *zPath; /* The URL for the current page */ char *zExtra; /* Additional path information following g.zPath */ int okCheckout; /* True if the user has CVS checkout permission */ int okCheckin; /* True if the user has CVS checkin permission */ int okNewTkt; /* True if the user can create new tickets */ int okRead; /* True if the user may view tickets */ int okPassword; /* True if the user may change his password */ int okWrite; /* True if the user can edit tickets */ int okAdmin; /* True if the user has administrative permission */ int okSetup; /* True if the user has setup permission */ int okRdWiki; /* True if the user can read wiki pages */ int okWiki; /* True if the user can write wiki pages */ int okDelete; /* True if able to delete wiki or tickets */ int okQuery; /* True if able to create new reports */ int isAnon; /* Anonymous user (not logged in) */ int isConst; /* True if the page is constant and cacheable. */ int okTicketLink; /* True for ticket info link titles */ int okCheckinLink; /* True for chng info link titles */ int noFollow; /* Output links with rel="nofollow" */ /* Storage for the aux() and/or option() SQL function arguments */ int nAux; /* Number of distinct aux() or option() values */ const char *azAuxName[MX_AUX]; /* Name of each aux() or option() value */ char *azAuxParam[MX_AUX]; /* Param of each aux() or option() value */ const char *azAuxVal[MX_AUX]; /* Value of each aux() or option() value */ const char **azAuxOpt[MX_AUX]; /* Options of each option() value */ int anAuxCols[MX_AUX]; /* Number of columns for option() values */ }; extern Global g; int db_exists(const char *zFormat,...); void db_add_functions(void); int execute_tool(const char *zTool,const char *zAction,const char *zContent,const char **azTSubst); void cgi_printf(const char *zFormat,...); int output_tool(FILE *in);