Commits


bubble up got_repo_commits() now that got_get_repo_commits() doesn't look at `action' we can stop fetching the commits during the rendering and bubble up the call. This yields better error messages and better replies codes on failure.


simplify gotwebd' server matching Currently, if there is not a match on the server name, it attempts to match the "subdomain" against the server names, and fall back to the first server defined. The server name is taken from the SERVER_NAME fastcgi' parameter, the subdomain extracted from HTTP_HOST. Keep only the SERVER_NAME matching, but still use the first server defined if there's no match. Fix the manpage documenting how matching works and drop the lie about SNI as gotwebd doesn't do TLS but just looks at what the upstream http server decided. ok stsp@


retire GOT_ERR_QUERYSTRING it's redundant with GOT_ERR_BAD_QUERYSTRING; convert its only use to the latter.


dropping unnecessary strlen()s ok jamsek, stsp


gotwebd: fix some got_error_from_errno2/3 calls it's not printf-like so %s don't make sense. Tweak the order of the arguments to obtain the intended output.


don't zero fields of a calloc()-allocated struct


rename got_gotweb_flushfile -> got_gotweb_closefile suggested and ok millert@


log close() failure in gotweb_free_transport


simplify got_gotweb_openfile/flushfile Return only the FILE *, and require only that to close subsequently. Having to manage the file descriptor too makes using these functions unnecessary complex. millert@ agrees


gotwebd: fix logic error and skip again some entries in the index logic error introduced in df2d3cd25 ok stsp@


gotwebd: don't special case BLOB, BLOBRAW and RSS shuffle some code to handle all the page types in the switch. ok tracey@


gotwebd: reply with non-200 HTTP status code on error ok tracey@


gotwebd: provide gotweb_render_page() entrypoint for all pages simplify gotweb_process_request more, handling all the pages inside the big switch. There's only one entrypoint for rendering the templates gotweb_render_page() that takes the page' content as argument. The only real difference is that gotweb_render_index() now skips directory entries which fails to handle. ok tracey@


include sha2.h too where sha1.h is included In preparation for wide sha256 support; stsp@ agrees. Change done mechanically with find . -iname \*.[cy] -exec sam {} + X ,x/<sha1\.h>/i/\n#include <sha2.h>


gotwebd: gc unused opendir(). ok stsp@