[PATCH 23/25] site: support multiple transforms
ijackson at chiark.greenend.org.uk
Sat Jul 20 15:14:26 BST 2013
Ian Jackson writes ("[PATCH 23/25] site: support multiple transforms"):
> + * Iff both ends' transform capability masks are nonempty, MSG3
> + * contains an additional byte specifying the transform capability
> + * number actually chosen by the MSG3 sender.
This is quite ugly, really. After sleeping on it, I concluded that
the right thing to do instead is to invent a new variant of MSG3 with
a different LABEL, call it LABEL_MSG3BIS.
> +static bool_t msg_specifies_transform(struct site *st, uint32_t msgtype)
> + return
> + (msgtype==LABEL_MSG3) &&
> + (st->local_capabilities & CAPAB_TRANSFORM_MASK) &&
> + (st->remote_capabilities & CAPAB_TRANSFORM_MASK);
Which will simplify this, at the cost of having to turn several
type==LABEL_MSG3 || type==LABEL_MSG3BIS
I haven't coded this up yet.
More information about the sgo-software-discuss