https://github.com/hlandau/acme/blob/master/acmeapi/ocsp.go#...
In case it is not obvious, anyone in a privileged point on the network can fill resb with enough data that the program panics due to OOM and crashes. ioutil.ReadAll really needs a big warning in the docs because I have seen this pattern far too often.
If you're looking for a Go client, lego[1] is awesome.
at the very least, it'd be nice if people stopped referring to other implementations of the LE spec as "unofficial clients".
Rust and Haskell are both examples of safe languages. These languages admit very few bug classes. Both also compile to binaries; I'm not sure why you're touting that as a feature of Go.
That's not even a useful feature in this case. Running a python program is just as easy as running a binary from the user's perspective.
- download letsencrypt-auto
- ./letsencrypt-auto
”fiddling around with the source”: - download letsencrypt.tar.gz
- extract letsencrypt.tar.gz
- ./letsencrypt-auto
(and there might even be a package available!)Another example: I recently wanted to run IDA on Arch Linux, but there are no 32-bit Qt5 packages. Compiling Qt5 is more painful than installing Python.
From https://github.com/letsencrypt/letsencrypt:
"The Let's Encrypt Client is BETA SOFTWARE. It contains plenty of bugs and rough edges, and should be tested thoroughly in staging environments before use on production systems."
And NGINX support is still labeled "highly experimental".
Not complaining though; these things take time. Thank you for bringing free encryption to the masses, Let's Encrypt!