Navigation


Changeset 639:95a784729cac in freeDiameter for extensions/app_sip


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.

Location:
extensions/app_sip
Files:
9 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       
  • extensions/app_sip/app_sip.h

    r468 r639  
    140140int ds_entry();
    141141void fd_ext_fini(void);
    142 int app_sip_default_cb( struct msg ** msg, struct avp * avp, struct session * sess, enum disp_action * act);
    143 int app_sip_MAR_cb( struct msg ** msg, struct avp * avp, struct session * sess, enum disp_action * act);
    144 int app_sip_RTA_cb( struct msg ** msg, struct avp * avp, struct session * sess, enum disp_action * act);
    145 int app_sip_PPA_cb( struct msg ** msg, struct avp * avp, struct session * sess, enum disp_action * act);
    146 int app_sip_LIR_cb( struct msg ** msg, struct avp * avp, struct session * sess, enum disp_action * act);
    147 int app_sip_UAR_cb( struct msg ** msg, struct avp * avp, struct session * sess, enum disp_action * act);
    148 int app_sip_SAR_cb( struct msg ** msg, struct avp * avp, struct session * sess, enum disp_action * act);
     142int app_sip_default_cb( struct msg ** msg, struct avp * avp, struct session * sess, void * opaque, enum disp_action * act);
     143int app_sip_MAR_cb( struct msg ** msg, struct avp * avp, struct session * sess, void * opaque, enum disp_action * act);
     144int app_sip_RTA_cb( struct msg ** msg, struct avp * avp, struct session * sess, void * opaque, enum disp_action * act);
     145int app_sip_PPA_cb( struct msg ** msg, struct avp * avp, struct session * sess, void * opaque, enum disp_action * act);
     146int app_sip_LIR_cb( struct msg ** msg, struct avp * avp, struct session * sess, void * opaque, enum disp_action * act);
     147int app_sip_UAR_cb( struct msg ** msg, struct avp * avp, struct session * sess, void * opaque, enum disp_action * act);
     148int app_sip_SAR_cb( struct msg ** msg, struct avp * avp, struct session * sess, void * opaque, enum disp_action * act);
    149149
    150150//Suscriber Locator
    151 int app_sip_SL_LIR_cb( struct msg ** msg, struct avp * paramavp, struct session * sess, enum disp_action * act);
    152 //int app_sip_SL_SAR_cb( struct msg ** msg, struct avp * paramavp, struct session * sess, enum disp_action * act);
     151int app_sip_SL_LIR_cb( struct msg ** msg, struct avp * paramavp, struct session * sess, void * opaque, enum disp_action * act);
     152//int app_sip_SL_SAR_cb( struct msg ** msg, struct avp * paramavp, struct session * sess, void * opaque, enum disp_action * act);
    153153
    154154#define SQL_GETPASSWORD "SELECT `password` FROM ds_users WHERE `username` ='%s'"
  • extensions/app_sip/locationinfo.c

    r433 r639  
    3737
    3838
    39 int app_sip_LIR_cb( struct msg ** msg, struct avp * paramavp, struct session * sess, enum disp_action * act)
     39int app_sip_LIR_cb( struct msg ** msg, struct avp * paramavp, struct session * sess, void * opaque, enum disp_action * act)
    4040{
    4141        TRACE_ENTRY("%p %p %p %p", msg, paramavp, sess, act);
  • extensions/app_sip/locationinfosl.c

    r433 r639  
    3737
    3838//This callback is specific to SUSCRIBER LOCATOR. We must look for the "serving" SIP server
    39 int app_sip_SL_LIR_cb( struct msg ** msg, struct avp * paramavp, struct session * sess, enum disp_action * act)
     39int app_sip_SL_LIR_cb( struct msg ** msg, struct avp * paramavp, struct session * sess, void * opaque, enum disp_action * act)
    4040{
    4141        TRACE_ENTRY("%p %p %p %p", msg, paramavp, sess, act);
  • extensions/app_sip/multimediaauth.c

    r433 r639  
    3737
    3838
    39 int app_sip_MAR_cb( struct msg ** msg, struct avp * paramavp, struct session * sess, enum disp_action * act)
     39int app_sip_MAR_cb( struct msg ** msg, struct avp * paramavp, struct session * sess, void * opaque, enum disp_action * act)
    4040{
    4141        struct msg *ans, *qry;
  • extensions/app_sip/pushprofile.c

    r440 r639  
    255255
    256256//Called when an PPA arrive
    257 int app_sip_PPA_cb( struct msg ** msg, struct avp * paramavp, struct session * sess, enum disp_action * act)
     257int app_sip_PPA_cb( struct msg ** msg, struct avp * paramavp, struct session * sess, void * opaque, enum disp_action * act)
    258258{
    259259        //TODO: PPA reception
  • extensions/app_sip/registrationtermination.c

    r440 r639  
    258258
    259259//Called when an RTA arrive
    260 int app_sip_RTA_cb( struct msg ** msg, struct avp * paramavp, struct session * sess, enum disp_action * act)
     260int app_sip_RTA_cb( struct msg ** msg, struct avp * paramavp, struct session * sess, void * opaque, enum disp_action * act)
    261261{
    262262        //TODO: RTA reception
  • extensions/app_sip/serverassignment.c

    r433 r639  
    3737
    3838
    39 int app_sip_SAR_cb( struct msg ** msg, struct avp * paramavp, struct session * sess, enum disp_action * act)
     39int app_sip_SAR_cb( struct msg ** msg, struct avp * paramavp, struct session * sess, void * opaque, enum disp_action * act)
    4040{
    4141        TRACE_ENTRY("%p %p %p %p", msg, paramavp, sess, act);
  • extensions/app_sip/userauthorization.c

    r433 r639  
    3737
    3838
    39 int app_sip_UAR_cb( struct msg ** msg, struct avp * paramavp, struct session * sess, enum disp_action * act)
     39int app_sip_UAR_cb( struct msg ** msg, struct avp * paramavp, struct session * sess, void * opaque, enum disp_action * act)
    4040{
    4141        TRACE_ENTRY("%p %p %p %p", msg, paramavp, sess, act);
Note: See TracChangeset for help on using the changeset viewer.