Way back in the day,
“ping servers” were popular and I added support for it to
only to remove it a few years later when the one I was using
(the most well known one—I think it was
weblogs.com but it's been over fifteen years or so)
I then removed the support from
mod_blog because I didn't feel it was worth keeping a feeature around I didn't use.
Then about a week or so ago,
a similar service just started up for Gemini based blogs,
and given that I serve up my blog via Gemini I figured I could support that feature again.
But as I started,
I had an idea—instead of hardcoding support for Antenna in
why not support the idea of a “hook”
It would be easier to write a script to update Antenna
(since I already support TLS and Gemini URLs
than to try to do that all in C.
I wish I had thought of this concept back then. It would have saved me the trouble of adding, and later, removing, code to support various notification sites as they came and went.
Ah well … live and learn.
It's still a sane library for decoding DNS packets, but now it's a sane library for encoding as well
It only took about ten years (and about four years after it was first requested) but the library now supports full encoding of 30 DNS records. The reason I didn't include such support intially is that the encoding of DNS domain names in the records is not straightforward. It uses a scheme to compress the data such that it's easy to parse, but not so easy to encode without allocating memory which is something I wanted to avoid. A result is that there is a hardcoded limit to the number of domain names that can be encoded, but just how many domain names is … hard to say due to the compression scheme. And because of this, the encoding routine does use a bit more memory than it previously did.
That, and an API change with the Lua wrapper (returning an integer error number instead of a string error message) is why I decided to make this a 2.0.0 release. Users at the C level shouldn't see any change though.