aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Lars Hjemli <hjemli@gmail.com>2007-05-19 06:56:10 (JST)
committerGravatar Lars Hjemli <hjemli@gmail.com>2007-05-19 06:56:10 (JST)
commit5e75128a8bee885d83563d8c521172328d511d12 (patch)
tree39e32199b06b6e68782040d5c2a46162fb0cf771
parent08cc2e5f0e24773dad81d38bd6b689e36afe9dda (diff)
downloadcgit-5e75128a8bee885d83563d8c521172328d511d12.zip
cgit-5e75128a8bee885d83563d8c521172328d511d12.tar.gz
Add html_include()
This is a function used to include external htmlfiles in cgit- generated pages. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
-rw-r--r--cgit.h1
-rw-r--r--html.c14
2 files changed, 15 insertions, 0 deletions
diff --git a/cgit.h b/cgit.h
index f3d783e..fc44a71 100644
--- a/cgit.h
+++ b/cgit.h
@@ -144,6 +144,7 @@ extern void html_hidden(char *name, char *value);
144extern void html_link_open(char *url, char *title, char *class); 144extern void html_link_open(char *url, char *title, char *class);
145extern void html_link_close(void); 145extern void html_link_close(void);
146extern void html_filemode(unsigned short mode); 146extern void html_filemode(unsigned short mode);
147extern int html_include(const char *filename);
147 148
148extern int cgit_read_config(const char *filename, configfn fn); 149extern int cgit_read_config(const char *filename, configfn fn);
149extern int cgit_parse_query(char *txt, configfn fn); 150extern int cgit_parse_query(char *txt, configfn fn);
diff --git a/html.c b/html.c
index 175b4b6..33a956f 100644
--- a/html.c
+++ b/html.c
@@ -166,3 +166,17 @@ void html_filemode(unsigned short mode)
166 html_fileperm(mode >> 3); 166 html_fileperm(mode >> 3);
167 html_fileperm(mode); 167 html_fileperm(mode);
168} 168}
169
170int html_include(const char *filename)
171{
172 FILE *f;
173 char buf[4096];
174 size_t len;
175
176 if (!(f = fopen(filename, "r")))
177 return -1;
178 while((len = fread(buf, 1, 4096, f)) > 0)
179 write(htmlfd, buf, len);
180 fclose(f);
181 return 0;
182}