Hello I am trying to push some headers through with?pjsua_call_make_call() as below but for some reason when i send 4 headers the method hangs for a while then PJSIP gets destroyed. If i send 3 headers it works well. I tried sending the sets {Header1, Header2, Header3}, and {Header1, Header2, Header4} and they went through. However sending {Header1, Header2, Header3, Header4} or {Header1, Header2, Header4, Header3} fails. Any ideas? // Header 1 pj_str_t hname = pj_str("Header 1"); pj_str_t hvalue = pj_str("Value 1"); pjsua_msg_data msg_data; pjsua_msg_data_init(&msg_data); pjsip_generic_string_hdr my_hdr; pjsip_generic_string_hdr_init2(&my_hdr, &hname, &hvalue); pj_list_push_back(&msg_data.hdr_list, &my_hdr); // Header 2 hname = pj_str("Header 2"); hvalue = pj_str("Value 2"); pjsip_generic_string_hdr my_hdr2; pjsip_generic_string_hdr_init2(&my_hdr2, &hname, &hvalue); pj_list_push_back(&msg_data.hdr_list, &my_hdr2); // Heade 3 hname = pj_str("Header 3"); hvalue = pj_str("Value 3"); pjsip_generic_string_hdr my_hdr3; pjsip_generic_string_hdr_init2(&my_hdr3, &hname, &hvalue); pj_list_push_back(&msg_data.hdr_list, &my_hdr3); // Header 4 hname = pj_str("Header 4"); hvalue = pj_str("Value 4"); pjsip_generic_string_hdr my_hdr4; pjsip_generic_string_hdr_init2(&my_hdr4, &hname, &hvalue); pj_list_push_back(&msg_data.hdr_list, &my_hdr4); status = pjsua_call_make_call( current_acc, &tmp, 0, NULL, &msg_data, NULL); if (status != PJ_SUCCESS) pjsua_perror(THIS_FILE, "Error making call", status); And this is what i get on the console: 10:12:33.340 dlg0xb20464 Transaction tsx0xb1cc64 state changed to Calling 10:12:33.340 callhandling.m Call 0 state changed to CALLING 2011-10-14 10:12:33.340 iPhoneAppName[8921:9103] current_call -1 10:12:33.840 tsx0xb1cc64 Retransmit timer event 10:12:33.840 tsx0xb1cc64 Retransmiting Request msg INVITE/cseq=21404 (tdta0xb29200), count=0, restart?=1 10:12:34.841 tsx0xb1cc64 Retransmit timer event 10:12:34.841 tsx0xb1cc64 Retransmiting Request msg INVITE/cseq=21404 (tdta0xb29200), count=1, restart?=1 10:12:36.844 tsx0xb1cc64 Retransmit timer event 10:12:36.845 tsx0xb1cc64 Retransmiting Request msg INVITE/cseq=21404 (tdta0xb29200), count=2, restart?=1 10:12:40.845 tsx0xb1cc64 Retransmit timer event 10:12:40.845 tsx0xb1cc64 Retransmiting Request msg INVITE/cseq=21404 (tdta0xb29200), count=3, restart?=1 10:12:48.845 tsx0xb1cc64 Retransmit timer event 10:12:48.850 tsx0xb1cc64 Retransmiting Request msg INVITE/cseq=21404 (tdta0xb29200), count=4, restart?=1 10:13:04.853 tsx0xb1cc64 Retransmit timer event 10:13:04.854 tsx0xb1cc64 Retransmiting Request msg INVITE/cseq=21404 (tdta0xb29200), count=5, restart?=1 10:13:05.340 tsx0xb1cc64 Timeout timer event 10:13:05.341 tsx0xb1cc64 State changed from Calling to Terminated, event=TIMER 10:13:05.341 dlg0xb20464 Transaction tsx0xb1cc64 state changed to Terminated 10:13:05.341 callhandling.m Call 0 is DISCONNECTED [reason=408 (Request Timeout)] 10:13:05.346 dlg0xb20464 Session count dec to 1 by mod-invite 10:13:05.352 tsx0xb2b264 Timeout timer event .. then destroy message go here