/* This file was automatically generated. Do not edit! */ int output_trim_message(char *zMsg,int mnChar,int mxChar); int bprintf(char *zBuf,int nBuflen,const char *zFormat,...); void cgi_modified_since(time_t objectTime); char **db_query(const char *zFormat,...); int appendf(char *zBuf,int *nCurlen,int nBuflen,const char *zFormat,...); const char *cgi_parameter(const char *zName,const char *zDefault); #define PD(x,y) cgi_parameter((x),(y)) time_t parse_time(const char *zTime); #define P(x) cgi_parameter((x),0) void history_update(int isReread); void cgi_redirect(const char *zURL); void login_check_credentials(void); void timeline_rss(void); char *db_short_query(const char *zFormat,...); const char *cgi_append_content(const char *zData,int nAmt); void output_formatted(const char *zText,const char *zPageId); char *cgi_extract_content(int *pnAmt); char *format_formatted(const char *zText); void index_rss(void); void common_rss_footer(void); char *mprintf(const char *zFormat,...); void cgi_append_header(const char *zLine); char *cgi_rfc822_datestamp(time_t now); void cgi_printf(const char *zFormat,...); 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; void cgi_set_content_type(const char *zType); const char *db_config(const char *zName,const char *zDefault);