]> git.proxmox.com Git - mirror_frr.git/blobdiff - ospfd/ospf_asbr.c
lib: enforce vrf_name_to_id by returning default_vrf when name is null
[mirror_frr.git] / ospfd / ospf_asbr.c
index b970c1183addb5613f2a1afbeeebc11f78b670be..ba2e04bf766b23b4f8daa2ad0e0b520fd6e3f9bd 100644 (file)
@@ -73,28 +73,9 @@ void ospf_external_route_remove(struct ospf *ospf, struct prefix_ipv4 *p)
                  p->prefixlen);
 }
 
-/* Lookup external route. */
-struct ospf_route *ospf_external_route_lookup(struct ospf *ospf,
-                                             struct prefix_ipv4 *p)
-{
-       struct route_node *rn;
-
-       rn = route_node_lookup(ospf->old_external_route, (struct prefix *)p);
-       if (rn) {
-               route_unlock_node(rn);
-               if (rn->info)
-                       return rn->info;
-       }
-
-       zlog_warn("Route[%s/%d]: lookup, no such prefix", inet_ntoa(p->prefix),
-                 p->prefixlen);
-
-       return NULL;
-}
-
-
 /* Add an External info for AS-external-LSA. */
-struct external_info *ospf_external_info_new(u_char type, u_short instance)
+struct external_info *ospf_external_info_new(uint8_t type,
+                                            unsigned short instance)
 {
        struct external_info *new;
 
@@ -127,7 +108,7 @@ int ospf_route_map_set_compare(struct route_map_set_values *values1,
 
 /* Add an External info for AS-external-LSA. */
 struct external_info *
-ospf_external_info_add(struct ospf *ospf, u_char type, u_short instance,
+ospf_external_info_add(struct ospf *ospf, uint8_t type, unsigned short instance,
                       struct prefix_ipv4 p, ifindex_t ifindex,
                       struct in_addr nexthop, route_tag_t tag)
 {
@@ -154,11 +135,12 @@ ospf_external_info_add(struct ospf *ospf, u_char type, u_short instance,
 
                        inet_ntop(AF_INET, (void *)&nexthop.s_addr, inetbuf,
                                  INET6_BUFSIZ);
-                       zlog_warn(
-                               "Redistribute[%s][%d][%u]: %s/%d discarding old info with NH %s.",
-                               ospf_redist_string(type), instance,
-                               ospf->vrf_id, inet_ntoa(p.prefix), p.prefixlen,
-                               inetbuf);
+                       if (IS_DEBUG_OSPF(lsa, LSA_GENERATE))
+                               zlog_debug(
+                                       "Redistribute[%s][%d][%u]: %s/%d discarding old info with NH %s.",
+                                       ospf_redist_string(type), instance,
+                                       ospf->vrf_id, inet_ntoa(p.prefix),
+                                       p.prefixlen, inetbuf);
                        XFREE(MTYPE_OSPF_EXTERNAL_INFO, rn->info);
                        rn->info = NULL;
                }
@@ -185,8 +167,8 @@ ospf_external_info_add(struct ospf *ospf, u_char type, u_short instance,
        return new;
 }
 
-void ospf_external_info_delete(struct ospf *ospf, u_char type, u_short instance,
-                              struct prefix_ipv4 p)
+void ospf_external_info_delete(struct ospf *ospf, uint8_t type,
+                              unsigned short instance, struct prefix_ipv4 p)
 {
        struct route_node *rn;
        struct ospf_external *ext;
@@ -204,8 +186,8 @@ void ospf_external_info_delete(struct ospf *ospf, u_char type, u_short instance,
        }
 }
 
-struct external_info *ospf_external_info_lookup(struct ospf *ospf, u_char type,
-                                               u_short instance,
+struct external_info *ospf_external_info_lookup(struct ospf *ospf, uint8_t type,
+                                               unsigned short instance,
                                                struct prefix_ipv4 *p)
 {
        struct route_node *rn;
@@ -255,7 +237,7 @@ struct ospf_lsa *ospf_external_info_find_lsa(struct ospf *ospf,
 
 
 /* Update ASBR status. */
-void ospf_asbr_status_update(struct ospf *ospf, u_char status)
+void ospf_asbr_status_update(struct ospf *ospf, uint8_t status)
 {
        zlog_info("ASBR[Status:%d]: Update", status);
 
@@ -281,8 +263,8 @@ void ospf_asbr_status_update(struct ospf *ospf, u_char status)
        ospf_router_lsa_update(ospf);
 }
 
-void ospf_redistribute_withdraw(struct ospf *ospf, u_char type,
-                               u_short instance)
+void ospf_redistribute_withdraw(struct ospf *ospf, uint8_t type,
+                               unsigned short instance)
 {
        struct route_node *rn;
        struct external_info *ei;