On 14/05/15 06:36, Lidong Zhong wrote: > For instance, the IPs are: > eth0: 10.150.10.81/8 > eth1: 10.150.10.91/24 > The bindnetaddr in corosync is: 10.150.10.0 and the addr of eth1 is > selected in UDPU mode. Then the bindto address probably mistakenly choose > the addr of eth0. > Hiya, Thanks for the patch but I'm not convinced it's the right thing to do for all situations. If the bindnet_addr is set to an actual IP address and not a subnet mask then it will fail I think. What does your corosync.conf look like? Chrissie > Signed-off-by: Lidong Zhong <lzhong@xxxxxxxx> > --- > exec/totemip.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/exec/totemip.c b/exec/totemip.c > index ab175a8..c1fa800 100644 > --- a/exec/totemip.c > +++ b/exec/totemip.c > @@ -626,7 +626,7 @@ int totemip_iface_check(struct totem_ip_address *bindnet, > memcpy(&network, RTA_DATA(tb[IFA_LOCAL]), sizeof(uint32_t)); > memcpy(&addr, bindnet->addr, sizeof(uint32_t)); > > - if ((addr & netmask) == (network & netmask)) { > + if (addr == (network & netmask)) { > memcpy(ipaddr.addr, RTA_DATA(tb[IFA_ADDRESS]), TOTEMIP_ADDRLEN); > found_if = 1; > } > _______________________________________________ discuss mailing list discuss@xxxxxxxxxxxx http://lists.corosync.org/mailman/listinfo/discuss