]> git.ipfire.org Git - thirdparty/bird.git/commitdiff
Bug fix in checksum calculation.
authorOndrej Filip <feela@network.cz>
Mon, 9 Aug 1999 18:34:08 +0000 (18:34 +0000)
committerOndrej Filip <feela@network.cz>
Mon, 9 Aug 1999 18:34:08 +0000 (18:34 +0000)
proto/ospf/ospf.c

index 48c6e038ba54fabbea7572ec4dcc068a507a89a7..4a209f255b92fdd4582fd766d29b27d88a7e539e 100644 (file)
@@ -496,10 +496,7 @@ ospf_tx_hook(sock *sk)
   ifa=(struct ospf_iface *)(sk->data);
 
   p=(struct proto *)(ifa->proto);
-  DBG(p->name);
-  DBG(": TX_Hook called on interface ");
-  DBG(sk->iface->name);
-  DBG(".\n");
+  DBG("%s: TX_Hook called on interface %s\n", p->name,sk->iface->name);
 }
 
 void
@@ -511,10 +508,7 @@ ospf_err_hook(sock *sk, int err)
   ifa=(struct ospf_iface *)(sk->data);
 
   p=(struct proto *)(ifa->proto);
-  DBG(p->name);
-  DBG(": Err_Hook called on interface ");
-  DBG(sk->iface->name);
-  DBG(".\n");
+  DBG("%s: Err_Hook called on interface %s\n", p->name,sk->iface->name);
 }
 
 /* This will change ! */
@@ -606,6 +600,7 @@ fill_ospf_pkt_hdr(struct ospf_iface *ifa, void *buf, u8 h_type)
   pkt->routerid=htonl(p->cf->global->router_id);
   pkt->areaid=htonl(ifa->area);
   pkt->autype=htons(ifa->autype);
+  pkt->checksum=0;
 }
 
 void
@@ -656,8 +651,9 @@ hello_timer_hook(timer *timer)
 
     op->length=ntohs(length);
 
-    /* Do authentification */
+    /* FIXME Do authentification */
 
+    /* Count checksum */
     op->checksum=ipsum_calculate(op,sizeof(struct ospf_packet)-8,
       &(pkt->netmask),length-sizeof(struct ospf_packet),NULL);