diff options
context:
space:
mode:
authorBryce Kwon <bryce@brycekwon.com>
committerBryce Kwon <bryce@brycekwon.com>
commit
parent
tree
download
Harden the request path, scan and error recovery
Diffstat (limited to 'source/cgit.h')
-rw-r--r--source/cgit.h17
1 file changed, 14 insertions, 3 deletions
diff --git a/source/cgit.h b/source/cgit.h
index 72c0844..163cd4d 100644
--- a/source/cgit.h
+++ b/source/cgit.h
@@ -38,6 +38,7 @@
#include <string-list.h>
#include <strvec.h>
#include <tag.h>
+#include <tree-walk.h>
#include <tree.h>
#include <url.h>
#include <utf8.h>
@@ -58,6 +59,13 @@
// A double, because a twelfth of a year is not a whole number of seconds.
#define SECONDS_PER_MONTH (SECONDS_PER_YEAR / 12.0)
+// The number of context lines git itself defaults to.
+#define DEFAULT_DIFF_CONTEXT 3
+
+// A tab in rendered source runs on to the next multiple of this, which is the
+// width a browser picks on its own since the stylesheet sets no tab-size.
+#define TAB_WIDTH 8
+
typedef enum {
DIFF_UNIFIED, DIFF_SSDIFF, DIFF_STATONLY
} diff_type;
@@ -168,7 +176,7 @@ struct cgit_query {
char *path;
char *url;
char *period;
- int ofs;
+ int ofs;
int nohead;
char *sort;
int showmsg;
@@ -203,7 +211,8 @@ struct cgit_config {
char *script_name;
char *section;
char *repository_sort;
- char *virtual_root; // Always ends with a slash.
+ // Always ends with a slash.
+ char *virtual_root;
char *strict_export;
struct date_mode date_mode;
int cache_size;
@@ -216,7 +225,7 @@ struct cgit_config {
int cache_snapshot_ttl;
int case_sensitive_sort;
int embedded;
- int trust_scan_filters;
+ int trust_scan_config;
int enable_follow_links;
int enable_gitmodules_links;
int enable_header;
@@ -281,6 +290,8 @@ struct cgit_page {
int status;
const char *statusmsg;
int untrusted;
+ // Set once the status line is out, when an error can only join the body.
+ int headers_sent;
};
struct cgit_environment {