[Osip] Modify Sip Messages

Klaus-Martin Bach klausmartinbach at googlemail.com
Thu Feb 7 15:18:10 CET 2008


Hi Aymeric,
Hello list!

Thanks for your answer.

> Also, you may need to "force update" after your modification:
> osip_message_force_update(msg);

Here I get an error that says, that the osip_message_force_update
function doesn't want a char* but a osip_message_t* ...

As you can see below, msg is a char*, not a  osip_message_t*.

char *
Sip_Handler::alter_sip(char* msg, char* new_contact)
{
	int i;
	
	osip_contact_t *contact;
	i = osip_contact_init(&contact);
	if (i!=0) { fprintf(stderr, "Cannot allocate Contact. \n"); exit(0); }
	i = osip_contact_parse(contact, msg);
	if (i!=0) { fprintf(stderr, "Cannot parse Contact. \n"); exit(0); }
	
	contact->url->username = osip_strdup(new_contact);
	
	osip_message_force_update(msg); // msg is char* not osip_message_t* --> Error
	
	char* new_message; // only pseudo code to illustrate what I want to do
	osip_contact_to_str (contact, new_message);
	
	return new_message;

} // end alter_message

Am I using Osip completely wrong? Do I have to parse msg (= convert
msg into a osip_message_t) before I feed msg to my alter_sip function?

Thanks again for your help!

Regards,
kmb



More information about the Osip mailing list