"Fossies" - the Fresh Open Source Software Archive  

Source code changes of the file "src/osip2/ict_fsm.c" between
libosip2-5.0.0.tar.gz and libosip2-5.1.0.tar.gz

About: The GNU oSIP library is an implementation of SIP (RFC3261).

ict_fsm.c  (libosip2-5.0.0):ict_fsm.c  (libosip2-5.1.0)
skipping to change at line 332 skipping to change at line 332
i = osip_route_clone (orig_route, &route); i = osip_route_clone (orig_route, &route);
if (i != 0) { if (i != 0) {
osip_message_free (ack); osip_message_free (ack);
return NULL; return NULL;
} }
osip_list_add (&ack->routes, route, -1); osip_list_add (&ack->routes, route, -1);
pos++; pos++;
} }
} }
if (response->status_code!=401 && response->status_code!=407) { if (response->status_code != 401 && response->status_code != 407) {
/* ack MUST contains the Authorization headers field from the original reque st */ /* ack MUST contains the Authorization headers field from the original reque st */
if (osip_list_size (&ict->orig_request->authorizations) > 0) { if (osip_list_size (&ict->orig_request->authorizations) > 0) {
i = osip_list_clone (&ict->orig_request->authorizations, &ack->authorizati ons, (int (*)(void *, void **)) &osip_authorization_clone); i = osip_list_clone (&ict->orig_request->authorizations, &ack->authorizati ons, (int (*)(void *, void **)) &osip_authorization_clone);
if (i != 0) { if (i != 0) {
osip_message_free (ack); osip_message_free (ack);
return NULL; return NULL;
} }
} }
/* ack MUST contains the Proxy-Authorization headers field from the original request */ /* ack MUST contains the Proxy-Authorization headers field from the original request */
skipping to change at line 417 skipping to change at line 417
/* search for maddr parameter */ /* search for maddr parameter */
osip_uri_param_t *maddr_param = NULL; osip_uri_param_t *maddr_param = NULL;
osip_uri_param_t *obr_param = NULL; osip_uri_param_t *obr_param = NULL;
osip_uri_param_t *obp_param = NULL; osip_uri_param_t *obp_param = NULL;
port = 5060; port = 5060;
if (ack->req_uri->port != NULL) if (ack->req_uri->port != NULL)
port = osip_atoi (ack->req_uri->port); port = osip_atoi (ack->req_uri->port);
/* if ob was used in Contact, then exosip adds "x-obr" and "x-obp", thus , when /* if ob was used in Contact, then exosip adds "x-obr" and "x-obp", thus , when
processing request, the ip/port destination are re-used here */ processing request, the ip/port destination are re-used here */
osip_uri_uparam_get_byname(ack->req_uri, "x-obr", &obr_param); osip_uri_uparam_get_byname (ack->req_uri, "x-obr", &obr_param);
osip_uri_uparam_get_byname(ack->req_uri, "x-obp", &obp_param); osip_uri_uparam_get_byname (ack->req_uri, "x-obp", &obp_param);
osip_uri_uparam_get_byname (ack->req_uri, "maddr", &maddr_param); osip_uri_uparam_get_byname (ack->req_uri, "maddr", &maddr_param);
if (maddr_param != NULL && maddr_param->gvalue != NULL) if (maddr_param != NULL && maddr_param->gvalue != NULL)
osip_ict_set_destination (ict->ict_context, osip_strdup (maddr_param-> gvalue), port); osip_ict_set_destination (ict->ict_context, osip_strdup (maddr_param-> gvalue), port);
else if (obr_param != NULL && obr_param->gvalue != NULL && obp_param != NULL && obp_param->gvalue != NULL) else if (obr_param != NULL && obr_param->gvalue != NULL && obp_param != NULL && obp_param->gvalue != NULL)
osip_ict_set_destination (ict->ict_context, osip_strdup (obr_param->gv alue), osip_atoi(obp_param->gvalue)); osip_ict_set_destination (ict->ict_context, osip_strdup (obr_param->gv alue), osip_atoi (obp_param->gvalue));
else else
osip_ict_set_destination (ict->ict_context, osip_strdup (ack->req_uri- >host), port); osip_ict_set_destination (ict->ict_context, osip_strdup (ack->req_uri- >host), port);
} }
} }
i = osip->cb_send_message (ict, ack, ict->ict_context->destination, ict->ict _context->port, ict->out_socket); i = osip->cb_send_message (ict, ack, ict->ict_context->destination, ict->ict _context->port, ict->out_socket);
if (i != 0) { if (i != 0) {
ict_handle_transport_error (ict, i); ict_handle_transport_error (ict, i);
return; return;
} }
if (MSG_IS_STATUS_3XX (evt->sip)) if (MSG_IS_STATUS_3XX (evt->sip))
 End of changes. 3 change blocks. 
5 lines changed or deleted 5 lines changed or added

Home  |  About  |  Features  |  All  |  Newest  |  Dox  |  Diffs  |  RSS Feeds  |  Screenshots  |  Comments  |  Imprint  |  Privacy  |  HTTP(S)