iadd an AUTHORS a SEE ALSO section - libgcgi - REST library for Gopher Err bitreich.org 70
hgit clone git://bitreich.org/libgcgi git://hg6vgqziawt5s4dj.onion/libgcgi URL:git://bitreich.org/libgcgi git://hg6vgqziawt5s4dj.onion/libgcgi bitreich.org 70
1Log /scm/libgcgi/log.gph bitreich.org 70
1Files /scm/libgcgi/files.gph bitreich.org 70
1Refs /scm/libgcgi/refs.gph bitreich.org 70
1Tags /scm/libgcgi/tag bitreich.org 70
1README /scm/libgcgi/file/README.gph bitreich.org 70
1LICENSE /scm/libgcgi/file/LICENSE.gph bitreich.org 70
i--- Err bitreich.org 70
1commit 9dd4e7ace8205ca78f096674aa8f2129c790fbc9 /scm/libgcgi/commit/9dd4e7ace8205ca78f096674aa8f2129c790fbc9.gph bitreich.org 70
1parent 39674c36f9dbf2a2f4be5fa2f8df9894c1ed75be /scm/libgcgi/commit/39674c36f9dbf2a2f4be5fa2f8df9894c1ed75be.gph bitreich.org 70
hAuthor: Josuah Demangeon <me@josuah.net> URL:mailto:me@josuah.net bitreich.org 70
iDate: Wed, 3 Aug 2022 18:45:00 +0200 Err bitreich.org 70
i Err bitreich.org 70
iadd an AUTHORS a SEE ALSO section Err bitreich.org 70
i Err bitreich.org 70
iDiffstat: Err bitreich.org 70
i M README | 49 ++++++++++++++++++------------- Err bitreich.org 70
i M libgcgi.3 | 15 +++++++++++++++ Err bitreich.org 70
i Err bitreich.org 70
i2 files changed, 43 insertions(+), 21 deletions(-) Err bitreich.org 70
i--- Err bitreich.org 70
1diff --git a/README b/README /scm/libgcgi/file/README.gph bitreich.org 70
i@@ -4,7 +4,7 @@ NAME Err bitreich.org 70
i gcgi_handle_request, gcgi_fatal, gcgi_template, gcgi_set_var, Err bitreich.org 70
i gcgi_get_var, gcgi_free_var_list, gcgi_read_var_list, Err bitreich.org 70
i gcgi_write_var_list, gcgi_gopher_search, gcgi_gopher_path, Err bitreich.org 70
i- gcgi_gopher_query, gcgi_gopher_host, gcgi_gopher_port, REST library for Err bitreich.org 70
i+ gcgi_gopher_query, gcgi_gopher_host, gcgi_gopher_port, – REST library for Err bitreich.org 70
i Gopher Err bitreich.org 70
i Err bitreich.org 70
i SYNOPSIS Err bitreich.org 70
i@@ -51,10 +51,10 @@ DESCRIPTION Err bitreich.org 70
i }; Err bitreich.org 70
i Err bitreich.org 70
i The glob is a string against which the path (everything in the query Err bitreich.org 70
i- before the ?) will be matched against. Err bitreich.org 70
i+ before the “”?) will be matched against. Err bitreich.org 70
i Err bitreich.org 70
i The fn function pointer will be called, with an array of matches passed Err bitreich.org 70
i- as argument. There are as many matches populated as there are * in Err bitreich.org 70
i+ as argument. There are as many matches populated as there are “*” in Err bitreich.org 70
i glob. Err bitreich.org 70
i Err bitreich.org 70
i void gcgi_handle_request(struct gcgi_handler h[], int argc, char **argv) Err bitreich.org 70
i@@ -65,8 +65,8 @@ DESCRIPTION Err bitreich.org 70
i Err bitreich.org 70
i Content Generation Err bitreich.org 70
i According to geomyidae(8) behavior, the output format will be: Err bitreich.org 70
i- a raw gophermap if the binary is index.cgi, Err bitreich.org 70
i- a geomyidae(8) gph format if the binary is index.dcgi. Err bitreich.org 70
i+ • a raw gophermap if the binary is “index.cgi”, Err bitreich.org 70
i+ • a geomyidae(8) ‘gph’ format if the binary is “index.dcgi”. Err bitreich.org 70
i Err bitreich.org 70
i void gcgi_fatal(char *fmt, ...) Err bitreich.org 70
i Prints an error message formatted by fmt and exit(3) the program Err bitreich.org 70
i@@ -74,7 +74,7 @@ DESCRIPTION Err bitreich.org 70
i Err bitreich.org 70
i void gcgi_template(char const *path, struct gcgi_var_list *vars) Err bitreich.org 70
i Format the template at path replacing every occurence of Err bitreich.org 70
i- {{key}} by the matching value by searching in vars. Err bitreich.org 70
i+ “{{key}}” by the matching value by searching in vars. Err bitreich.org 70
i Err bitreich.org 70
i void gcgi_print_gophermap(char type, char *desc, char *path, char *host, Err bitreich.org 70
i char *port) Err bitreich.org 70
i@@ -91,9 +91,9 @@ DESCRIPTION Err bitreich.org 70
i Err bitreich.org 70
i Variable List Handling Err bitreich.org 70
i A common data format is used for handling lists of variables: Err bitreich.org 70
i- For parsing a simple text-based database format and writing it back. Err bitreich.org 70
i- For storing the parsed query string in gcgi_gopher_query. Err bitreich.org 70
i- For passing variables to expand in the templates. Err bitreich.org 70
i+ • For parsing a simple text-based database format and writing it back. Err bitreich.org 70
i+ • For storing the parsed query string in gcgi_gopher_query. Err bitreich.org 70
i+ • For passing variables to expand in the templates. Err bitreich.org 70
i Err bitreich.org 70
i void gcgi_set_var(struct gcgi_var_list *vars, char *key, char *val) Err bitreich.org 70
i Overwrite with val the value of a variable matching key of vars. Err bitreich.org 70
i@@ -112,19 +112,19 @@ DESCRIPTION Err bitreich.org 70
i void gcgi_read_var_list(struct gcgi_var_list *vars, char *path) Err bitreich.org 70
i Store all variables from path onto variables in vars. The file Err bitreich.org 70
i format is similar to RFC822 messages or HTTP headers: Err bitreich.org 70
i- One line per variable, with a key=value format. Err bitreich.org 70
i- The key is everything at the beginning of the line until the Err bitreich.org 70
i- occurence of :. Err bitreich.org 70
i- The value is everything after : . Err bitreich.org 70
i- After the list of variables, an empty line declares the body Err bitreich.org 70
i+ • One line per variable, with a key=value format. Err bitreich.org 70
i+ • The key is everything at the beginning of the line until the Err bitreich.org 70
i+ occurence of “:”. Err bitreich.org 70
i+ • The value is everything after “: ”. Err bitreich.org 70
i+ • After the list of variables, an empty line declares the body Err bitreich.org 70
i of the message, which continues until the end and is stored in Err bitreich.org 70
i- a text key. Err bitreich.org 70
i+ a “text” key. Err bitreich.org 70
i Err bitreich.org 70
i int gcgi_write_var_list(struct gcgi_var_list *vars, char *path) Err bitreich.org 70
i Encode the variable list vars into a new file at path. A Err bitreich.org 70
i temporary file will be created in the meantime, and the Err bitreich.org 70
i replacement will be atomic so that no partial write can occur. Err bitreich.org 70
i- The text special key will be turned into the body of the Err bitreich.org 70
i+ The “text” special key will be turned into the body of the Err bitreich.org 70
i message after an empty line instead of a variable on its own Err bitreich.org 70
i line. Err bitreich.org 70
i Err bitreich.org 70
i@@ -134,7 +134,7 @@ DESCRIPTION Err bitreich.org 70
i Err bitreich.org 70
i char *gcgi_gopher_search Err bitreich.org 70
i From argv[1], this is the search string, passed after a tab in Err bitreich.org 70
i- the gopher protocol for item type 7. Err bitreich.org 70
i+ the gopher protocol for item type “7”. Err bitreich.org 70
i Err bitreich.org 70
i char *gcgi_gopher_path Err bitreich.org 70
i From argv[2], this is the query path. It is the full query Err bitreich.org 70
i@@ -143,17 +143,17 @@ DESCRIPTION Err bitreich.org 70
i struct gcgi_var_list gcgi_gopher_query Err bitreich.org 70
i From argv[2], this is the query string stored as a key-value Err bitreich.org 70
i gcgi_var_list. It is extracted from the part of the query after Err bitreich.org 70
i- the ?, usually formated as Err bitreich.org 70
i- ?key1=value1&key2=value2&key3=value3 Err bitreich.org 70
i+ the “”?, usually formated as Err bitreich.org 70
i+ “?key1=value1&key2=value2&key3=value3” Err bitreich.org 70
i Err bitreich.org 70
i char *gcgi_gopher_host Err bitreich.org 70
i From argv[3], this is the current host name configured in Err bitreich.org 70
i- geomyidae(8). It is what to use as a host in links printed Err bitreich.org 70
i+ geomyidae(8). It is what to use as a ‘host’ in links printed Err bitreich.org 70
i out. Err bitreich.org 70
i Err bitreich.org 70
i char *gcgi_gopher_port Err bitreich.org 70
i From argv[4], this is the current port number configured in Err bitreich.org 70
i- geomyidae(8). It is what to use as a port in links printed Err bitreich.org 70
i+ geomyidae(8). It is what to use as a ‘port’ in links printed Err bitreich.org 70
i out. Err bitreich.org 70
i Err bitreich.org 70
i EXAMPLES Err bitreich.org 70
i@@ -196,4 +196,11 @@ CAVEATS Err bitreich.org 70
i The Gopher protocol is not designed for dynamic scripting. A dedicated Err bitreich.org 70
i remote interface protocol such as SSH or telnet may be used instead. Err bitreich.org 70
i Err bitreich.org 70
i+SEE ALSO Err bitreich.org 70
i+ geomyidae(8) Err bitreich.org 70
i+ Err bitreich.org 70
i+AUTHORS Err bitreich.org 70
i+ Josuah Demangeon <me@josuah.net> Err bitreich.org 70
i+ gopher://bitreich.org: The Bitreich Project Err bitreich.org 70
i+ Err bitreich.org 70
i LIBGCGI(3) Library Functions Manual LIBGCGI(3) Err bitreich.org 70
1diff --git a/libgcgi.3 b/libgcgi.3 /scm/libgcgi/file/libgcgi.3.gph bitreich.org 70
i@@ -337,3 +337,18 @@ A dedicated file upload protocol such as SFTP or FTP may be used instead. Err bitreich.org 70
i .Pp Err bitreich.org 70
i The Gopher protocol is not designed for dynamic scripting. Err bitreich.org 70
i A dedicated remote interface protocol such as SSH or telnet may be used instead. Err bitreich.org 70
i+. Err bitreich.org 70
i+. Err bitreich.org 70
i+.Sh SEE ALSO Err bitreich.org 70
i+. Err bitreich.org 70
i+.Xr geomyidae 8 Err bitreich.org 70
i+. Err bitreich.org 70
i+. Err bitreich.org 70
i+.Sh AUTHORS Err bitreich.org 70
i+. Err bitreich.org 70
i+.Bl -ohang -compact Err bitreich.org 70
i+.It Err bitreich.org 70
i+.An Josuah Demangeon Aq Mt me@josuah.net Err bitreich.org 70
i+.It Err bitreich.org 70
i+.Lk "The Bitreich Project" gopher://bitreich.org Err bitreich.org 70
i+.El Err bitreich.org 70
.
Response:
text/plain