Example #1
0
/*only the content*/
void free_sip_msg(struct sip_msg* msg)
{
	if (msg->msg_cb) { msg_callback_process(msg, MSG_DESTROY, NULL); }
	if (msg->new_uri.s) { pkg_free(msg->new_uri.s); msg->new_uri.len=0; }
	if (msg->set_global_address.s) {
		pkg_free(msg->set_global_address.s);
		msg->set_global_address.s = NULL;
	}
	if (msg->set_global_port.s) {
		pkg_free(msg->set_global_port.s);
		msg->set_global_port.s = NULL;
	}
	if (msg->dst_uri.s) { pkg_free(msg->dst_uri.s); msg->dst_uri.len=0; }
	if (msg->path_vec.s) { pkg_free(msg->path_vec.s); msg->path_vec.len=0; }
	if (msg->headers)     free_hdr_field_lst(msg->headers);
	if (msg->sdp)         free_sdp(&(msg->sdp));
	if (msg->add_rm)      free_lump_list(msg->add_rm);
	if (msg->body_lumps)  free_lump_list(msg->body_lumps);
	if (msg->reply_lump)   free_reply_lump(msg->reply_lump);
	if (msg->multi )  { free_multi_body(msg->multi);msg->multi = 0;}
	/* don't free anymore -- now a pointer to a static buffer */
#	ifdef DYN_BUF
	pkg_free(msg->buf);
#	endif
}
Example #2
0
/*only the content*/
void free_sip_msg(struct sip_msg* msg)
{
	if (msg->new_uri.s) { pkg_free(msg->new_uri.s); msg->new_uri.len=0; }
	if (msg->dst_uri.s) { pkg_free(msg->dst_uri.s); msg->dst_uri.len=0; }
	if (msg->headers)     free_hdr_field_lst(msg->headers);
	if (msg->add_rm)      free_lump_list(msg->add_rm);
	if (msg->body_lumps)  free_lump_list(msg->body_lumps);
	if (msg->reply_lump)   free_reply_lump(msg->reply_lump);
	/* don't free anymore -- now a pointer to a static buffer */
#	ifdef DYN_BUF
	pkg_free(msg->buf); 
#	endif
}
Example #3
0
/*only the content*/
void free_sip_msg(struct sip_msg* const msg)
{
    reset_new_uri(msg);
    reset_dst_uri(msg);
    reset_path_vector(msg);
    reset_instance(msg);
    reset_ruid(msg);
    reset_ua(msg);
    if (msg->headers)     free_hdr_field_lst(msg->headers);
    if (msg->body && msg->body->free) msg->body->free(&msg->body);
    if (msg->add_rm)      free_lump_list(msg->add_rm);
    if (msg->body_lumps)  free_lump_list(msg->body_lumps);
    if (msg->reply_lump)   free_reply_lump(msg->reply_lump);
    msg_ldata_reset(msg);
    /* don't free anymore -- now a pointer to a static buffer */
#	ifdef DYN_BUF
    pkg_free(msg->buf);
#	endif
}