AgeCommit message (Collapse)AuthorLines
Serve only the files a dumb clone asks forBryce Kwon-2/+2
The object path check let any run of safe characters through, so a spelling such as info//alternates or info/./alternates reached the alternates file the exact name was refused for. Only a loose object, a pack with its index and info/http-alternates are served now, and any other path is not found.
Describe root-readme as the site's about pageBryce Kwon-0/+16
Answer 404 for any path below the about pageBryce Kwon-1/+1
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.
Pin the advisory classes with tests and name an empty authorBryce Kwon-0/+110
Each class behind cgit's published advisories now has a check against the current code, from a newline in a file name to shell syntax handed to a filter. The feed also treated an ident with an empty name and an empty address as present and wrote an empty person, which Atom forbids.
Test the hardening passBryce Kwon-1/+1
Harden the request path, scan and error recoveryBryce Kwon-5/+26
Clean up the whole treeBryce Kwon-2/+1
Trim the comments and dead code across the treeBryce Kwon-4/+2
Remove the auto-submitting selectsBryce Kwon-4/+4
Renumber the test scripts into themed rangesBryce Kwon-0/+0
t000x the ground the suite stands on: git version, html validity, the cache t01xx page content, one script per page t02xx features that cut across pages: filters, submodule links, dates, limits t03xx defence, the security regressions and the $HOME promise t04xx the helper tools under tools/
Resolve submodule links from `.gitmodules`Bryce Kwon-1/+40
Tidy the test comments and shell portabilityBryce Kwon-25/+41
Sort refs by the date the ref actually carriesBryce Kwon-0/+57
Expand `module-link` placeholders outside printfBryce Kwon-0/+71
Mark the security test executableBryce Kwon-0/+0
Drop the help tab and its built-in guideBryce Kwon-25/+0
Replace the browser markdown renderer with a filterBryce Kwon-2/+2
The readme is now escaped plain text unless `about-filter` points at the new `about-render.lua`, which renders markdown, man pages and plain text server-side. `enable-markdown` goes away with the renderer.
Backfill an absent commit messageBryce Kwon-0/+22
Percent-encode file paths in side-by-side diffsBryce Kwon-0/+26
Add a help page with common workflowsBryce Kwon-0/+25
Keep line structure in plaintext readmesBryce Kwon-0/+4
Submit option forms without inline handlersBryce Kwon-0/+10
Add security and fork-behaviour regression tests v2.0.0Bryce Kwon-0/+113