mirror_frr/ospfd
Mobashshera Rasool 44d1115ad6 ospfd: ANVL Test case 25.22, 25.23 and 28.11 fixes
ANVL Test case 28.11
If the database copy has LS age equal to MaxAge and LS sequence number
equal to MaxSequenceNumber, simply discard the received LSA
without acknowledging it.

ANVL Test Case 25.22
When an attempt is made to increment the sequence number past the maximum
value of N - 1 (0x7fffffff; also referred to as MaxSequenceNumber),
the current instance of the LSA must first be flushed from the routing domain.

ANVL Test Case 25.23
As soon as this flooding of a LSA with LS sequence number MaxSequenceNumber
has been acknowledged by all adjacent neighbors, a new instance can be
originated with sequence number of InitialSequenceNumber.

RCA:
When IXIA sent LS Seq num as MAX and LS Age as (MAX - 3),
DUT dropped the packet instead of sending ACK.
In function ospf_ls_upd, at Line 2106 the code is there to drop the LSA.
Hence its failing.

Fix:
LSAs ACK must be sent when received LSA is having max sequence number
but not max-aged.
Considering  /* CVE-2017-3224 */ issue, have corrected the existing
code to prevent attacker from sending LSAs with max sequence number
and higher checksum and blocking the flooding of the Max-sequence numbered LSAs.

