* pqueue.[ch]: Introduce "update" function to meet ospf spf needs. It
	  will allow to update node when:
	  i) a node is inserted into the priority queue;
	  ii) a node position is modified in the priority queue;
	* pqueue.h: Export trickle_down() function.
diff --git a/lib/pqueue.h b/lib/pqueue.h
index 95f79b8..d19c46d 100644
--- a/lib/pqueue.h
+++ b/lib/pqueue.h
@@ -28,6 +28,7 @@
   int size;
 
   int (*cmp) (void *, void *);
+  void (*update) (void * node, int actual_position);
 };
 
 #define PQUEUE_INIT_ARRAYSIZE  32
@@ -38,4 +39,6 @@
 void pqueue_enqueue (void *data, struct pqueue *queue);
 void *pqueue_dequeue (struct pqueue *queue);
 
+void trickle_down (int index, struct pqueue *queue);
+
 #endif /* _ZEBRA_PQUEUE_H */