author | Lars Hjemli <hjemli@gmail.com> | 2009-02-13 19:43:30 (UTC) |
---|---|---|
committer | Lars Hjemli <hjemli@gmail.com> | 2009-07-25 10:55:15 (UTC) |
commit | c4d46c7035d07070ac1ebf0c0b44df927358687f (patch) (unidiff) | |
tree | 562cf4f01afe78b92b13ad5be5dc01e07db04a66 /cgit.h | |
parent | 286a905842dc0bec6d21a614ec4a97c5f19d5bc4 (diff) | |
download | cgit-c4d46c7035d07070ac1ebf0c0b44df927358687f.zip cgit-c4d46c7035d07070ac1ebf0c0b44df927358687f.tar.gz cgit-c4d46c7035d07070ac1ebf0c0b44df927358687f.tar.bz2 |
Add support for mime type registration and lookup
This patch makes it possible to register mappings from filename
extension to mime type in cgitrc and use this mapping when returning
blob content in `plain` view.
The reason for adding this mapping to cgitrc (as opposed to parsing
something like /etc/mime.types) is to allow quick lookup of a limited
number of filename extensions (/etc/mime-types on my machine currently
contains over 700 entries).
NB: A nice addition to this patch would be to parse /etc/mime.types
when `plain` view is requested for a file with an extension for which
there is no mapping registered in cgitrc.
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
-rw-r--r-- | cgit.h | 2 |
1 files changed, 2 insertions, 0 deletions
@@ -12,12 +12,13 @@ | |||
12 | #include <diff.h> | 12 | #include <diff.h> |
13 | #include <diffcore.h> | 13 | #include <diffcore.h> |
14 | #include <refs.h> | 14 | #include <refs.h> |
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 <string-list.h> | ||
18 | #include <xdiff-interface.h> | 19 | #include <xdiff-interface.h> |
19 | #include <xdiff/xdiff.h> | 20 | #include <xdiff/xdiff.h> |
20 | #include <utf8.h> | 21 | #include <utf8.h> |
21 | 22 | ||
22 | 23 | ||
23 | /* | 24 | /* |
@@ -171,12 +172,13 @@ struct cgit_config { | |||
171 | int noheader; | 172 | int noheader; |
172 | int renamelimit; | 173 | int renamelimit; |
173 | int snapshots; | 174 | int snapshots; |
174 | int summary_branches; | 175 | int summary_branches; |
175 | int summary_log; | 176 | int summary_log; |
176 | int summary_tags; | 177 | int summary_tags; |
178 | struct string_list mimetypes; | ||
177 | }; | 179 | }; |
178 | 180 | ||
179 | struct cgit_page { | 181 | struct cgit_page { |
180 | time_t modified; | 182 | time_t modified; |
181 | time_t expires; | 183 | time_t expires; |
182 | size_t size; | 184 | size_t size; |