For the most part, this slots into the space previously prepared for
it. However, there are a few subtleties.
The most significant one is that existing Secnets don't pay attention to
the high 16 cap bits. To bring them into availability, we introduce a
signalling system. If bit 15 is set, then
* all of the bits are scanned for capabilities, and
* it is expected that sender has advertised its DH groups explicitly.
If the bit is clear, then we have the old situation:
* firstly, only the low 16 bits are scanned for transform cap bits,
and
* secondly, it is assumed that the sender only implements traditional
integer Diffie--Hellman, cap 10, with some appropriately determined
group.
We also set the explicit bit if one of the high capability bits is set.
As part of this, add a parameter to the `diffie-hellman' closure to
configure its advertised group cap.
Signed-off-by: Mark Wooding <mdw@distorted.org.uk>