]> git.proxmox.com Git - mirror_frr.git/commitdiff
Merge pull request #10657 from patrasar/pim_remove_in_addr_none
authorDavid Lamparter <equinox@opensourcerouting.org>
Wed, 2 Mar 2022 09:42:17 +0000 (10:42 +0100)
committerDavid Lamparter <equinox@opensourcerouting.org>
Wed, 2 Mar 2022 09:42:17 +0000 (10:42 +0100)
[manual merge to edit comment, didn't want to incur another cycle]

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
1  2 
pimd/pim_bsm.c
pimd/pim_mroute.c
pimd/pim_nht.c
pimd/pim_rp.c
pimd/pim_rpf.c
pimd/pim_rpf.h

diff --cc pimd/pim_bsm.c
Simple merge
Simple merge
diff --cc pimd/pim_nht.c
Simple merge
diff --cc pimd/pim_rp.c
Simple merge
diff --cc pimd/pim_rpf.c
index c62a06f85c838ddfc7fe2d186017a67b75764f08,2741b5bf463202cda3adae649c7127d4f1cdcb4a..a99f5536b7f92053841e7bae29ccd520b877f254
@@@ -67,13 -66,15 +67,13 @@@ bool pim_nexthop_lookup(struct pim_inst
         * 255.255.255.255 address, since
         * it will never work
         */
-       if (addr.s_addr == INADDR_NONE)
+       if (pim_addr_is_any(addr))
                return false;
 +#endif
  
 -      if ((nexthop->last_lookup.s_addr == addr.s_addr)
 +      if (!pim_addr_cmp(nexthop->last_lookup, addr)
            && (nexthop->last_lookup_time > pim->last_route_change_time)) {
                if (PIM_DEBUG_PIM_NHT) {
 -                      char addr_str[INET_ADDRSTRLEN];
 -                      pim_inet4_dump("<addr?>", addr, addr_str,
 -                                     sizeof(addr_str));
                        char nexthop_str[PREFIX_STRLEN];
                        pim_addr_dump("<nexthop?>", &nexthop->mrib_nexthop_addr,
                                      nexthop_str, sizeof(nexthop_str));
@@@ -393,27 -405,14 +393,14 @@@ static pim_addr pim_rpf_find_rpf_addr(s
        return rpf_addr;
  }
  
- int pim_rpf_addr_is_inaddr_none(struct pim_rpf *rpf)
- {
-       switch (rpf->rpf_addr.family) {
-       case AF_INET:
-               return rpf->rpf_addr.u.prefix4.s_addr == INADDR_NONE;
-       case AF_INET6:
-               zlog_warn("%s: v6 Unimplmeneted", __func__);
-               return 1;
-       default:
-               return 0;
-       }
- }
  int pim_rpf_addr_is_inaddr_any(struct pim_rpf *rpf)
  {
 +      pim_addr rpf_addr = pim_addr_from_prefix(&rpf->rpf_addr);
 +
        switch (rpf->rpf_addr.family) {
        case AF_INET:
 -              return rpf->rpf_addr.u.prefix4.s_addr == INADDR_ANY;
        case AF_INET6:
 -              zlog_warn("%s: v6 Unimplmented", __func__);
 -              return 1;
 +              return pim_addr_is_any(rpf_addr);
        default:
                return 0;
        }
diff --cc pimd/pim_rpf.h
Simple merge