void belle_sip_main_loop_add_source(belle_sip_main_loop_t *ml, belle_sip_source_t *source){ if (source->node.next || source->node.prev){ belle_sip_fatal("Source is already linked somewhere else."); return; } if (source->node.data!=source){ belle_sip_fatal("Insane source passed to belle_sip_main_loop_add_source() !"); return; } belle_sip_object_ref(source); if (source->timeout>=0){ source->expire_ms=belle_sip_time_ms()+source->timeout; } ml->sources=belle_sip_list_append_link(ml->sources,&source->node); ml->nsources++; }
belle_sip_list_t* belle_sip_list_append(belle_sip_list_t* elem, void * data){ belle_sip_list_t* new_elem=belle_sip_list_new(data); return belle_sip_list_append_link(elem,new_elem); }