Peter P. wrote ... > When sending encrypted mail from mutt using gpg I do get the following > error message from gpg: > > gpg: DBG: syscall(getrandom) not supported; errno = 38 > > The mail is sent nevertheless, but I am wondering why the error message > is there. A quick online search did not bring up something and I was > womdering if this list could help me, or tell me where to ask next.
Came across that message somewhere else, investigated and decided to share as your question shows up when searching it in the net, but no explanations. Executive summary: It's harmless, and it will go away in the future. Full story: A while ago, the kernel learned a new syscall "getrandom" that eases access to random data, something always needed when dealing with cryptography. The gpg programm uses the libgcrypt library which tries to use that syscall first, which is a good thing. Upon failure, it emits that warning, and falls back to the old style of gaining random data. Which is not perfect but it worked the last years. Code: http://sources.debian.net/src/libgcrypt20/1.7.1-2/random/rndlinux.c/#L239 That syscall was introduced around kernel 3.16 but the Debian jessie kernel appearently does not have it yet. The change in libgcrypt was after 1.6.3 (as in Debian jessie) and at 1.7.2 (as in Debian stretch) the latest. I can trigger the message in Debian by running gpg on a jessie kernel (3.16) inside a stretch chroot. As soon as you'll switch to a newer kernel, libgcrypt will be happy again. Christoph