| Age | Commit message (Collapse) | Author | Lines |
|
summary-branches, summary-tags and max-ref-count already listed every
ref at 0, but a negative value reached qsort as a count and crashed the
summary and refs pages, and emptied the branch switcher.
|
|
|
|
|
|
|
|
1456483 gated the key and named it under trust-scan-config, but this
section kept the list from before.
|
|
|
|
|
|
|
|
The manual has named the commit page since it was written in 2008, a
year after the index started linking the log instead.
|
|
With nothing below the about page, a readme's relative links have to be
written against the tree, and only cgit knows how this site spells the
url of a tree page and which ref the readme was read from. Both reach
the filter already escaped for a url, built by the same writer as
cgit's own links.
|
|
The about page served every file beside the readme as a page of its
own, through the about filter, and answered 200 for directories and
missing files alike. Images it passed through came from the root of the
default branch whatever the readme's own directory and ref. A readme on
disk exposed its whole directory this way.
|
|
The guard took local as a name that may carry the -local suffix, but
git reads local only as a whole alias of default-local and dies on
anything after it, so that one value turned every page into a 500.
|
|
The dumb transport reads files that already sit on the disk, so a pack
copied into a slot cost that disk twice and the request a second write
of every byte. A snapshot took a slot whatever its size, so a visitor
naming distinct refs and ids could fill the cache root with archives.
`cache-max-slot-size`, 64 MB unless set, now serves a larger response
from the lock file and drops it, along with any expired copy it would
have replaced.
|
|
`enable-html-serving` makes the plain page send a repository file as
text/html on the site's own origin, with no nosniff and no policy, so
a scanned repository could switch it on from its git config or cgitrc
without `trust-scan-config` and run script against every visitor. The
warning for a key read from git config also named a null repository,
because `repo->path` was set only after that file had been read.
|
|
`cgit_abort_filters` unhooks the Lua write interposer under NO_LUA
too, where neither the hook nor its state exists, so `make NO_LUA=1`
and the default mode of `tools/release-build.sh` have not compiled
since the die path learned to take stdout back from a filter. The
suite now builds that variant into `build/nolua` and runs it, and a
`lua:` filter in such a build is refused with a message naming the
cause instead of an unknown filter type.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Beyond the format change, the documented defaults and inheritance
notes now match what the code does.
|