mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-08-07 13:33:15 +00:00
isisd: only process overload info from fragment #0
Signed-off-by: Christian Franke <chris@opensourcerouting.org>
This commit is contained in:
parent
bb5c77d708
commit
39a275aa0f
@ -674,6 +674,12 @@ static int isis_spf_process_lsp(struct isis_spftree *spftree,
|
|||||||
&& !mt_router_info)
|
&& !mt_router_info)
|
||||||
return ISIS_OK;
|
return ISIS_OK;
|
||||||
|
|
||||||
|
/* RFC3787 section 4 SHOULD ignore overload bit in pseudo LSPs */
|
||||||
|
bool no_overload = (pseudo_lsp
|
||||||
|
|| (spftree->mtid == ISIS_MT_IPV4_UNICAST
|
||||||
|
&& !ISIS_MASK_LSP_OL_BIT(lsp->hdr.lsp_bits))
|
||||||
|
|| (mt_router_info && !mt_router_info->overload));
|
||||||
|
|
||||||
lspfragloop:
|
lspfragloop:
|
||||||
if (lsp->hdr.seqno == 0) {
|
if (lsp->hdr.seqno == 0) {
|
||||||
zlog_warn(
|
zlog_warn(
|
||||||
@ -686,12 +692,7 @@ lspfragloop:
|
|||||||
print_sys_hostname(lsp->hdr.lsp_id));
|
print_sys_hostname(lsp->hdr.lsp_id));
|
||||||
#endif /* EXTREME_DEBUG */
|
#endif /* EXTREME_DEBUG */
|
||||||
|
|
||||||
/* RFC3787 section 4 SHOULD ignore overload bit in pseudo LSPs */
|
if (no_overload) {
|
||||||
if (pseudo_lsp || (spftree->mtid == ISIS_MT_IPV4_UNICAST
|
|
||||||
&& !ISIS_MASK_LSP_OL_BIT(lsp->hdr.lsp_bits))
|
|
||||||
|| (mt_router_info && !mt_router_info->overload))
|
|
||||||
|
|
||||||
{
|
|
||||||
if (pseudo_lsp || spftree->mtid == ISIS_MT_IPV4_UNICAST) {
|
if (pseudo_lsp || spftree->mtid == ISIS_MT_IPV4_UNICAST) {
|
||||||
struct isis_oldstyle_reach *r;
|
struct isis_oldstyle_reach *r;
|
||||||
for (r = (struct isis_oldstyle_reach *)
|
for (r = (struct isis_oldstyle_reach *)
|
||||||
|
Loading…
Reference in New Issue
Block a user