Blame


1 cac46275 2021-02-13 op #!/bin/sh
2 cac46275 2021-02-13 op
3 cac46275 2021-02-13 op set -e
4 cac46275 2021-02-13 op
5 cac46275 2021-02-13 op printf "20 text/plain; lang=en\r\n"
6 cac46275 2021-02-13 op
7 cac46275 2021-02-13 op cat <<EOF
8 cac46275 2021-02-13 op The Common Gateway Interface for Gemini
9 cac46275 2021-02-13 op
10 cac46275 2021-02-13 op It really seems that the Common Gateway Interface (CGI, RFC-3875)
11 cac46275 2021-02-13 op can be adapted for the Gemini protocol easily!
12 cac46275 2021-02-13 op
13 cac46275 2021-02-13 op This is a test page for the CGI implementation in gmid[0], a small
14 cac46275 2021-02-13 op and secure Gemini server. When in doubt, I'm trying to follow the
15 cac46275 2021-02-13 op GLV-1.12556[1] behaviour. Sean Conner provides a similar page at [2].
16 cac46275 2021-02-13 op
17 cac46275 2021-02-13 op
18 cac46275 2021-02-13 op CGI Environment Variables
19 cac46275 2021-02-13 op
20 cac46275 2021-02-13 op <unspec> means "not set".
21 cac46275 2021-02-13 op
22 cac46275 2021-02-13 op EOF
23 cac46275 2021-02-13 op
24 cac46275 2021-02-13 op echo GATEWAY_INTERFACE=$GATEWAY_INTERFACE
25 cac46275 2021-02-13 op echo GEMINI_DOCUMENT_ROOT=$GEMINI_DOCUMENT_ROOT
26 cac46275 2021-02-13 op echo GEMINI_SCRIPT_FILENAME=$GEMINI_SCRIPT_FILENAME
27 cac46275 2021-02-13 op echo GEMINI_URL=$GEMINI_URL
28 cac46275 2021-02-13 op echo GEMINI_URL_PATH=$GEMINI_URL_PATH
29 cac46275 2021-02-13 op echo PWD=$PWD
30 cac46275 2021-02-13 op echo PATH_INFO=${PATH_INFO:-"<unspec>"}
31 cac46275 2021-02-13 op echo PATH_TRANSLATED=${PATH_TRANSLATED:-"<unspec>"}
32 cac46275 2021-02-13 op echo QUERY_STRING=$QUERY_STRING
33 cac46275 2021-02-13 op echo REMOTE_ADDR=$REMOTE_ADDR
34 cac46275 2021-02-13 op echo REMOTE_HOST=$REMOTE_HOST
35 cac46275 2021-02-13 op echo REQUEST_METHOD=$REQUEST_METHOD
36 cac46275 2021-02-13 op echo SCRIPT_NAME=$SCRIPT_NAME
37 cac46275 2021-02-13 op echo SERVER_NAME=$SERVER_NAME
38 cac46275 2021-02-13 op echo SERVER_PORT=$SERVER_PORT
39 cac46275 2021-02-13 op echo SERVER_PROTOCOL=$SERVER_PROTOCOL
40 cac46275 2021-02-13 op echo SERVER_SOFTWARE=$SERVER_SOFTWARE
41 cac46275 2021-02-13 op echo AUTH_TYPE=$AUTH_TYPE
42 cac46275 2021-02-13 op echo REMOTE_USER=$REMOTE_USER
43 cac46275 2021-02-13 op echo TLS_CLIENT_ISSUER=$TLS_CLIENT_ISSUER
44 cac46275 2021-02-13 op echo TLS_CLIENT_HASH=$TLS_CLIENT_HASH
45 afffc3d1 2021-08-03 op echo TLS_VERSION=$TLS_VERSION
46 afffc3d1 2021-08-03 op echo TLS_CIPHER=$TLS_CIPHER
47 afffc3d1 2021-08-03 op echo TLS_CIPHER_STRENGTH=$TLS_CIPHER_STRENGTH
48 cac46275 2021-02-13 op echo TLS_CLIENT_NOT_AFTER=$TLS_CLIENT_NOT_AFTER
49 cac46275 2021-02-13 op echo TLS_CLIENT_NOT_BEFORE=$TLS_CLIENT_NOT_BEFORE
50 cac46275 2021-02-13 op echo
51 cac46275 2021-02-13 op echo
52 cac46275 2021-02-13 op echo " CGI Argument List"
53 cac46275 2021-02-13 op echo
54 cac46275 2021-02-13 op echo "- $0"
55 cac46275 2021-02-13 op for i in "$@"; do
56 cac46275 2021-02-13 op echo "- $i"
57 cac46275 2021-02-13 op done
58 cac46275 2021-02-13 op
59 cac46275 2021-02-13 op cat <<EOF
60 cac46275 2021-02-13 op
61 cac46275 2021-02-13 op
62 cac46275 2021-02-13 op notes
63 cac46275 2021-02-13 op
64 cac46275 2021-02-13 op [0]: https://github.com/omar-polo/gmid
65 cac46275 2021-02-13 op [1]: https://github.com/spc476/GLV-1.12556
66 cac46275 2021-02-13 op [2]: gemini://gemini.conman.org/cgi
67 cac46275 2021-02-13 op EOF