Skip to main content

This is a new website theme. Help me improve it and give your feedback (opens in a new tab).

Retro

Toy Finger Daemon

The finger protocol is defined in RFC742. It’s a pretty simple protocol. I’d like to have a more useful output at some point, perhaps including status updates from Mastodon or APRS, but for now I’ve got the hang of reading the request and sending some output with some simple C program. It uses inetd just like the Gopher server. #include <stdio.h> #include <stdlib.h> #include <string.h> #include <unistd.h> static __dead void handle_query(char *input, int len) { if (len == 0) { printf("Summary:\n\n"); printf("-USER-\n"); printf("irl\n"); } else if (len == 3 && memcmp(input, "irl", 3) == 0) { printf("+-----+\n"); printf("| irl |\n"); printf("+-----+\n"); printf("\n"); printf(" gopher://irl.

Installing Gophernicus on OpenBSD

Installing Gophernicus on OpenBSD was actually rather simple. It is packaged so a simple: doas pkg_add gophernicus will install the necessary files. According to the pkg-readme the preferred way to run it is through inetd so that’s what I set up. The exact line I added to /etc/inetd.conf was: gopher stream tcp nowait _gophernicus /usr/local/libexec/in.gophernicus in.gophernicus -h irl.xyz In the example, the hostname is in double quotes but the quotes ended up appearing in gophermap outputs so I removed them and testing with lynx everything is working now.