X-Git-Url: https://gitweb.ps.run/ps-cgit/blobdiff_plain/786609bd36c07b85dbf905fc8c36eba7132122d7..6ceba453a27ead382d0116d95bdeb6b6be1149e2:/cgitrc.5.txt diff --git a/cgitrc.5.txt b/cgitrc.5.txt index 6a926aa..7158c10 100644 --- a/cgitrc.5.txt +++ b/cgitrc.5.txt @@ -42,6 +42,13 @@ agefile:: hh:mm:ss". You may want to generate this file from a post-receive hook. Default value: "info/web/last-modified". +auth-filter:: + Specifies a command that will be invoked for authenticating repository + access. Receives quite a few arguments, and data on both stdin and + stdout for authentication processing. Details follow later in this + document. If no auth-filter is specified, no authentication is + performed. Default value: none. See also: "FILTER API". + branch-sort:: Flag which, when set to "age", enables date ordering in the branch ref list, and when set to "name" enables ordering by branch name. Default @@ -54,32 +61,43 @@ cache-root:: cache-static-ttl:: Number which specifies the time-to-live, in minutes, for the cached version of repository pages accessed with a fixed SHA1. Negative - values have infinite ttl. Default value: -1". + values have infinite ttl, zero means that the cache is disabled for + this type of pages. Default value: -1". cache-dynamic-ttl:: Number which specifies the time-to-live, in minutes, for the cached version of repository pages accessed without a fixed SHA1. Negative - values have infinite ttl. Default value: "5". + values have infinite ttl, zero means that the cache is disabled for this + type of pages. Default value: "5". cache-repo-ttl:: Number which specifies the time-to-live, in minutes, for the cached version of the repository summary page. Negative values have infinite - ttl. Default value: "5". + ttl, zero means that the cache is disabled for this type of pages. + Default value: "5". cache-root-ttl:: Number which specifies the time-to-live, in minutes, for the cached version of the repository index page. Negative values have infinite - ttl. Default value: "5". + ttl, zero means that the cache is disabled for this type of pages. + Default value: "5". cache-scanrc-ttl:: Number which specifies the time-to-live, in minutes, for the result of scanning a path for git repositories. Negative values have infinite - ttl. Default value: "15". + ttl, zero means that the cache is disable for this type of pages. + Default value: "15". cache-about-ttl:: Number which specifies the time-to-live, in minutes, for the cached version of the repository about page. Negative values have infinite - ttl. Default value: "15". + ttl, zero means that the cache is disable for this type of pages. + Default value: "15". + +cache-snapshot-ttl:: + Number which specifies the time-to-live, in minutes, for the cached + version of snapshots. Negative values have infinite ttl, zero means + that the cache is disable for this type of pages. Default value: "5". cache-size:: The maximum number of entries in the cgit cache. Default value: "0" @@ -390,10 +408,10 @@ side-by-side-diffs:: default. Default value: "0". snapshots:: - Text which specifies the default set of snapshot formats generated by - cgit. The value is a space-separated list of zero or more of the - values "tar", "tar.gz", "tar.bz2", "tar.xz" and "zip". Default value: - none. + Text which specifies the default set of snapshot formats that cgit + generates links for. The value is a space-separated list of zero or + more of the values "tar", "tar.gz", "tar.bz2", "tar.xz" and "zip". + Default value: none. source-filter:: Specifies a command which will be invoked to format plaintext blobs @@ -538,8 +556,9 @@ repo.readme:: file. Default value: . repo.snapshots:: - A mask of allowed snapshot-formats for this repo, restricted by the - "snapshots" global setting. Default value: . + A mask of snapshot formats for this repo that cgit generates links for, + restricted by the global "snapshots" setting. Default value: + . repo.section:: Override the current section name for this repository. Default value: @@ -589,7 +608,8 @@ specification with the relevant string; available values are: This is called whenever cgit writes data to the webpage. 'filter_close()':: This is called when the current filtering operation is - completed. + completed. It must return an integer value. Usually 0 + indicates success. Additionally, cgit exposes to the Lua the following built-in functions: @@ -603,6 +623,8 @@ specification with the relevant string; available values are: URL escapes for a path and writes 'str' to the webpage. 'html_url_arg(str)':: URL escapes for an argument and writes 'str' to the webpage. + 'html_include(file)':: + Includes 'file' in webpage. Parameters are provided to filters as follows. @@ -633,7 +655,34 @@ source filter:: file that is to be filtered is available on standard input and the filtered contents is expected on standard output. -Also, all filters are handed the following environment variables: +auth filter:: + The authentication filter receives 12 parameters: + - filter action, explained below, which specifies which action the + filter is called for + - http cookie + - http method + - http referer + - http path + - http https flag + - cgit repo + - cgit page + - cgit url + - cgit login url + When the filter action is "body", this filter must write to output the + HTML for displaying the login form, which POSTs to the login url. When + the filter action is "authenticate-cookie", this filter must validate + the http cookie and return a 0 if it is invalid or 1 if it is invalid, + in the exit code / close function. If the filter action is + "authenticate-post", this filter receives POST'd parameters on + standard input, and should write a complete CGI request, preferably + with a 302 redirect, and write to output one or more "Set-Cookie" + HTTP headers, each followed by a newline. + + Please see `filters/simple-authentication.lua` for a clear example + script that may be modified. + + +All filters are handed the following environment variables: - CGIT_REPO_URL (from repo.url) - CGIT_REPO_NAME (from repo.name)