ospfd: Tweak previous iface RR write patch to avoid free/malloc & redundant log

* linklist.{c,h}: (listnode_move_to_tail) new unction to move a
  listnode to tail of list.
* ospf_packet.c: (ospf_write) remove debug that seemed to be mostly covered
  by existing debug.
  Use listnode_move_to_tail to just move the list node to the end of the
  tail, rather than freeing the one to hand and allocing a new one.
This commit is contained in:
Paul Jakma 2014-10-09 16:05:15 +01:00 committed by Donald Sharp
parent a3da12a80c
commit 93559b99b0
2 changed files with 8 additions and 0 deletions

View File

@ -159,6 +159,13 @@ listnode_add_after (struct list *list, struct listnode *pp, void *val)
list->count++;
}
/* Move given listnode to tail of the list */
void
listnode_move_to_tail (struct list *l, struct listnode *n)
{
LISTNODE_DETACH(l,n);
LISTNODE_ATTACH(l,n);
}
/* Delete specific date pointer from the list. */
void

View File

@ -68,6 +68,7 @@ extern void list_free (struct list *);
extern void listnode_add (struct list *, void *);
extern void listnode_add_sort (struct list *, void *);
extern void listnode_add_after (struct list *, struct listnode *, void *);
extern void listnode_move_to_tail (struct list *, struct listnode *);
extern void listnode_delete (struct list *, void *);
extern struct listnode *listnode_lookup (struct list *, void *);
extern void *listnode_head (struct list *);