@ -2932,6 +2932,7 @@ static int new_invite(struct new_invite *invite)
pjsip_timer_setting timer ;
pjsip_timer_setting timer ;
pjsip_rdata_sdp_info * sdp_info ;
pjsip_rdata_sdp_info * sdp_info ;
pjmedia_sdp_session * local = NULL ;
pjmedia_sdp_session * local = NULL ;
char buffer [ AST_SOCKADDR_BUFLEN ] ;
/* From this point on, any calls to pjsip_inv_terminate have the last argument as PJ_TRUE
/* From this point on, any calls to pjsip_inv_terminate have the last argument as PJ_TRUE
* so that we will be notified so we can destroy the session properly
* so that we will be notified so we can destroy the session properly
@ -2959,8 +2960,11 @@ static int new_invite(struct new_invite *invite)
}
}
goto end ;
goto end ;
case SIP_GET_DEST_EXTEN_PARTIAL :
case SIP_GET_DEST_EXTEN_PARTIAL :
ast_debug ( 1 , " Call from '%s' (%s:%s:%d) to extension '%s' - partial match \n " , ast_sorcery_object_get_id ( invite - > session - > endpoint ) ,
ast_debug ( 1 , " Call from '%s' (%s:%s) to extension '%s' - partial match \n " ,
invite - > rdata - > tp_info . transport - > type_name , invite - > rdata - > pkt_info . src_name , invite - > rdata - > pkt_info . src_port , invite - > session - > exten ) ;
ast_sorcery_object_get_id ( invite - > session - > endpoint ) ,
invite - > rdata - > tp_info . transport - > type_name ,
pj_sockaddr_print ( & invite - > rdata - > pkt_info . src_addr , buffer , sizeof ( buffer ) , 3 ) ,
invite - > session - > exten ) ;
if ( pjsip_inv_initial_answer ( invite - > session - > inv_session , invite - > rdata , 484 , NULL , NULL , & tdata ) = = PJ_SUCCESS ) {
if ( pjsip_inv_initial_answer ( invite - > session - > inv_session , invite - > rdata , 484 , NULL , NULL , & tdata ) = = PJ_SUCCESS ) {
ast_sip_session_send_response ( invite - > session , tdata ) ;
ast_sip_session_send_response ( invite - > session , tdata ) ;
@ -2970,9 +2974,12 @@ static int new_invite(struct new_invite *invite)
goto end ;
goto end ;
case SIP_GET_DEST_EXTEN_NOT_FOUND :
case SIP_GET_DEST_EXTEN_NOT_FOUND :
default :
default :
ast_log ( LOG_NOTICE , " Call from '%s' (%s:%s:%d) to extension '%s' rejected because extension not found in context '%s'. \n " ,
ast_log ( LOG_NOTICE , " Call from '%s' (%s:%s) to extension '%s' rejected because extension not found in context '%s'. \n " ,
ast_sorcery_object_get_id ( invite - > session - > endpoint ) , invite - > rdata - > tp_info . transport - > type_name , invite - > rdata - > pkt_info . src_name ,
ast_sorcery_object_get_id ( invite - > session - > endpoint ) ,
invite - > rdata - > pkt_info . src_port , invite - > session - > exten , invite - > session - > endpoint - > context ) ;
invite - > rdata - > tp_info . transport - > type_name ,
pj_sockaddr_print ( & invite - > rdata - > pkt_info . src_addr , buffer , sizeof ( buffer ) , 3 ) ,
invite - > session - > exten ,
invite - > session - > endpoint - > context ) ;
if ( pjsip_inv_initial_answer ( invite - > session - > inv_session , invite - > rdata , 404 , NULL , NULL , & tdata ) = = PJ_SUCCESS ) {
if ( pjsip_inv_initial_answer ( invite - > session - > inv_session , invite - > rdata , 404 , NULL , NULL , & tdata ) = = PJ_SUCCESS ) {
ast_sip_session_send_response ( invite - > session , tdata ) ;
ast_sip_session_send_response ( invite - > session , tdata ) ;