ASTOBJ_UNREF(user, sip_destroy_user);
}
+static void unref_registry(struct sip_registry *reg)
+{
+ ASTOBJ_UNREF(reg, sip_registry_destroy);
+}
+
/*! \brief Interface structure with callbacks used to connect to UDPTL module*/
static struct ast_udptl_protocol sip_udptl = {
type: "SIP",
if (p->registry) {
if (p->registry->call == p)
p->registry->call = NULL;
- ASTOBJ_UNREF(p->registry, sip_registry_destroy);
+ unref_registry(p->registry);
}
/* Unlink us from the owner if we have one */
reg->callid_valid = FALSE;
reg->ocseq = INITIAL_CSEQ;
ASTOBJ_CONTAINER_LINK(®l, reg); /* Add the new registry entry to the list */
- ASTOBJ_UNREF(reg,sip_registry_destroy);
+ unref_registry(reg);
return 0;
}
r->expire = -1;
__sip_do_register(r);
- ASTOBJ_UNREF(r, sip_registry_destroy);
+ unref_registry(r);
return 0;
}
in the single SIP manager thread. */
p = r->call;
if (p->registry)
- ASTOBJ_UNREF(p->registry, sip_registry_destroy);
+ unref_registry(p->registry);
r->call = NULL;
ast_set_flag(&p->flags[0], SIP_NEEDDESTROY);
/* Pretend to ACK anything just in case */
res=transmit_register(r, SIP_REGISTER, NULL, NULL);
}
manager_event(EVENT_FLAG_SYSTEM, "Registry", "ChannelDriver: SIP\r\nUsername: %s\r\nDomain: %s\r\nStatus: %s\r\n", r->username, r->hostname, regstate2str(r->regstate));
- ASTOBJ_UNREF(r, sip_registry_destroy);
+ unref_registry(r);
return 0;
}
/* Schedule re-registration before we expire */
r->expire=ast_sched_add(sched, expires_ms, sip_reregister, r);
- ASTOBJ_UNREF(r, sip_registry_destroy);
+ unref_registry(r);
}
return 1;
}