]> git.proxmox.com Git - mirror_frr.git/blobdiff - pimd/pim_vxlan.h
Merge pull request #10447 from ton31337/fix/json_with_whitespaces
[mirror_frr.git] / pimd / pim_vxlan.h
index ce9054cd267089d203790c6b50957d486433a8f0..96882918acf0a2f78f96a270913f1ff44f02533f 100644 (file)
@@ -41,7 +41,7 @@ struct pim_vxlan_sg {
        struct pim_instance *pim;
 
        /* key */
-       struct prefix_sg sg;
+       pim_sgaddr sg;
        char sg_str[PIM_SG_LEN];
 
        enum pim_vxlan_sg_flags flags;
@@ -109,14 +109,14 @@ struct pim_vxlan {
  */
 static inline bool pim_vxlan_is_orig_mroute(struct pim_vxlan_sg *vxlan_sg)
 {
-       return (vxlan_sg->sg.src.s_addr != INADDR_ANY);
+       return !pim_addr_is_any(vxlan_sg->sg.src);
 }
 
 static inline bool pim_vxlan_is_local_sip(struct pim_upstream *up)
 {
-       return (up->sg.src.s_addr != INADDR_ANY) &&
-               up->rpf.source_nexthop.interface &&
-               if_is_loopback_or_vrf(up->rpf.source_nexthop.interface);
+       return !pim_addr_is_any(up->sg.src) &&
+              up->rpf.source_nexthop.interface &&
+              if_is_loopback(up->rpf.source_nexthop.interface);
 }
 
 static inline bool pim_vxlan_is_term_dev_cfg(struct pim_instance *pim,
@@ -127,10 +127,10 @@ static inline bool pim_vxlan_is_term_dev_cfg(struct pim_instance *pim,
 
 extern struct pim_vxlan *pim_vxlan_p;
 extern struct pim_vxlan_sg *pim_vxlan_sg_find(struct pim_instance *pim,
-                                           struct prefix_sg *sg);
+                                             pim_sgaddr *sg);
 extern struct pim_vxlan_sg *pim_vxlan_sg_add(struct pim_instance *pim,
-                                          struct prefix_sg *sg);
-extern void pim_vxlan_sg_del(struct pim_instance *pim, struct prefix_sg *sg);
+                                            pim_sgaddr *sg);
+extern void pim_vxlan_sg_del(struct pim_instance *pim, pim_sgaddr *sg);
 extern void pim_vxlan_update_sg_reg_state(struct pim_instance *pim,
                struct pim_upstream *up, bool reg_join);
 extern struct pim_interface *pim_vxlan_get_term_ifp(struct pim_instance *pim);