Navigation


Changeset 639:95a784729cac in freeDiameter for extensions/app_sip/app_sip.c


Ignore:
Timestamp:
Dec 20, 2010, 1:07:06 PM (13 years ago)
Author:
Sebastien Decugis <sdecugis@nict.go.jp>
Branch:
default
Phase:
public
Message:

Added new opaque pointer to fd_sess_handler_create and fd_disp_register for usability. Bumped API version number.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • extensions/app_sip/app_sip.c

    r433 r639  
    5959struct app_sip_dict sip_dict;
    6060
    61 int app_sip_default_cb( struct msg ** msg, struct avp * avp, struct session * sess, enum disp_action * act)
    62 {
    63         TRACE_ENTRY("%p %p %p %p", msg, avp, sess, act);
     61int app_sip_default_cb( struct msg ** msg, struct avp * avp, struct session * sess, void * opaque, enum disp_action * act)
     62{
     63        TRACE_ENTRY("%p %p %p %p %p", msg, avp, sess, opaque, act);
    6464       
    6565        return 0;
     
    179179        if(as_conf->mode==1)
    180180        {
    181           //**Command Codes
     181          // **Command Codes
    182182          //MAR
    183183          CHECK_FCT( fd_dict_search( fd_g_config->cnf_dict, DICT_COMMAND, CMD_BY_NAME, "Multimedia-Auth-Request", &data.command, ENOENT) );
    184           CHECK_FCT( fd_disp_register( app_sip_MAR_cb, DISP_HOW_CC, &data, &app_sip_MAR_hdl ) );
     184          CHECK_FCT( fd_disp_register( app_sip_MAR_cb, DISP_HOW_CC, &data, NULL, &app_sip_MAR_hdl ) );
    185185          //RTA
    186186          CHECK_FCT( fd_dict_search( fd_g_config->cnf_dict, DICT_COMMAND, CMD_BY_NAME, "Registration-Termination-Answer", &data.command, ENOENT) );
    187           CHECK_FCT( fd_disp_register( app_sip_RTA_cb, DISP_HOW_CC, &data, &app_sip_RTA_hdl ) );
     187          CHECK_FCT( fd_disp_register( app_sip_RTA_cb, DISP_HOW_CC, &data, NULL, &app_sip_RTA_hdl ) );
    188188          //PPA
    189189          CHECK_FCT( fd_dict_search( fd_g_config->cnf_dict, DICT_COMMAND, CMD_BY_NAME, "Push-Profile-Answer", &data.command, ENOENT) );
    190           CHECK_FCT( fd_disp_register( app_sip_PPA_cb, DISP_HOW_CC, &data, &app_sip_PPA_hdl ) );
     190          CHECK_FCT( fd_disp_register( app_sip_PPA_cb, DISP_HOW_CC, &data, NULL, &app_sip_PPA_hdl ) );
    191191          //LIR
    192192          CHECK_FCT( fd_dict_search( fd_g_config->cnf_dict, DICT_COMMAND, CMD_BY_NAME, "Location-Info-Request", &data.command, ENOENT) );
    193           CHECK_FCT( fd_disp_register( app_sip_LIR_cb, DISP_HOW_CC, &data, &app_sip_LIR_hdl ) );
     193          CHECK_FCT( fd_disp_register( app_sip_LIR_cb, DISP_HOW_CC, &data, NULL, &app_sip_LIR_hdl ) );
    194194          //UAR
    195195          CHECK_FCT( fd_dict_search( fd_g_config->cnf_dict, DICT_COMMAND, CMD_BY_NAME, "User-Authorization-Request", &data.command, ENOENT) );
    196           CHECK_FCT( fd_disp_register( app_sip_UAR_cb, DISP_HOW_CC, &data, &app_sip_UAR_hdl ) );
     196          CHECK_FCT( fd_disp_register( app_sip_UAR_cb, DISP_HOW_CC, &data, NULL, &app_sip_UAR_hdl ) );
    197197          //SAR
    198198          CHECK_FCT( fd_dict_search( fd_g_config->cnf_dict, DICT_COMMAND, CMD_BY_NAME, "Server-Assignment-Request", &data.command, ENOENT) );
    199           CHECK_FCT( fd_disp_register( app_sip_SAR_cb, DISP_HOW_CC, &data, &app_sip_SAR_hdl ) );
     199          CHECK_FCT( fd_disp_register( app_sip_SAR_cb, DISP_HOW_CC, &data, NULL, &app_sip_SAR_hdl ) );
    200200        }
    201201        if(as_conf->mode==2)
     
    203203          //LIR
    204204          CHECK_FCT( fd_dict_search( fd_g_config->cnf_dict, DICT_COMMAND, CMD_BY_NAME, "Location-Info-Request", &data.command, ENOENT) );
    205           CHECK_FCT( fd_disp_register( app_sip_SL_LIR_cb, DISP_HOW_CC, &data, &app_sip_SL_LIR_hdl ) );
     205          CHECK_FCT( fd_disp_register( app_sip_SL_LIR_cb, DISP_HOW_CC, &data, NULL, &app_sip_SL_LIR_hdl ) );
    206206        }
    207207        //Callback for unexpected messages
    208         CHECK_FCT( fd_disp_register( app_sip_default_cb, DISP_HOW_APPID, &data, &app_sip_default_hdl ) );
     208        CHECK_FCT( fd_disp_register( app_sip_default_cb, DISP_HOW_APPID, &data, NULL, &app_sip_default_hdl ) );
    209209       
    210210       
     
    213213                return EINVAL;
    214214       
    215         CHECK_FCT(fd_sess_handler_create(&ds_sess_hdl, free));
     215        CHECK_FCT(fd_sess_handler_create(&ds_sess_hdl, free, NULL));
    216216       
    217217        //Creation of thread for Registration Termination       
     
    237237        //TODO:unregister other callbacks
    238238       
    239         (void) fd_disp_unregister(&app_sip_MAR_hdl);
    240         CHECK_FCT_DO( fd_sess_handler_destroy(&ds_sess_hdl),return);
     239        (void) fd_disp_unregister(&app_sip_MAR_hdl, NULL);
     240        CHECK_FCT_DO( fd_sess_handler_destroy(&ds_sess_hdl, NULL),return);
    241241       
    242242       
Note: See TracChangeset for help on using the changeset viewer.