summaryrefslogtreecommitdiffstats
path: root/proto/ospf
diff options
context:
space:
mode:
authorOndrej Zajicek <santiago@crfreenet.org>2009-01-11 10:47:41 +0100
committerOndrej Zajicek <santiago@crfreenet.org>2009-01-11 10:47:41 +0100
commitf20907adf60960f63b797f4423b4790e8591e99c (patch)
tree77a506b862956d9d83170b082dc7f1fe36e0a6ad /proto/ospf
parent330aecead80140b0016d6de56dad1d193be774c8 (diff)
downloadbird-f20907adf60960f63b797f4423b4790e8591e99c.tar
bird-f20907adf60960f63b797f4423b4790e8591e99c.zip
Fixes bug in OSPF
Checksum was not recalculated when LSA was changed and packets with bad checksum were sent.
Diffstat (limited to 'proto/ospf')
-rw-r--r--proto/ospf/topology.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/proto/ospf/topology.c b/proto/ospf/topology.c
index 1d6b06e..9b2befb 100644
--- a/proto/ospf/topology.c
+++ b/proto/ospf/topology.c
@@ -309,6 +309,7 @@ originate_net_lsa(struct ospf_iface *ifa)
ifa->iface->name);
ifa->nlsa->lsa.sn += 1;
ifa->nlsa->lsa.age = LSA_MAXAGE;
+ lsasum_calculate(&ifa->nlsa->lsa, ifa->nlsa->lsa_body);
ospf_lsupd_flood(NULL, NULL, &ifa->nlsa->lsa, NULL, ifa->oa, 0);
s_rem_node(SNODE ifa->nlsa);
if (ifa->nlsa->lsa_body != NULL)