[zeromq-dev] PGM and sending interface
Jim Hague
jim.hague at acm.org
Thu Jan 7 13:42:53 CET 2016
On Wednesday 06 Jan 2016 09:18:00 Steven McCoy wrote:
> The direction appears to take the address from pgm_getaddrinfo() and place
> into a new member variable of pgm_interface_req_t:
>
> struct pgm_interface_req_t {
> uint32_t ir_interface; struct sockaddr_storage ir_address; uint32_t
> ir_scope_id;
> }; Although now with the address the explicit scope identifier is not
> required, thus it simply becomes: struct pgm_interface_req_t {
> uint32_t ir_interface; struct sockaddr_storage ir_address;};
If ir_address is present, is ir_interface required? Could it be removed as
well? Removing either will break the existing API - how do you feel about
that?
I am wondering about keeping scope_id and if ir_address is zero, use it and
ir_interface as at present. Existing client code won't have to change in that
case, unless they need correct behaviour in the presence of aliases.
> Using the alias index is going to be subject to race conditions when
> interfaces change and I'd rather try to avoid that.
I guess using ir_address instead of ir_interface also removes a race when
interfaces are added or removed.
--
Jim Hague - jim.hague at acm.org Never trust a computer you can't lift.
More information about the zeromq-dev
mailing list