Double-Linked Lists - Occasional Remove Functions

    #include <mplib1/dl_list.h>

    dl_Node_t *dl_Remove_Head( dl_List_t *list );

    dl_Node_t *dl_Remove_Tail( dl_List_t *list );

These functions remove the head and tail node from the supplied list and return a pointer to that node. If there are no items on the list the NULL is returned.