On Fri, Dec 4, 2020 at 4:28 PM Sean Conner <sean at conman.org> wrote: Define "state change", because this link on my server: > > gemini://gemini.conman.org/qotd > > literally makes a state change on every request (it pulls up the next > quote, and it tracks the number across restarts). > I'm with Sean here. There are a large number of very simple services that Gemini systems could easily provide that would be banned under an idempotent-only rule. Historically, quote-of-the-day could be gotten from a server by connecting on port 17 with either TCP or UDP; see the /etc/services file and RFC 865. (Sean, you might want to support port 17 just for hack value; if anybody connects to it, forget TLS: just blast back the first 512 bytes of the next quote and close the connection.) Other examples that could be geminized are: 1. The current time in a human readable (including HTTP and ISO) format per RFC 867 (historically on port 13). 2. The current list of users connected to the server (for some definition of "users", "connected" and "server"), one on each line per RFC 866 (historically on port 11). 3. An endless stream of characters for testing streaming clients per RFC 864 (historically on port 19). I once set up a whole lot of workstations after working hours to connect to this port (using gopher://foo:19/0 via a test firewall) in order to see how much of this the firewall could take without crashing. It held up fine, though the browsers eventually crashed. 4. The current phase of the moon (no RFC). 5. The Really Big ASCII Button That Doesn't Do Anything (see < https://krystalrose.com/rosewood/library/BigButton.htm>; copies of this page date back to 1993). Finally, if you look at RFC 7231, HTTP 1.1, you'll find that all of these
---
Previous in thread (30 of 34): 🗣️ Sean Conner (sean (a) conman.org)
Next in thread (32 of 34): 🗣️ Sean Conner (sean (a) conman.org)