rem: udp_send(send_sock,buf,buf_len,&(to_addr),sizeof(union sockaddr_union));
add: udp_send(send_sock,buf,buf_len,&(to_addr));
context: int im_send_message(str *uri, str *to, str *from, str *contact, str *msg){	static char buf[2048];	static int call_id = 0x4f8a1b49;	//static int cseq_nr=1;	union sockaddr_union to_addr;	struct socket_info* send_sock;	int buf_len;	buf_len = sprintf(buf,		"MESSAGE %.*s SIP/2.0%s"		"Via: SIP/2.0/UDP %.*s:9%s"		"From: %.*s%s"		"To: %.*s%s"		"Call-ID: d2d4%04d-e803-%08X-b036-%X@%.*s%s"		"CSeq: %d MESSAGE%s"		"%s%.*s%s"		"Content-Type: text/plain; charset=UTF-8%s"		"Content-Length: %d%s"		"%s"		"%.*s", /*msg*/		uri->len,uri->s,CRLF,		sock_info[0].name.len,sock_info[0].name.s,CRLF,		from->len,from->s,CRLF,		to->len,to->s,CRLF,		pids?pids[process_no]:0,rand(),call_id++,			sock_info[0].address_str.len,sock_info[0].address_str.s,CRLF,		1/*cseq_nr++*/,CRLF,		contact->s?"Contact: ":"",contact->len,contact->s,contact->s?CRLF:"",		CRLF,		msg->len,CRLF,		CRLF,		msg->len,msg->s);	if (buf_len<=0)		goto error;	if (set_sock_struct( &to_addr, uri)==-1)		goto error;	send_sock = get_send_socket(&to_addr);	if (send_sock==0)		goto error;	udp_send(send_sock,buf,buf_len,&(to_addr),sizeof(union sockaddr_union));	return 1;error:	return -1;}