]> git.ipfire.org Git - thirdparty/bird.git/commitdiff
Adding InfTransDelay for outgoing lsa.
authorOndrej Filip <feela@network.cz>
Tue, 2 May 2000 22:31:48 +0000 (22:31 +0000)
committerOndrej Filip <feela@network.cz>
Tue, 2 May 2000 22:31:48 +0000 (22:31 +0000)
proto/ospf/iface.c
proto/ospf/lsupd.c
proto/ospf/ospf.h

index 7015f012d2ddb24a1021cb7638b830aa594b0694..c7dfa2f1febc9995484360da8b55e314f082537f 100644 (file)
@@ -282,7 +282,7 @@ ospf_iface_default(struct ospf_iface *ifa)
   ifa->an=0;           /* FIXME This should respect config */
   ifa->cost=COST_D;
   ifa->rxmtint=RXMTINT_D;
-  ifa->iftransdelay=IFTRANSDELAY_D;
+  ifa->inftransdelay=INFTRANSDELAY_D;
   ifa->priority=PRIORITY_D;
   ifa->helloint=HELLOINT_D;
   ifa->deadc=DEADC_D;
index 3390abb4f71252b37ba0f9e9824d3a571abe509b..b372a2197372580b3adbafbd24faf3b7f395837b 100644 (file)
@@ -105,9 +105,16 @@ flood_lsa(struct ospf_neighbor *n, struct ospf_lsa_header *hn,
       {
         u8 *help;
        struct top_hash_entry *en;
-        htonlsah(hh,(struct ospf_lsa_header *)(pk+1));
-       help=(u8 *)(pk+1);
-       help+=sizeof(struct ospf_lsa_header);
+       struct ospf_lsa_header *lh;
+       u16 age;
+
+       lh=(struct ospf_lsa_header *)(pk+1);
+        htonlsah(hh,lh);
+       age=hh->age;
+       age+=ifa->inftransdelay;
+       if(age>LSA_MAXAGE) age=LSA_MAXAGE;
+       lh->age=htons(age);
+       help=(u8 *)(lh+1);
        en=ospf_hash_find_header(oa->gr,hh);
        htonlsab(en->lsa_body,help,hh->type,hh->length);
        len=hh->length;
index 40ac691f5d42ecb4007099223e2c3f17d54ab1d6..9ce0be9a7041acfd83e9b28f1513cb502dfca147 100644 (file)
@@ -63,7 +63,7 @@ struct ospf_iface {
   list neigh_list;     /* List of neigbours */
   u16 cost;            /* Cost of iface */
   u16 rxmtint;         /* number of seconds between LSA retransmissions */
-  u16 iftransdelay;    /* The estimated number of seconds it takes to
+  u16 inftransdelay;   /* The estimated number of seconds it takes to
                           transmit a Link State Update Packet over this
                           interface.  LSAs contained in the update */
   u8 priority;         /* A router priority for DR election */
@@ -95,7 +95,7 @@ struct ospf_iface {
 /* Default values for interface parameters */
 #define COST_D 10
 #define RXMTINT_D 5
-#define IFTRANSDELAY_D 1
+#define INFTRANSDELAY_D 1
 #define PRIORITY_D 1
 #define HELLOINT_D 10
 #define DEADC_D 4