diff options
| author | paul <paul> | 2004-07-27 17:40:44 +0000 | 
|---|---|---|
| committer | paul <paul> | 2004-07-27 17:40:44 +0000 | 
| commit | 48fe13bfd73b5e080aaf9d8964b4c07f030bf24a (patch) | |
| tree | 04f5a6d9cfd182edfffa66b0797b23e88d1ccc36 /ospfd | |
| parent | fbe31d82581e82f59ddacff0e1db41d2f7c3baf6 (diff) | |
2004-07-27 Paul Jakma <paul@dishone.st>
        * ospf_packet.c: (ospf_ls_upd_send_queue_event) fix thinko from
          last fix for ospfd wedging due to oversize LSAs: dont list loop on
          ospf_ls_upd_queue_send() - guaranteed segfault.
Diffstat (limited to 'ospfd')
| -rw-r--r-- | ospfd/ChangeLog | 6 | ||||
| -rw-r--r-- | ospfd/ospf_packet.c | 6 | 
2 files changed, 7 insertions, 5 deletions
| diff --git a/ospfd/ChangeLog b/ospfd/ChangeLog index e3a2dfed..369822d9 100644 --- a/ospfd/ChangeLog +++ b/ospfd/ChangeLog @@ -1,5 +1,11 @@  2004-07-27 Paul Jakma <paul@dishone.st> +        * ospf_packet.c: (ospf_ls_upd_send_queue_event) fix thinko from +          last fix for ospfd wedging due to oversize LSAs: dont list loop on +          ospf_ls_upd_queue_send() - guaranteed segfault. +           +2004-07-27 Paul Jakma <paul@dishone.st> +  	* ospf_opaque.c: (ospf_opaque_lsa_flush_schedule) do not NULL out  	  the LSA as then free_opaque_info_per_id() can never unlock (and  	  free) the LSA. Reported by Gunnar Stigen. diff --git a/ospfd/ospf_packet.c b/ospfd/ospf_packet.c index 67215ebc..8aa63998 100644 --- a/ospfd/ospf_packet.c +++ b/ospfd/ospf_packet.c @@ -3123,11 +3123,7 @@ ospf_ls_upd_send_queue_event (struct thread *thread)        if (rn->info == NULL)          continue; -      for (tn = update->head; tn; tn = nn) -        { -          nn = tn->next; -          ospf_ls_upd_queue_send (oi, update, rn->p.u.prefix4); -        } +      ospf_ls_upd_queue_send (oi, update, rn->p.u.prefix4);        /* list might not be empty.         * TODO: work out what to do about oversized LSAs. | 
