/* This file was automatically generated.  Do not edit! */
void cgi_set_status(int iStat,const char *zStat);
void cgi_set_content_type(const char *zType);
char *cgi_rfc822_datestamp(time_t now);
void cgi_append_header(const char *zLine);
void cgi_modified_since(time_t objectTime);
void browse_getfile(void);
int dump_version(const char *version,const char *file,int bRaw);
void common_add_nav_item(const char *zUrl,const char *zName);
void browse_fileview(void);
void db_query_free(char **az);
void browse_dirview(void);
int output_trim_message(char *zMsg,int mnChar,int mxChar);
int is_file_available(const char *zFile);
void cgi_set_cookie(const char *zName,const char *zValue,const char *zPath,int lifetime);
const char *db_config(const char *zName,const char *zDefault);
void browse_dir(void);
int diff_versions(const char *oldVersion,const char *newVersion,const char *file);
void browse_filediff(void);
void common_add_help_item(const char *zWikiPage);
void browse_rlog(void);
void filetool(void);
void common_footer(void);
int execute_tool(const char *zTool,const char *zAction,const char *zContent,const char **azTSubst);
const char *quotable_string(const char *z);
void common_standard_menu(const char *zOmit,const char *zSrchUrl);
char *db_short_query(const char *zFormat,...);
const char *default_browse_url(void);
void history_update(int isReread);
int throttle(int exitOnOverload,int needCaptcha);
void login_needed(void);
void login_check_credentials(void);
void cgi_redirect(const char *zURL);
const char *cgi_parameter(const char *zName,const char *zDefault);
#define P(x)        cgi_parameter((x),0)
#define PD(x,y)     cgi_parameter((x),(y))
void dirtool(void);
void db_add_functions(void);
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;
char *format_user(const char *zUser);
void output_formatted(const char *zText,const char *zPageId);
char *printable_vers(const char *zVers);
void output_chng(int cn);
void common_icon(const char *zIcon);
void cgi_printf(const char *zFormat,...);
void common_header(const char *zTitle,...);
char **db_query(const char *zFormat,...);
char *mprintf(const char *zFormat,...);
void common_add_action_item(const char *zUrl,const char *zName);


syntax highlighted by Code2HTML, v. 0.9.1