URI: 
       Update CGI to markdown and update to current state. - geomyidae - A small C-based gopherd.
  HTML git clone git://bitreich.org/geomyidae/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/geomyidae/
   DIR Log
   DIR Files
   DIR Refs
   DIR Tags
   DIR README
   DIR LICENSE
       ---
   DIR commit 1375ce4688358eca4db5bd1f0309863a574d250e
   DIR parent 3c94b78e68c271bca2c9304e38895747bf67e347
  HTML Author: Christoph Lohmann <20h@r-36.net>
       Date:   Tue, 16 Jun 2020 12:40:48 +0200
       
       Update CGI to markdown and update to current state.
       
       Diffstat:
         D CGI                                 |     103 -------------------------------
         A CGI.md                              |     108 +++++++++++++++++++++++++++++++
       
       2 files changed, 108 insertions(+), 103 deletions(-)
       ---
   DIR diff --git a/CGI b/CGI
       @@ -1,103 +0,0 @@
       -INTRODUCTION
       -
       -Geomyidae has support for running scripts on each request, which will generate
       -dynamic content.
       -
       -There are two modes: standard cgi and dynamic cgi.
       -(»CGI« as name was just taken, because that's easier to compare to the web.)
       -
       -
       -PERMISSIONS
       -
       -The scripts are run using the permissions of geomyidae. It is advised to use
       -the -g and -u options of geomyidae.
       -
       -
       -BEFOREHAND
       -
       -In these examples C: is what the client sends and S: what the server is
       -sending.
       -
       -
       -CALLING CONVENTION
       -
       -Geomyidae will call the script like this:
       -
       -        % $gopherroot/test.cgi $search $arguments $host $port
       -
       -When it is a plain request, the arguments will have these values:
       -
       -        C: /test.cgi
       -        -> $search = ""
       -        -> $arguments = ""
       -        -> $host = server host
       -        -> $port = server port
       -
       -If the request is for a type 7 search element, then the entered string by
       -the user will be seen as following:
       -
       -        C: /test.cgi        searchterm                (There is a TAB in-between)
       -        -> $search = »searchterm«
       -        -> $arguments = ""
       -        -> $host = server host
       -        -> $port = server port
       -
       -When you are trying to give your script some calling arguments, the syntax
       -is:
       -
       -        C: /test.cgi?hello
       -        -> $search = ""
       -        -> $arguments = »hello«
       -        -> $host = server host
       -        -> $port = server port
       -
       -If both ways of input are combined, the variables are set as following:
       -
       -        C: /test.cgi?hello=world        searchterm        (Beware! A Tab!)
       -        -> $search = »searchterm«
       -        -> $arguments = »hello=world«
       -        -> $host = server host
       -        -> $port = server port
       -
       -
       -STANDARD CGI
       -
       -The file extension »cgi« switches to this mode, where the output of the
       -script is not interpreted at all by the server and the script needs to send
       -raw content.
       -
       -        % cat test.cgi
       -        #!/bin/sh
       -        echo "Hello my friend."
       -        %
       -
       -The client will receive:
       -
       -        S: Hello my friend.
       -
       -
       -DYNAMIC CGI
       -
       -For using dynamic CGI, the file needs to end in »dcgi«, which will switch on
       -the interpretation of the returned lines by the server. The interpreted for-
       -mat is the same as in the *.gph files.
       -
       -        % cat test.dcgi
       -        #!/bin/sh
       -        echo "[1|Some link|/somewhere|server|port]"
       -        %
       -
       -Here geomyidae will interpret the *.gph format and return the valid gopher
       -menu item.
       -
       -        S: 1Some link        /somewhere        gopher.r-36.net        70
       -
       -For outputting large texts and having minor hassles with the content, prepend
       -»t« to every line beginning with »t« or all lines:
       -
       -        % cat filereader.dcgi
       -        #!/bin/sh
       -        cat bigfile.txt | sed 's,^t,&&,'
       -
       -Have fun!
       -
   DIR diff --git a/CGI.md b/CGI.md
       @@ -0,0 +1,108 @@
       +# INTRODUCTION TO CGI
       +
       +Geomyidae has  support for running  scripts on each request,  which will
       +generate dynamic content.
       +
       +There are two modes: standard cgi  and dynamic cgi. (»CGI« as name was
       +just taken, because that's easier to compare to the web.)
       +
       +
       +## PERMISSIONS
       +
       +The scripts are run using the permissions of geomyidae. It is advised to
       +use the -g and -u options of geomyidae.
       +
       +
       +## BEFOREHAND
       +
       +In these examples C: is what the  client sends and S: what the server is
       +sending.
       +
       +
       +## CALLING CONVENTION
       +
       +Geomyidae will call the script like this:
       +
       +        % $gopherroot/test.cgi $search $arguments $host $port
       +
       +When it is a plain request, the arguments will have these values:
       +
       +        C: /test.cgi
       +        -> $search = ""
       +        -> $arguments = ""
       +        -> $host = server host
       +        -> $port = server port
       +
       +If the request is for a type 7 search element, then the entered string by
       +the user will be seen as following:
       +
       +        C: /test.cgi        searchterm                (There is a TAB in-between)
       +        -> $search = »searchterm«
       +        -> $arguments = ""
       +        -> $host = server host
       +        -> $port = server port
       +
       +When you are trying to give your script some calling arguments, the syntax
       +is:
       +
       +        C: /test.cgi?hello
       +        -> $search = ""
       +        -> $arguments = »hello«
       +        -> $host = server host
       +        -> $port = server port
       +
       +If both ways of input are combined, the variables are set as following:
       +
       +        C: /test.cgi?hello=world        searchterm        (Beware! A Tab!)
       +        -> $search = »searchterm«
       +        -> $arguments = »hello=world«
       +        -> $host = server host
       +        -> $port = server port
       +
       +
       +## STANDARD CGI
       +
       +The file  extension »cgi« switches to  this mode, where the  output of
       +the script is not interpreted at all  by the server and the script needs
       +to send raw content.
       +
       +        % cat test.cgi
       +        #!/bin/sh
       +        echo "Hello my friend."
       +        %
       +
       +The client will receive:
       +
       +        S: Hello my friend.
       +
       +
       +## DYNAMIC CGI
       +
       +For using  dynamic CGI, the  file needs to  end in »dcgi«,  which will
       +switch on  the interpretation of the  returned lines by the  server. The
       +interpreted for- mat is the same as in the .gph files.
       +
       +        % cat test.dcgi
       +        #!/bin/sh
       +        echo "[1|Some link|/somewhere|server|port]"
       +        %
       +
       +Here  geomyidae will  interpret the  .gph format  and return  the valid
       +gopher menu item.
       +
       +        S: 1Some link        /somewhere        gopher.r-36.net        70
       +
       +For outputting  large texts and  having minor hassles with  the content,
       +prepend »t« to every line beginning with »t« or all lines:
       +
       +        % cat filereader.dcgi
       +        #!/bin/sh
       +        cat bigfile.txt | sed 's,^t,&&,'
       +
       +## ENVIRONMENT VARIABLES
       +
       +Please see the manpage geomyidae(8) for all variables and their content.
       +
       +
       +Have fun!
       +