Mercurial > hg > freeDiameter
comparison extensions/app_acct/app_acct.c @ 639:95a784729cac
Added new opaque pointer to fd_sess_handler_create and fd_disp_register for usability. Bumped API version number.
author | Sebastien Decugis <sdecugis@nict.go.jp> |
---|---|
date | Mon, 20 Dec 2010 13:07:06 +0900 |
parents | 26aafbbc1640 |
children | 4a9f08d6b6ba |
comparison
equal
deleted
inserted
replaced
638:9448cba86673 | 639:95a784729cac |
---|---|
43 struct dict_object * Accounting_Record_Type; | 43 struct dict_object * Accounting_Record_Type; |
44 } acct_dict; | 44 } acct_dict; |
45 | 45 |
46 | 46 |
47 /* Callback for incoming Base Accounting Accounting-Request messages */ | 47 /* Callback for incoming Base Accounting Accounting-Request messages */ |
48 static int acct_cb( struct msg ** msg, struct avp * avp, struct session * sess, enum disp_action * act) | 48 static int acct_cb( struct msg ** msg, struct avp * avp, struct session * sess, void * opaque, enum disp_action * act) |
49 { | 49 { |
50 struct msg * m; | 50 struct msg * m; |
51 struct avp * a = NULL; | 51 struct avp * a = NULL; |
52 struct avp_hdr * art=NULL, *arn=NULL; /* We keep a pointer on the Accounting-Record-{Type, Number} AVPs from the query */ | 52 struct avp_hdr * art=NULL, *arn=NULL; /* We keep a pointer on the Accounting-Record-{Type, Number} AVPs from the query */ |
53 struct acct_record_list rl; | 53 struct acct_record_list rl; |
132 | 132 |
133 /* Register the dispatch callbacks */ | 133 /* Register the dispatch callbacks */ |
134 memset(&data, 0, sizeof(data)); | 134 memset(&data, 0, sizeof(data)); |
135 CHECK_FCT( fd_dict_search( fd_g_config->cnf_dict, DICT_APPLICATION, APPLICATION_BY_NAME, "Diameter Base Accounting", &data.app, ENOENT) ); | 135 CHECK_FCT( fd_dict_search( fd_g_config->cnf_dict, DICT_APPLICATION, APPLICATION_BY_NAME, "Diameter Base Accounting", &data.app, ENOENT) ); |
136 CHECK_FCT( fd_dict_search( fd_g_config->cnf_dict, DICT_COMMAND, CMD_BY_NAME, "Accounting-Request", &data.command, ENOENT) ); | 136 CHECK_FCT( fd_dict_search( fd_g_config->cnf_dict, DICT_COMMAND, CMD_BY_NAME, "Accounting-Request", &data.command, ENOENT) ); |
137 CHECK_FCT( fd_disp_register( acct_cb, DISP_HOW_CC, &data, NULL ) ); | 137 CHECK_FCT( fd_disp_register( acct_cb, DISP_HOW_CC, &data, NULL, NULL ) ); |
138 | 138 |
139 /* Advertise the support for the Diameter Base Accounting application in the peer */ | 139 /* Advertise the support for the Diameter Base Accounting application in the peer */ |
140 CHECK_FCT( fd_disp_app_support ( data.app, NULL, 0, 1 ) ); | 140 CHECK_FCT( fd_disp_app_support ( data.app, NULL, 0, 1 ) ); |
141 | 141 |
142 return 0; | 142 return 0; |