summaryrefslogtreecommitdiffabout
path: root/cgit.h
Unidiff
Diffstat (limited to 'cgit.h') (more/less context) (ignore whitespace changes)
-rw-r--r--cgit.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/cgit.h b/cgit.h
index 295441b..e2d5126 100644
--- a/cgit.h
+++ b/cgit.h
@@ -148,68 +148,76 @@ struct cgit_config {
148 int cache_static_ttl; 148 int cache_static_ttl;
149 int enable_index_links; 149 int enable_index_links;
150 int enable_log_filecount; 150 int enable_log_filecount;
151 int enable_log_linecount; 151 int enable_log_linecount;
152 int max_commit_count; 152 int max_commit_count;
153 int max_lock_attempts; 153 int max_lock_attempts;
154 int max_msg_len; 154 int max_msg_len;
155 int max_repodesc_len; 155 int max_repodesc_len;
156 int nocache; 156 int nocache;
157 int renamelimit; 157 int renamelimit;
158 int snapshots; 158 int snapshots;
159 int summary_branches; 159 int summary_branches;
160 int summary_log; 160 int summary_log;
161 int summary_tags; 161 int summary_tags;
162}; 162};
163 163
164struct cgit_page { 164struct cgit_page {
165 time_t modified; 165 time_t modified;
166 time_t expires; 166 time_t expires;
167 char *mimetype; 167 char *mimetype;
168 char *charset; 168 char *charset;
169 char *filename; 169 char *filename;
170 char *title; 170 char *title;
171}; 171};
172 172
173struct cgit_context { 173struct cgit_context {
174 struct cgit_query qry; 174 struct cgit_query qry;
175 struct cgit_config cfg; 175 struct cgit_config cfg;
176 struct cgit_repo *repo; 176 struct cgit_repo *repo;
177 struct cgit_page page; 177 struct cgit_page page;
178}; 178};
179 179
180struct cgit_snapshot_format {
181 const char *suffix;
182 const char *mimetype;
183 write_archive_fn_t write_func;
184 int bit;
185};
186
180extern const char *cgit_version; 187extern const char *cgit_version;
181 188
182extern struct cgit_repolist cgit_repolist; 189extern struct cgit_repolist cgit_repolist;
183extern struct cgit_context ctx; 190extern struct cgit_context ctx;
191extern const struct cgit_snapshot_format cgit_snapshot_formats[];
184extern int cgit_cmd; 192extern int cgit_cmd;
185 193
186extern void cgit_prepare_context(struct cgit_context *ctx); 194extern void cgit_prepare_context(struct cgit_context *ctx);
187extern struct cgit_repo *cgit_get_repoinfo(const char *url); 195extern struct cgit_repo *cgit_get_repoinfo(const char *url);
188extern void cgit_global_config_cb(const char *name, const char *value); 196extern void cgit_global_config_cb(const char *name, const char *value);
189extern void cgit_repo_config_cb(const char *name, const char *value); 197extern void cgit_repo_config_cb(const char *name, const char *value);
190extern void cgit_querystring_cb(const char *name, const char *value); 198extern void cgit_querystring_cb(const char *name, const char *value);
191 199
192extern int chk_zero(int result, char *msg); 200extern int chk_zero(int result, char *msg);
193extern int chk_positive(int result, char *msg); 201extern int chk_positive(int result, char *msg);
194extern int chk_non_negative(int result, char *msg); 202extern int chk_non_negative(int result, char *msg);
195 203
196extern int hextoint(char c); 204extern int hextoint(char c);
197extern char *trim_end(const char *str, char c); 205extern char *trim_end(const char *str, char c);
198extern char *strlpart(char *txt, int maxlen); 206extern char *strlpart(char *txt, int maxlen);
199extern char *strrpart(char *txt, int maxlen); 207extern char *strrpart(char *txt, int maxlen);
200 208
201extern void cgit_add_ref(struct reflist *list, struct refinfo *ref); 209extern void cgit_add_ref(struct reflist *list, struct refinfo *ref);
202extern int cgit_refs_cb(const char *refname, const unsigned char *sha1, 210extern int cgit_refs_cb(const char *refname, const unsigned char *sha1,
203 int flags, void *cb_data); 211 int flags, void *cb_data);
204 212
205extern void *cgit_free_commitinfo(struct commitinfo *info); 213extern void *cgit_free_commitinfo(struct commitinfo *info);
206 214
207extern int cgit_diff_files(const unsigned char *old_sha1, 215extern int cgit_diff_files(const unsigned char *old_sha1,
208 const unsigned char *new_sha1, 216 const unsigned char *new_sha1,
209 linediff_fn fn); 217 linediff_fn fn);
210 218
211extern void cgit_diff_tree(const unsigned char *old_sha1, 219extern void cgit_diff_tree(const unsigned char *old_sha1,
212 const unsigned char *new_sha1, 220 const unsigned char *new_sha1,
213 filepair_fn fn, const char *prefix); 221 filepair_fn fn, const char *prefix);
214 222
215extern void cgit_diff_commit(struct commit *commit, filepair_fn fn); 223extern void cgit_diff_commit(struct commit *commit, filepair_fn fn);