]> git.proxmox.com Git - mirror_frr.git/blobdiff - ospf6d/ospf6_intra.h
Merge pull request #12798 from donaldsharp/rib_match_multicast
[mirror_frr.git] / ospf6d / ospf6_intra.h
index 4031ffe6896c29e146d63526bc8c84e5513c5e26..79b5eb0ed9b0e859ee422db0add583ed27b271b8 100644 (file)
@@ -1,21 +1,6 @@
+// SPDX-License-Identifier: GPL-2.0-or-later
 /*
  * Copyright (C) 2003 Yasuhiro Ohara
- *
- * This file is part of GNU Zebra.
- *
- * GNU Zebra is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License as published by the
- * Free Software Foundation; either version 2, or (at your option) any
- * later version.
- *
- * GNU Zebra is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program; see the file COPYING; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
 #ifndef OSPF6_INTRA_H
@@ -192,12 +177,26 @@ struct ospf6_intra_prefix_lsa {
                                         oi, 0, &(oi)->thread_as_extern_lsa);  \
        } while (0)
 
+#define OSPF6_ROUTER_LSA_EXECUTE(oa)                                           \
+       do {                                                                   \
+               if (CHECK_FLAG((oa)->flag, OSPF6_AREA_ENABLE))                 \
+                       thread_execute(master, ospf6_router_lsa_originate, oa, \
+                                      0);                                     \
+       } while (0)
+
 #define OSPF6_NETWORK_LSA_EXECUTE(oi)                                          \
        do {                                                                   \
                THREAD_OFF((oi)->thread_network_lsa);                          \
                thread_execute(master, ospf6_network_lsa_originate, oi, 0);    \
        } while (0)
 
+#define OSPF6_LINK_LSA_EXECUTE(oi)                                             \
+       do {                                                                   \
+               if (!CHECK_FLAG((oi)->flag, OSPF6_INTERFACE_DISABLE))          \
+                       thread_execute(master, ospf6_link_lsa_originate, oi,   \
+                                      0);                                     \
+       } while (0)
+
 #define OSPF6_INTRA_PREFIX_LSA_EXECUTE_TRANSIT(oi)                             \
        do {                                                                   \
                THREAD_OFF((oi)->thread_intra_prefix_lsa);                     \
@@ -221,14 +220,14 @@ extern char *ospf6_network_lsdesc_lookup(uint32_t router_id,
                                         struct ospf6_lsa *lsa);
 
 extern int ospf6_router_is_stub_router(struct ospf6_lsa *lsa);
-extern int ospf6_router_lsa_originate(struct thread *thread);
-extern int ospf6_network_lsa_originate(struct thread *thread);
-extern int ospf6_link_lsa_originate(struct thread *thread);
-extern int ospf6_intra_prefix_lsa_originate_transit(struct thread *thread);
-extern int ospf6_intra_prefix_lsa_originate_stub(struct thread *thread);
+extern void ospf6_router_lsa_originate(struct thread *thread);
+extern void ospf6_network_lsa_originate(struct thread *thread);
+extern void ospf6_link_lsa_originate(struct thread *thread);
+extern void ospf6_intra_prefix_lsa_originate_transit(struct thread *thread);
+extern void ospf6_intra_prefix_lsa_originate_stub(struct thread *thread);
 extern void ospf6_intra_prefix_lsa_add(struct ospf6_lsa *lsa);
 extern void ospf6_intra_prefix_lsa_remove(struct ospf6_lsa *lsa);
-extern int ospf6_orig_as_external_lsa(struct thread *thread);
+extern void ospf6_orig_as_external_lsa(struct thread *thread);
 extern void ospf6_intra_route_calculation(struct ospf6_area *oa);
 extern void ospf6_intra_brouter_calculation(struct ospf6_area *oa);
 extern void ospf6_intra_prefix_route_ecmp_path(struct ospf6_area *oa,