(This is not meant to be the proposed commit log)
We brought allocarray(3) from OpenBSD for FreeBSD 11. I will admit I was
never a huge fan of it and it makes things less portable to other OSs, but
given the support is already here, I do think we should make the best
possible use of it.
There are some advantages, other than the theoretical overflow prevention:
static checkers benefit from the extra attributes we have defined in our
headers and it somewhat easier to read to have the arguments of the
multiplication separated.
I looked through opengrok and then I crosschecked some of my changes with
OpenBSD. I don't have any intention of adopting the changes everywhere. Also, dueto compiler errors, it seems particularly important to make sure the parameters are unsigned.