| Commit message (Expand) | Author | Age | Files | Lines |
| * | Makefile: suppress pkg-config error•••Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
| Jason A. Donenfeld | 2014-02-20 | 1 | -1/+1 |
| * | Add a cache-snapshot-ttl configuration variable•••This can be used to specify the TTL for snapshots. Snapshots are usually
static and do not ever change. On the other hand, tarball generation is
CPU intensive.
One use case of this setting (apart from increasing the lifetime of
snapshot cache slots) is caching of snapshots while disabling the cache
for static/dynamic HTML pages (by setting TTL to zero for everything
except for snapshot requests).
Signed-off-by: Lukas Fleischer <cgit@cryptocrack.de>
| Lukas Fleischer | 2014-02-20 | 3 | -0/+12 |
| * | diffstat: do not rely on uninitialized data•••Right now if you visit:
<http://git.zx2c4.com/systemd/diff/src/udev/udev-builtin-input_id.c?id=bcfce235>
you'll see that if you reload the page a few times, a bunch of times the
diffstat comes out with no lines being shown or changed. I'm not
currently sure what the cause of this is, but I suspect it might have to
do with this uninitialized data.
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
| Jason A. Donenfeld | 2014-02-20 | 1 | -0/+1 |
| * | gen-version.sh: check if git is available before trying to call it•••Some people may clone the cgit repository and compile within a sandbox
or on another machine where git is not necessarily installed. When it
happens, cgit is getting compiled with an empty version number.
This commit fixes this.
| Fabien C | 2014-02-05 | 1 | -1/+1 |
| * | simple-authentication: style•••Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
| Jason A. Donenfeld | 2014-01-23 | 1 | -1/+1 |
| * | makefile: use LUA_PKGCONFIG to set Lua implementation•••This breaks compat with the previous LUA_IMPLEMENTATION but gives more
flexibility in that user can specify the pkg-config package name
directly.
Signed-off-by: Natanael Copa <ncopa@alpinelinux.org>
| Natanael Copa | 2014-01-22 | 2 | -31/+16 |
| * | tests: only do lua tests if lua is compiled-in•••Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
| Jason A. Donenfeld | 2014-01-20 | 2 | -2/+17 |
| * | cgit: add --version argument for printing info•••We need this to do runtime tests for make test.
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
| Jason A. Donenfeld | 2014-01-20 | 1 | -0/+17 |
| * | cache: use sendfile() instead of a pair of read() + write()•••sendfile() does the same job and avoids to copy the content into userland
and back. One has to define NO_SENDFILE in case the OS (kernel / libc)
does not supported. It is disabled by default on non-linux environemnts.
According to the glibc, sendfile64() was added in Linux 2.4 (so it has
been there for a while) but after browsing over the mapage of FreeBSD's I
noticed that the prototype is little different.
Signed-off-by: Sebastian Andrzej Siewior <sebastian@breakpoint.cc>
| Sebastian Andrzej Siewior | 2014-01-19 | 3 | -1/+34 |
| * | README: document pkg-config for luajit•••Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
| Jason A. Donenfeld | 2014-01-19 | 1 | -1/+1 |
| * | makefile: bump version•••Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
| Jason A. Donenfeld | 2014-01-17 | 1 | -1/+1 |
| * | mailmap: source before lighttpd•••Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
| Jason A. Donenfeld | 2014-01-17 | 1 | -1/+1 |
| * | ui-shared: do not allow negative minutes•••Do to timestamp differences, sometimes cgit would should "-0 min", which
doesn't make any sense.
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
| Jason A. Donenfeld | 2014-01-17 | 1 | -0/+2 |
| * | auth: document tweakables in lua script•••Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
| Jason A. Donenfeld | 2014-01-17 | 1 | -0/+10 |
| * | repolist: make owner clickable to search•••Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
| Jason A. Donenfeld | 2014-01-17 | 1 | -0/+6 |
| * | ui-shared: move about tab all the way to the left•••There were no objections (at the time of committing this):
http://lists.zx2c4.com/pipermail/cgit/2013-May/001393.html
http://lists.zx2c4.com/pipermail/cgit/2014-January/001904.html
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
| Jason A. Donenfeld | 2014-01-17 | 1 | -4/+4 |
| * | filter: don't forget to reap the auth filter•••Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
| Jason A. Donenfeld | 2014-01-17 | 1 | -0/+1 |
| * | cgit.c: free tmp variable•••Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
| Jason A. Donenfeld | 2014-01-17 | 1 | -0/+1 |
| * | Switch to exclusively using global ctx•••Drop the context parameter from the following functions (and all static
helpers used by them) and use the global context instead:
* cgit_print_http_headers()
* cgit_print_docstart()
* cgit_print_pageheader()
Remove context parameter from all commands
Drop the context parameter from the following functions (and all static
helpers used by them) and use the global context instead:
* cgit_get_cmd()
* All cgit command functions.
* cgit_clone_info()
* cgit_clone_objects()
* cgit_clone_head()
* cgit_print_plain()
* cgit_show_stats()
In initialization routines, use the global context variable instead of
passing a pointer around locally.
Remove callback data parameter for cache slots
This is no longer needed since the context is always read from the
global context variable.
Signed-off-by: Lukas Fleischer <cgit@cryptocrack.de>
| Lukas Fleischer | 2014-01-17 | 19 | -441/+436 |
| * | auth: have cgit calculate login address•••This way we're sure to use virtual root, or any other strangeness
encountered.
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
| Jason A. Donenfeld | 2014-01-16 | 6 | -10/+16 |
| * | auth: lua string comparisons are time invariant•••By default, strings are compared by hash, so we can remove this comment.
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
| Jason A. Donenfeld | 2014-01-16 | 1 | -2/+2 |
| * | authentication: use hidden form instead of referer•••This also gives us some CSRF protection. Note that we make use of the
hmac to protect the redirect value.
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
| Jason A. Donenfeld | 2014-01-16 | 3 | -94/+131 |
| * | auth: add basic authentication filter framework•••This leverages the new lua support. See
filters/simple-authentication.lua for explaination of how this works.
There is also additional documentation in cgitrc.5.txt.
Though this is a cookie-based approach, cgit's caching mechanism is
preserved for authenticated pages.
Very plugable and extendable depending on user needs.
The sample script uses an HMAC-SHA1 based cookie to store the
currently logged in user, with an expiration date.
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
| Jason A. Donenfeld | 2014-01-16 | 6 | -16/+387 |
| * | t0111: Additions and fixes•••* Rename the capitalize-* filters to dump.* since they also dump the
arguments.
* Add full argument validation to the email filters.
Signed-off-by: Lukas Fleischer <cgit@cryptocrack.de>
| Lukas Fleischer | 2014-01-16 | 4 | -10/+10 |
| * | parsing.c: Remove leading space from committer•••This did not really break anything in the past since spaces are ignored
when rendering HTML. Remove the preceding space anyway to prevent from
potential future problems.
Signed-off-by: Lukas Fleischer <cgit@cryptocrack.de>
| Lukas Fleischer | 2014-01-16 | 1 | -1/+1 |
| * | Add .mailmap•••Signed-off-by: Lukas Fleischer <cgit@cryptocrack.de>
| Lukas Fleischer | 2014-01-15 | 1 | -0/+10 |
| * | t0111: Add basic tests for Lua filters•••* Validate the email filter by manipulating stdin. Additional checks for
all the arguments can be added in a later patch.
* Add the exec prefix to all informational messages.
* Rename the filter repository to filter-exec. The Git repository itself
is not renamed since it can be shared amongst all filter types.
* In the filter checks, check whether all arguments are passed properly
instead of validating the buffer/stdin only.
Signed-off-by: Lukas Fleischer <cgit@cryptocrack.de>
| Lukas Fleischer | 2014-01-15 | 5 | -29/+56 |
| * | email-gravatar: fix html syntax issues•••an attribute value specification must be an attribute value literal
unless SHORTTAG YES is specified
| Christian Hesse | 2014-01-15 | 2 | -2/+2 |
| * | email-gravatar: do not scale icons up•••Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
| Jason A. Donenfeld | 2014-01-14 | 2 | -2/+2 |
| * | filter: allow returning exit code from filter•••Filters can now indicate a status back to cgit by means of the exit code
for exec, or the return value from close for Lua.
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
| Jason A. Donenfeld | 2014-01-14 | 3 | -6/+12 |
| * | tests/: Add t0111-filter.sh•••This adds basic tests for all types of exec filters.
Signed-off-by: Lukas Fleischer <cgit@cryptocrack.de>
| Lukas Fleischer | 2014-01-14 | 4 | -0/+57 |
| * | email-gravatar: fix html syntax issues•••* make ampersand a html entity
* add required alt attribute
* add required img end tag
| Christian Hesse | 2014-01-14 | 2 | -2/+2 |
| * | email-gravatar.py: fix UTF-8 | Christian Hesse | 2014-01-14 | 1 | -0/+4 |
| * | email-gravatar.lua: fix for lua 5.2 | Christian Hesse | 2014-01-14 | 1 | -1/+1 |
| * | makefile: only display lua message once•••Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
| Jason A. Donenfeld | 2014-01-14 | 1 | -8/+7 |
| * | README: document lua makefile flags•••Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
| Jason A. Donenfeld | 2014-01-14 | 1 | -0/+16 |
| * | cgitrc.5.txt: Fix documentation of the snapshot mask•••Mention that the snapshot setting only specifies the formats that links
are generated for and not the set of formats that are accessible via
HTTP.
Signed-off-by: Lukas Fleischer <cgit@cryptocrack.de>
| Lukas Fleischer | 2014-01-14 | 1 | -6/+7 |
| * | makefile: auto-detect presence of various Lua, bsd•••We favor LuaJIT over Lua. We disable Lua if neither can be found. We
error out if a particular Lua is specified via LUA_IMPLEMENTATION=JIT or
LUA_IMPLEMENTATION=VANILLA, but cannot be found. We print a status
message depending on what happens.
Also, we do not link against libdl on the BSDs, since they include it as
part of libc.
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
| Jason A. Donenfeld | 2014-01-14 | 1 | -10/+37 |
| * | filter: style tweaks•••Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
| Jason A. Donenfeld | 2014-01-14 | 1 | -11/+11 |
| * | filter: add page source to email filter•••Since the email filter is called from lots of places, the script might
benefit from knowing the origin. That way it can modify its contents
and/or size depending.
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
| Jason A. Donenfeld | 2014-01-14 | 8 | -15/+21 |
| * | filter: add gravatar scripts•••The lua one is hugely faster than the python one, but both are included
for comparison.
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
| Jason A. Donenfeld | 2014-01-14 | 2 | -0/+58 |
| * | filter: add support for email filter•••Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
| Jason A. Donenfeld | 2014-01-14 | 9 | -2/+47 |
| * | filter: return on null filter from open and close•••So that we don't have to include the if(filter) open_filter(filter)
block everywhere, we introduce the guard in the function itself. This
should simplify quite a bit of code.
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
| Jason A. Donenfeld | 2014-01-14 | 4 | -22/+14 |
| * | filter: add lua support•••Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
| Jason A. Donenfeld | 2014-01-14 | 4 | -3/+235 |
| * | filter: basic write hooking infrastructure•••Filters can now call hook_write and unhook_write if they want to
redirect writing to stdout to a different function. This saves us from
potential file descriptor pipes and other less efficient mechanisms.
We do this instead of replacing the call in html_raw because some places
stdlib's printf functions are used (ui-patch or within git itself),
which has its own internal buffering, which makes it difficult to
interlace our function calls. So, we dlsym libc's write and then
override it in the link stage.
While we're at it, we move considerations of argument count into the
generic new filter handler.
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
| Jason A. Donenfeld | 2014-01-14 | 4 | -23/+67 |
| * | filter: allow for cleanup hook for filter types•••At some point, we're going to want to do lazy deallocation of filters.
For example, if we implement lua, we'll want to load the lua runtime
once for each filter, even if that filter is called many times.
Similarly, for persistent exec filters, we'll want to load it once,
despite many open_filter and close_filter calls, and only reap the child
process at the end of the cgit process. For this reason, we add here a
cleanup function that is called at the end of cgit's main().
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
| Jason A. Donenfeld | 2014-01-14 | 3 | -27/+66 |
| * | filter: introduce "filter type" prefix•••This allows different filter implementations to be specified in the
configuration file. Currently only "exec" is supported, but it may now
be specified either with or without the "exec:" prefix.
Signed-off-by: John Keeping <john@keeping.me.uk>
| John Keeping | 2014-01-14 | 2 | -2/+40 |
| * | filter: add interface layer•••Change the existing cgit_{open,close,fprintf}_filter functions to
delegate to filter-specific implementations accessed via function
pointers on the cgit_filter object.
We treat the "exec" filter type slightly specially here by putting its
structure definition in the header file and providing an "init" function
to set up the function pointers. This is required so that the
ui-snapshot.c code that applies a compression filter can continue to use
the filter interface to do so.
Signed-off-by: John Keeping <john@keeping.me.uk>
| John Keeping | 2014-01-14 | 3 | -22/+63 |
| * | filter: add fprintf_filter function•••This stops the code in cgit.c::print_repo needing to inspect the
cgit_filter structure, meaning that we can abstract out different filter
types that will have different fields that need to be printed.
Signed-off-by: John Keeping <john@keeping.me.uk>
| John Keeping | 2014-01-14 | 3 | -3/+9 |
| * | authors: specify maintainers•••Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
| Jason A. Donenfeld | 2014-01-14 | 1 | -6/+13 |