MCPcopy Create free account
hub / github.com/OpenSIPS/opensips / check_timer_list

Function check_timer_list

modules/tm/timer.c:700–755  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

698
699#ifdef TM_TIMER_DEBUG
700static void check_timer_list( struct timer* timer_list, char *txt)
701{
702 struct timer_link *tl ;
703 struct timer_link *tl1 ;
704
705 if (list_id<0 || list_id>=NR_OF_TIMER_LISTS) {
706 LM_CRIT("TM TIMER list [%d] bug [%s]\n",timer_list->id, txt);
707 abort();
708 }
709
710 tl = timer_list->last_tl.prev_tl;
711 while (tl!=&timer_list->first_tl) {
712 if (tl->prev_tl==0) {
713 LM_CRIT("TM TIMER list [%d] prev_tl==0 [%s]\n",timer_list->id, txt);
714 abort();
715 }
716 tl = tl->prev_tl;
717 }
718
719 tl = timer_list->first_tl.next_tl;
720 while (tl!=&timer_list->last_tl) {
721 if (tl->next_tl==0) {
722 LM_CRIT("TM TIMER list [%d] next_tl==0 [%s]\n",timer_list->id, txt);
723 abort();
724 }
725 tl = tl->next_tl;
726 }
727
728 tl = timer_list->first_tl.next_tl;
729 while (tl!=&timer_list->last_tl) {
730 if (tl->ld_tl==0) {
731 LM_CRIT("TM TIMER list [%d] corrupted - ld=0 [%s]\n",
732 timer_list->id, txt);
733 abort();
734 }
735 if (tl->ld_tl->ld_tl!=tl) {
736 LM_CRIT("TM TIMER list [%d] corrupted - ld cycle broken [%s]\n",
737 timer_list->id, txt);
738 abort();
739 }
740
741 if (tl->ld_tl!=tl) {
742 tl1 = tl->next_tl;
743 while(tl1!=tl->ld_tl) {
744 if (tl1->ld_tl) {
745 LM_CRIT("TM TIMER list [%d] corrupted - ld!=0 inside "
746 "cycle [%s]\n", timer_list->id, txt);
747 abort();
748 }
749 tl1 = tl1->next_tl;
750 }
751 }
752
753 tl = tl->ld_tl->next_tl;
754 }
755}
756#endif
757

Callers 3

remove_timer_unsafeFunction · 0.85
insert_timer_unsafeFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected