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

Function start_refresh_timer

modules/usrloc/ul_timer.c:90–115  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

88
89
90void start_refresh_timer(ucontact_t *ct)
91{
92 struct list_head *el, *_;
93 ucontact_t *c;
94
95 if (!have_mem_storage())
96 return;
97
98 lock_get(ul_refresh_lock);
99 if (!list_empty(&ct->refresh_list))
100 list_del(&ct->refresh_list);
101
102 /* insert into sorted list (ascending) */
103 list_for_each_safe (el, _, pending_refreshes) {
104 c = list_entry(el, ucontact_t, refresh_list);
105 if (ct->refresh_time < c->refresh_time) {
106 list_add_tail(&ct->refresh_list, &c->refresh_list);
107 goto done;
108 }
109 }
110
111 list_add_tail(&ct->refresh_list, pending_refreshes);
112
113done:
114 lock_release(ul_refresh_lock);
115}
116
117
118void stop_refresh_timer(ucontact_t *ct)

Callers 2

new_ucontactFunction · 0.85
mem_update_ucontactFunction · 0.85

Calls 8

have_mem_storageFunction · 0.85
lock_getFunction · 0.85
list_emptyFunction · 0.85
list_delFunction · 0.85
list_for_each_safeFunction · 0.85
list_add_tailFunction · 0.85
lock_releaseFunction · 0.85
list_entryClass · 0.50

Tested by

no test coverage detected