I now have a guess: addr is used when you have an OS that is not able to select an IPv4 multicast interface by ifIndex. (Windows can, BSD-derived OS's can, others cannot).
If this is correct, it should be ignored on OS's with this capability, and it could be ignored for IPv6 on all OS's because the IPv6 multicast APIs started without this flaw. Is this guess correct? From: iotivity-dev-bounces at lists.iotivity.org [mailto:[email protected]] On Behalf Of Dave Thaler via iotivity-dev Sent: Thursday, October 6, 2016 12:31 PM To: iotivity-dev at lists.iotivity.org Subject: Re: [dev] CAInterface_t question Actually given the name of it, the best answer would be "1" since there's just one interface, with multiple CAEndpoint_t's on it. But that doesn't appear to be what the code is doing and I'm not sure why. I can't actually think of a reason to have more than 2 (one for IPv4, one for IPv6) since that's how many discovery requests you need to send, so I'm not sure why there's an addr field in the structure at all. Can someone explain? From: iotivity-dev-bounces at lists.iotivity.org<mailto:iotivity-dev-bounces at lists.iotivity.org> [mailto:[email protected]] On Behalf Of Dave Thaler via iotivity-dev Sent: Thursday, October 6, 2016 12:27 PM To: iotivity-dev at lists.iotivity.org<mailto:iotivity-dev at lists.iotivity.org> Subject: [dev] CAInterface_t question What is the intended granularity of this structure? Say you have a WiFi interface with 6 IP addresses: 1) An IPv4 address 2) An IPv6 link-local address 3) A public IPv6 address in subnet A 4) A public IPv6 address in subnet B 5) A temporary IPv6 address in subnet A 6) A temporary IPv6 address in subnet B How many CAInterface_t structures should you have? I'm guessing the correct answer is 4 (addresses 1-4 above), but if that's incorrect, please elaborate. Dave -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.iotivity.org/pipermail/iotivity-dev/attachments/20161006/b10d1e24/attachment.html>