Signed-off-by: Mobashshera Rasool <mrasool@vmware.com>
2021-09-03 06:44:39 -07:00
..
.gitignore *: cleanup .gitignore files 2018-09-08 21:30:42 +02:00
ChangeLog.opaque.txt Initial revision 2003-02-03 16:31:16 +00:00
Makefile build: non-recursive ospf* 2017-08-04 11:09:50 +02:00
ospf_abr.c ospfd: introduce support for Graceful Restart (restarting mode) 2021-07-05 11:43:02 -03:00
ospf_abr.h ospfd: fix NSSA translator 2020-11-18 23:23:14 -08:00
ospf_api.c ospfd: Correct Coverity defects 2021-05-19 09:48:54 +02:00
ospf_api.h ospfd: Correct Coverity defects 2021-05-19 09:48:54 +02:00
ospf_apiserver.c ospfd: Correct Coverity defects 2021-05-19 09:48:54 +02:00
ospf_apiserver.h *: use C99 standard fixed-width integer types 2018-03-27 15:13:34 -04:00
ospf_asbr.c lib,ospfd,ospf6d: remove duplicated function 2021-07-09 07:55:25 -03:00
ospf_asbr.h ospfd: install Type-7 when NSSA area is configured after redistribution 2021-04-12 09:34:20 -04:00
ospf_ase.c ospfd: introduce support for Graceful Restart (restarting mode) 2021-07-05 11:43:02 -03:00
ospf_ase.h *: reindent 2017-07-17 14:04:07 +02:00
ospf_bfd.c lib: remove enabled flag for bfd sessions 2021-04-22 16:39:29 +03:00
ospf_bfd.h ospfd: rework BFD integration 2021-03-23 10:18:42 -03:00
ospf_dump_api.c ospfd: replace inet_ntoa 2020-10-22 13:37:25 -04:00
ospf_dump_api.h *: use C99 standard fixed-width integer types 2018-03-27 15:13:34 -04:00
ospf_dump.c ospfd: adjust log config for GR 2021-07-05 11:43:02 -03:00
ospf_dump.h ospfd: adjust log config for GR 2021-07-05 11:43:02 -03:00
ospf_errors.c ospfd: Add Segment Routing Local Block 2020-08-20 14:37:40 +02:00
ospf_errors.h ospfd: Add Segment Routing Local Block 2020-08-20 14:37:40 +02:00
ospf_ext.c ospfd: Correct Coverity defects 2021-05-19 09:48:54 +02:00
ospf_ext.h ospfd: Add Segment Routing Local Block 2020-08-20 14:37:40 +02:00
ospf_flood.c ospfd: Summarised External LSA is not flushed in one scenario 2021-08-17 02:15:42 -07:00
ospf_flood.h ospfd: introduce support for Graceful Restart (restarting mode) 2021-07-05 11:43:02 -03:00
ospf_gr_helper.c ospfd: introduce support for Graceful Restart (restarting mode) 2021-07-05 11:43:02 -03:00
ospf_gr.c ospfd: introduce support for Graceful Restart (restarting mode) 2021-07-05 11:43:02 -03:00
ospf_gr.h ospfd: introduce support for Graceful Restart (restarting mode) 2021-07-05 11:43:02 -03:00
ospf_ia.c ospfd: replace inet_ntoa 2020-10-22 13:37:25 -04:00
ospf_ia.h *: reindent 2017-07-17 14:04:07 +02:00
ospf_interface.c ospfd: fix coverity warning of one field initialization 2021-08-04 21:20:20 -04:00
ospf_interface.h ospfd: Cleanup ospf_interface.h to work with our standards 2021-08-06 10:46:48 -04:00
ospf_ism.c *: require semicolon after DEFINE_HOOK & co. 2021-03-17 06:18:17 +01:00
ospf_ism.h *: require semicolon after DEFINE_HOOK & co. 2021-03-17 06:18:17 +01:00
ospf_ldp_sync.c ospfd: Prevent sending of uninited data to zebra 2021-01-30 14:13:34 -05:00
ospf_ldp_sync.h ldpd, isisd, ospfd: Remove periodic ldp-sync hello message 2020-12-09 14:11:38 -05:00
ospf_lsa.c ospfd: Summarised External LSA is not flushed in one scenario 2021-08-17 02:15:42 -07:00
ospf_lsa.h ospfd: ANVL Test case 25.22, 25.23 and 28.11 fixes 2021-09-03 06:44:39 -07:00
ospf_lsdb.c ospfd: replace pqueue_* with DECLARE_SKIPLIST 2019-04-27 19:33:45 +02:00
ospf_lsdb.h ospfd: replace pqueue_* with DECLARE_SKIPLIST 2019-04-27 19:33:45 +02:00
ospf_main.c *: Drop break after using frr_help_exit() in switch/case 2021-08-25 10:49:05 +03:00
ospf_memory.c *: require semicolon after DEFINE_MTYPE & co 2021-03-17 06:18:17 +01:00
ospf_memory.h *: require semicolon after DEFINE_MTYPE & co 2021-03-17 06:18:17 +01:00
ospf_neighbor.c ospfd: rename the graceful restart header 2021-07-05 11:43:02 -03:00
ospf_neighbor.h ospfd: rename the graceful restart header 2021-07-05 11:43:02 -03:00
ospf_network.c ospfd: don't exit when socket is not created 2021-07-27 16:10:35 +03:00
ospf_network.h ospfd: basic support for VRF NETNS backend 2018-02-27 11:11:24 +01:00
ospf_nsm.c ospfd: NSSA area should not exchange Type-4 LSAs in DD 2021-08-06 05:15:10 -07:00
ospf_nsm.h *: require semicolon after DEFINE_HOOK & co. 2021-03-17 06:18:17 +01:00
ospf_opaque.c ospfd: print extra LSA information in some log messages 2021-07-05 11:43:02 -03:00
ospf_opaque.h ospfd: Correct Coverity defects 2021-05-19 09:48:54 +02:00
ospf_packet.c ospfd: ANVL Test case 25.22, 25.23 and 28.11 fixes 2021-09-03 06:44:39 -07:00
ospf_packet.h ospfd: fix typos 2020-10-07 01:53:13 -07:00
ospf_ri.c ospfd: New code adds newline to log files 2021-05-19 15:10:48 -04:00
ospf_ri.h ospfd: Correct Coverity defects 2021-05-19 09:48:54 +02:00
ospf_route.c ospfd: Fix quick interface down up event handling in ospf 2021-05-25 14:43:40 -04:00
ospf_route.h ospfd: Fix quick interface down up event handling in ospf 2021-05-25 14:43:40 -04:00
ospf_routemap_nb_config.c *: make sure config.h or zebra.h is first 2021-04-23 12:06:35 +02:00
ospf_routemap_nb.c *: make sure config.h or zebra.h is first 2021-04-23 12:06:35 +02:00
ospf_routemap_nb.h ospfd: North-bound implementation for ospfd rmaps 2021-03-30 22:59:30 +03:00
ospf_routemap.c ospfd: fix routemap update 2021-06-17 19:31:03 +03:00
ospf_snmp.c build: make builddir include path consistent 2021-04-21 15:42:33 +02:00
ospf_spf.c ospfd: correctly cleanup spf data 2021-08-31 13:41:40 +03:00
ospf_spf.h ospfd: introduce support for Graceful Restart (restarting mode) 2021-07-05 11:43:02 -03:00
ospf_sr.c ospfd, doc, tests: combined SRGB/SRLB command 2021-06-04 17:22:38 +02:00
ospf_sr.h ospfd, doc, tests: combined SRGB/SRLB command 2021-06-04 17:22:38 +02:00
ospf_te.c *: Replace IPV4_MAX_PREFIXLEN to IPV4_MAX_BITLEN 2021-07-01 17:44:09 +03:00
ospf_te.h ospfd: Add Link-State support 2021-03-23 15:39:29 +01:00
ospf_ti_lfa.c *: Replace IPV4_MAX_PREFIXLEN to IPV4_MAX_BITLEN 2021-07-01 17:44:09 +03:00
ospf_ti_lfa.h ospfd: Add support for TI-LFA node protection 2021-01-19 15:32:13 +00:00
ospf_vty.c ospfd: add dead-interval 40 if configured in show running 2021-08-30 23:02:39 -07:00
ospf_vty.h ospfd: TI-LFA basic infrastructure and algorithms 2021-01-19 15:32:13 +00:00
ospf_zebra.c Merge pull request #8767 from opensourcerouting/ospfd-gr 2021-07-13 06:39:53 -04:00
ospf_zebra.h ospfd: introduce support for Graceful Restart (restarting mode) 2021-07-05 11:43:02 -03:00
OSPF-ALIGNMENT.txt *: Remove cvs control points 2017-12-05 17:28:12 -05:00
ospfd.c ospfd: fix initialization when vrf doesn't exist yet 2021-08-12 15:49:54 +03:00
ospfd.h ospfd: introduce support for Graceful Restart (restarting mode) 2021-07-05 11:43:02 -03:00
subdir.am build: fix AM_LDFLAGS usage (and gcov) 2021-07-21 17:10:08 +02:00