/* 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);


syntax highlighted by Code2HTML, v. 0.9.1