Commit Briefs

Omar Polo

gotwebd: add an RSS feed for the tags

ok tracey@


Omar Polo

gotwebd: use DOCUMENT_URI rather than SCRIPT_NAME

the latter is empty when serving from a directory-like path prefix with an httpd.conf(5) as per gotwebd(8). ok tracey@


Omar Polo

gotwebd: templateify gotweb_render_commits

ok tracey@


Omar Polo

gotwebd: templateify gotweb_render_navs

ok tracey@


Omar Polo

gotwebd: drop index_page_str and page_str

gotwebd uses sprintf to update index_page_str and page_str if they were negative. While this specific usage is safe, let's drop it. Since the index_page_str and page_str fields are never read from, remove them. This saves two allocations per request too. ok tracey@


Omar Polo

gotwebd: start using the template system

ok tracey@


Omar Polo

gotwebd: provide maximum value for the description and cloneurl

ok stsp@


Omar Polo

gotwebd: drop unused path parameter from got_get_repo_{owner,age}

ok jamsek


Landry Breuil

add respect_exportok flag, defaulting to off

allows to hide repositories if they have the magic git-daemon-export-ok file ok op@ tracey@ stsp@


Omar Polo

gotwebd: percent-encode generated URLs

This adds a new helper function `gotweb_link' that outputs an HTML link with the parameter correctly escaped. ok stsp@


Omar Polo

gotwebd: shrink struct server

keeping GOTWEBD_REPO_CACHESIZE * sizeof(struct cache_repo) inside the struct server makes it too large for imsg on some platforms (linux at least.) Instead, store a pointer and allocate the array when it's received on the child processes. ok stsp@


Omar Polo

gotwebd: plug leak in fcgi_parse_params

fcgi_parse_params parses fastcgi parameters into a list. (This is a leftover from slowcgi where that list is later used to populate the environment of the CGI process.) However, this list is never looked at and its memory never released, so just drop it. Make the matching on fastcgi parameters name strictier by checking also that the length is the one we expect; otherwise we might pick up parameters with the same prefix string (i.e. FOO vs FOO_WITH_SUFFIX) While here turn some bcopy into memcpy and simplify some if-nesting too. Fix the reading from an un-initialized pointer that I introduced in a previous commit. ok stsp@



Stefan Sperling

make gotwebd cache open repository handles in struct server

ok op@


Omar Polo

gotwebd: use SCRIPT_NAME to derive URLs

This makes gotwebd use SCRIPT_NAME instead of the DOCUMENT_ROOT fastcgi param to generate the links to the assets and changes some links so every page is consistently linked with a relative URL. It allows to drop the `root "/"' in the location for fastcgi and, as a bonus, also makes possible to run gotwebd on non "/" paths. ok stsp@