summaryrefslogtreecommitdiffstats
path: root/ospfd/ospf_lsa.h
diff options
context:
space:
mode:
authorPaul Jakma <paul@quagga.net>2011-03-22 16:23:55 +0100
committerPaul Jakma <paul@quagga.net>2011-03-22 16:23:55 +0100
commitd71ea65270408a45e4bec036671ec73b24b994b4 (patch)
tree8690d8a3e447ececf09d7a760af66703b7268f4d /ospfd/ospf_lsa.h
parentbuild: change sense of opaque-{lsa,te} enable args to enable by default (diff)
downloadfrr-d71ea65270408a45e4bec036671ec73b24b994b4.tar.xz
frr-d71ea65270408a45e4bec036671ec73b24b994b4.zip
ospfd: Compile fix for opaque support
* ospfd: Refresher logic cleanup broke OSPF opaque, which does its own thing with regard to refresher logic and which also, in the protocol, requires implementations to keep state of which OI an LSA is received on (rather than providing information in the LSA to allow it to be looked up - as other LSAs requiring such assocation were careful to do). * ospf_lsa.h: (struct ospf_interface) Add back the pointer to oi, but only for type-9 now. * ospf_nsm.c: (ospf_db_summary_add) check the oi actually exists first - doesn't obviate the need for opaque to ensure oi pointers get cleaned up when ospf_interfaces disappear. * ospf_opaque.{c,h}: (ospf_opaque_functab,ospf_opaque_lsa_refresh) Refresher LSA functions now need to return the LSA to the general refresh logic, to indicate whether the LSA was refreshed.
Diffstat (limited to 'ospfd/ospf_lsa.h')
-rw-r--r--ospfd/ospf_lsa.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/ospfd/ospf_lsa.h b/ospfd/ospf_lsa.h
index fee34708b..72e2f8a50 100644
--- a/ospfd/ospf_lsa.h
+++ b/ospfd/ospf_lsa.h
@@ -114,6 +114,9 @@ struct ospf_lsa
/* Refreshement List or Queue */
int refresh_list;
+
+ /* For Type-9 Opaque-LSAs */
+ struct ospf_interface *oi;
};
/* OSPF LSA Link Type. */