aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Dan McGee <dpmcgee@gmail.com>2011-01-13 03:06:06 (JST)
committerGravatar Lars Hjemli <hjemli@gmail.com>2011-02-19 22:57:48 (JST)
commit35d33014fb897cac24f2ae42d8a2d9e005938bd9 (patch)
treec55f76cba9334ede9cc7411f4a0834d9ff807c4d
parent17596459fe9a43428a261e66f65b227d15bf7ee5 (diff)
downloadcgit-35d33014fb897cac24f2ae42d8a2d9e005938bd9.zip
cgit-35d33014fb897cac24f2ae42d8a2d9e005938bd9.tar.gz
Add is_clone flag to available commands
This will be used to make these operations configurable via a config option. Signed-off-by: Dan McGee <dpmcgee@gmail.com> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
-rw-r--r--cmd.c42
-rw-r--r--cmd.h3
2 files changed, 23 insertions, 22 deletions
diff --git a/cmd.c b/cmd.c
index 6dc9f5e..0224ee9 100644
--- a/cmd.c
+++ b/cmd.c
@@ -129,31 +129,31 @@ static void tree_fn(struct cgit_context *ctx)
129 cgit_print_tree(ctx->qry.sha1, ctx->qry.path); 129 cgit_print_tree(ctx->qry.sha1, ctx->qry.path);
130} 130}
131 131
132#define def_cmd(name, want_repo, want_layout, want_vpath) \ 132#define def_cmd(name, want_repo, want_layout, want_vpath, is_clone) \
133 {#name, name##_fn, want_repo, want_layout, want_vpath} 133 {#name, name##_fn, want_repo, want_layout, want_vpath, is_clone}
134 134
135struct cgit_cmd *cgit_get_cmd(struct cgit_context *ctx) 135struct cgit_cmd *cgit_get_cmd(struct cgit_context *ctx)
136{ 136{
137 static struct cgit_cmd cmds[] = { 137 static struct cgit_cmd cmds[] = {
138 def_cmd(HEAD, 1, 0, 0), 138 def_cmd(HEAD, 1, 0, 0, 1),
139 def_cmd(atom, 1, 0, 0), 139 def_cmd(atom, 1, 0, 0, 0),
140 def_cmd(about, 0, 1, 0), 140 def_cmd(about, 0, 1, 0, 0),
141 def_cmd(blob, 1, 0, 0), 141 def_cmd(blob, 1, 0, 0, 0),
142 def_cmd(commit, 1, 1, 1), 142 def_cmd(commit, 1, 1, 1, 0),
143 def_cmd(diff, 1, 1, 1), 143 def_cmd(diff, 1, 1, 1, 0),
144 def_cmd(info, 1, 0, 0), 144 def_cmd(info, 1, 0, 0, 1),
145 def_cmd(log, 1, 1, 1), 145 def_cmd(log, 1, 1, 1, 0),
146 def_cmd(ls_cache, 0, 0, 0), 146 def_cmd(ls_cache, 0, 0, 0, 0),
147 def_cmd(objects, 1, 0, 0), 147 def_cmd(objects, 1, 0, 0, 1),
148 def_cmd(patch, 1, 0, 1), 148 def_cmd(patch, 1, 0, 1, 0),
149 def_cmd(plain, 1, 0, 0), 149 def_cmd(plain, 1, 0, 0, 0),
150 def_cmd(refs, 1, 1, 0), 150 def_cmd(refs, 1, 1, 0, 0),
151 def_cmd(repolist, 0, 0, 0), 151 def_cmd(repolist, 0, 0, 0, 0),
152 def_cmd(snapshot, 1, 0, 0), 152 def_cmd(snapshot, 1, 0, 0, 0),
153 def_cmd(stats, 1, 1, 1), 153 def_cmd(stats, 1, 1, 1, 0),
154 def_cmd(summary, 1, 1, 0), 154 def_cmd(summary, 1, 1, 0, 0),
155 def_cmd(tag, 1, 1, 0), 155 def_cmd(tag, 1, 1, 0, 0),
156 def_cmd(tree, 1, 1, 1), 156 def_cmd(tree, 1, 1, 1, 0),
157 }; 157 };
158 int i; 158 int i;
159 159
diff --git a/cmd.h b/cmd.h
index 8dc01bd..eb5bc87 100644
--- a/cmd.h
+++ b/cmd.h
@@ -8,7 +8,8 @@ struct cgit_cmd {
8 cgit_cmd_fn fn; 8 cgit_cmd_fn fn;
9 unsigned int want_repo:1, 9 unsigned int want_repo:1,
10 want_layout:1, 10 want_layout:1,
11 want_vpath:1; 11 want_vpath:1,
12 is_clone:1;
12}; 13};
13 14
14extern struct cgit_cmd *cgit_get_cmd(struct cgit_context *ctx); 15extern struct cgit_cmd *cgit_get_cmd(struct cgit_context *ctx);