summaryrefslogtreecommitdiffabout
path: root/cgit.h
Unidiff
Diffstat (limited to 'cgit.h') (more/less context) (show whitespace changes)
-rw-r--r--cgit.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/cgit.h b/cgit.h
index 8a69a1f..8927236 100644
--- a/cgit.h
+++ b/cgit.h
@@ -15,12 +15,23 @@
15#include <revision.h> 15#include <revision.h>
16#include <log-tree.h> 16#include <log-tree.h>
17#include <archive.h> 17#include <archive.h>
18#include <xdiff/xdiff.h> 18#include <xdiff/xdiff.h>
19 19
20 20
21/*
22 * The valid cgit repo-commands
23 */
24#define CMD_LOG 1
25#define CMD_COMMIT 2
26#define CMD_DIFF 3
27#define CMD_TREE 4
28#define CMD_VIEW 5
29#define CMD_BLOB 6
30#define CMD_SNAPSHOT 7
31
21typedef void (*configfn)(const char *name, const char *value); 32typedef void (*configfn)(const char *name, const char *value);
22typedef void (*filepair_fn)(struct diff_filepair *pair); 33typedef void (*filepair_fn)(struct diff_filepair *pair);
23typedef void (*linediff_fn)(char *line, int len); 34typedef void (*linediff_fn)(char *line, int len);
24 35
25struct cacheitem { 36struct cacheitem {
26 char *name; 37 char *name;
@@ -69,16 +80,18 @@ struct taginfo {
69}; 80};
70 81
71extern const char cgit_version[]; 82extern const char cgit_version[];
72 83
73extern struct repolist cgit_repolist; 84extern struct repolist cgit_repolist;
74extern struct repoinfo *cgit_repo; 85extern struct repoinfo *cgit_repo;
86extern int cgit_cmd;
75 87
76extern char *cgit_root_title; 88extern char *cgit_root_title;
77extern char *cgit_css; 89extern char *cgit_css;
78extern char *cgit_logo; 90extern char *cgit_logo;
91extern char *cgit_index_header;
79extern char *cgit_logo_link; 92extern char *cgit_logo_link;
80extern char *cgit_module_link; 93extern char *cgit_module_link;
81extern char *cgit_virtual_root; 94extern char *cgit_virtual_root;
82extern char *cgit_script_name; 95extern char *cgit_script_name;
83extern char *cgit_cache_root; 96extern char *cgit_cache_root;
84extern char *cgit_repo_group; 97extern char *cgit_repo_group;
@@ -111,12 +124,14 @@ extern char *cgit_query_sha2;
111extern char *cgit_query_path; 124extern char *cgit_query_path;
112extern char *cgit_query_name; 125extern char *cgit_query_name;
113extern int cgit_query_ofs; 126extern int cgit_query_ofs;
114 127
115extern int htmlfd; 128extern int htmlfd;
116 129
130extern int cgit_get_cmd_index(const char *cmd);
131extern struct repoinfo *cgit_get_repoinfo(const char *url);
117extern void cgit_global_config_cb(const char *name, const char *value); 132extern void cgit_global_config_cb(const char *name, const char *value);
118extern void cgit_repo_config_cb(const char *name, const char *value); 133extern void cgit_repo_config_cb(const char *name, const char *value);
119extern void cgit_querystring_cb(const char *name, const char *value); 134extern void cgit_querystring_cb(const char *name, const char *value);
120 135
121extern int chk_zero(int result, char *msg); 136extern int chk_zero(int result, char *msg);
122extern int chk_positive(int result, char *msg); 137extern int chk_positive(int result, char *msg);
@@ -143,17 +158,19 @@ extern void html_txt(char *txt);
143extern void html_ntxt(int len, char *txt); 158extern void html_ntxt(int len, char *txt);
144extern void html_attr(char *txt); 159extern void html_attr(char *txt);
145extern void html_hidden(char *name, char *value); 160extern void html_hidden(char *name, char *value);
146extern void html_link_open(char *url, char *title, char *class); 161extern void html_link_open(char *url, char *title, char *class);
147extern void html_link_close(void); 162extern void html_link_close(void);
148extern void html_filemode(unsigned short mode); 163extern void html_filemode(unsigned short mode);
164extern int html_include(const char *filename);
149 165
150extern int cgit_read_config(const char *filename, configfn fn); 166extern int cgit_read_config(const char *filename, configfn fn);
151extern int cgit_parse_query(char *txt, configfn fn); 167extern int cgit_parse_query(char *txt, configfn fn);
152extern struct commitinfo *cgit_parse_commit(struct commit *commit); 168extern struct commitinfo *cgit_parse_commit(struct commit *commit);
153extern struct taginfo *cgit_parse_tag(struct tag *tag); 169extern struct taginfo *cgit_parse_tag(struct tag *tag);
170extern void cgit_parse_url(const char *url);
154 171
155extern char *cache_safe_filename(const char *unsafe); 172extern char *cache_safe_filename(const char *unsafe);
156extern int cache_lock(struct cacheitem *item); 173extern int cache_lock(struct cacheitem *item);
157extern int cache_unlock(struct cacheitem *item); 174extern int cache_unlock(struct cacheitem *item);
158extern int cache_cancel_lock(struct cacheitem *item); 175extern int cache_cancel_lock(struct cacheitem *item);
159extern int cache_exist(struct cacheitem *item); 176extern int cache_exist(struct cacheitem *item);