Gateway Interfaces for Gemini

Sean Conner sean at conman.org
Tue May 26 22:17:44 BST 2020


It was thus said that the Great solderpunk once stated:
> On Mon, May 25, 2020 at 07:11:04PM -0400, Sean Conner wrote:
> 
> > [b]	Mandatory per RFC-3875---the more security conscience of you might
> > 	not like this, but in that case, I can recommend the value of
> > 	"127.0.0.1" or "::1" 
> > [c]	Can be the IP address, which is what I do
> 
> I know this field is mandatory in RFC-3875 - what is the scope of that
> RFC with respect to protocols?  Does it only talk about HTTP or is it
> supposed to be more general?

  First paragraph of the abstract of RFC-3875:

	The Common Gateway Interface (CGI) is a simple interface for running
	external programs, software or gateways under an information server
	in a platform-independent manner.  Currently, the supported
	information servers are HTTP servers.

so it's clearly HTTP biased, but it also states in 4.1.18:

	The server SHOULD set meta-variables specific to the protocol and
	scheme for the request.  Interpretation of protocol-specific
	variables depends on the protocol version in SERVER_PROTOCOL.  The
	server MAY set a meta-variable with the name of the scheme to a
	non-NULL value if the scheme is not the same as the protocol.  The
	presence of such a variable indicates to a script which scheme is
	used by the request.

which to me reads that it may apply to other protocols, like Gemini (or even
gopher).  From RFC-3875:

	4.1.8.  REMOTE_ADDR

		The REMOTE_ADDR variable MUST be set to the network address
		of the client sending the request to the server.

	4.1.9.  REMOTE_HOST

		The REMOTE_HOST variable contains the fully qualified domain
		name of the client sending the request to the server, if
		available, otherwise NULL. ...

		The server SHOULD set this variable.  If the hostname is not
		available for performance reasons or otherwise, the server
		MAY substitute the REMOTE_ADDR value.

thus mu recommendation for "127.0.0.1" or "::1".

  -spc


More information about the Gemini mailing list