Mercurial > hg > freeDiameter
annotate contrib/dict_dcca/dict_dcca_nokia.c @ 1562:6219359a36a9 default tip
Merge latest changes from proposed branch
author | Sebastien Decugis <sdecugis@freediameter.net> |
---|---|
date | Mon, 21 Jun 2021 19:08:18 +0800 |
parents | 42d0a08cffa8 |
children |
rev | line source |
---|---|
800
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
1 /* |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
2 * Dictionary definitions of objects specified in DCCA (Nokia, 3GPP). |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
3 */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
4 #include <freeDiameter/extension.h> |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
5 |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
6 |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
7 /* The content of this file follows the same structure as dict_base_proto.c */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
8 |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
9 #define CHECK_dict_new( _type, _data, _parent, _ref ) \ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
10 CHECK_FCT( fd_dict_new( fd_g_config->cnf_dict, (_type), (_data), (_parent), (_ref)) ); |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
11 |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
12 #define CHECK_dict_search( _type, _criteria, _what, _result ) \ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
13 CHECK_FCT( fd_dict_search( fd_g_config->cnf_dict, (_type), (_criteria), (_what), (_result), ENOENT) ); |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
14 |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
15 struct local_rules_definition { |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
16 char *avp_name; |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
17 enum rule_position position; |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
18 int min; |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
19 int max; |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
20 }; |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
21 |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
22 #define RULE_ORDER( _position ) ((((_position) == RULE_FIXED_HEAD) || ((_position) == RULE_FIXED_TAIL)) ? 1 : 0 ) |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
23 |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
24 #define PARSE_loc_rules( _rulearray, _parent) { \ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
25 int __ar; \ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
26 for (__ar=0; __ar < sizeof(_rulearray) / sizeof((_rulearray)[0]); __ar++) { \ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
27 struct dict_rule_data __data = { NULL, \ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
28 (_rulearray)[__ar].position, \ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
29 0, \ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
30 (_rulearray)[__ar].min, \ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
31 (_rulearray)[__ar].max}; \ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
32 __data.rule_order = RULE_ORDER(__data.rule_position); \ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
33 CHECK_FCT( fd_dict_search( \ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
34 fd_g_config->cnf_dict, \ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
35 DICT_AVP, \ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
36 AVP_BY_NAME, \ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
37 (_rulearray)[__ar].avp_name, \ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
38 &__data.rule_avp, 0 ) ); \ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
39 if ( !__data.rule_avp ) { \ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
40 TRACE_DEBUG(INFO, "AVP Not found: '%s'", (_rulearray)[__ar].avp_name ); \ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
41 return ENOENT; \ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
42 } \ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
43 CHECK_FCT_DO( fd_dict_new( fd_g_config->cnf_dict, DICT_RULE, &__data, _parent, NULL), \ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
44 { \ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
45 TRACE_DEBUG(INFO, "Error on rule with AVP '%s'", \ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
46 (_rulearray)[__ar].avp_name ); \ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
47 return EINVAL; \ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
48 } ); \ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
49 } \ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
50 } |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
51 |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
52 #define enumval_def_u32( _val_, _str_ ) \ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
53 { _str_, { .u32 = _val_ }} |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
54 |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
55 #define enumval_def_os( _len_, _val_, _str_ ) \ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
56 { _str_, { .os = { .data = (unsigned char *)_val_, .len = _len_ }}} |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
57 |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
58 |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
59 static int dict_dcca_nokia_entry(char * conffile) |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
60 { |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
61 TRACE_ENTRY("%p", conffile); |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
62 |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
63 /* Applications section */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
64 { |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
65 /* Create the vendors */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
66 { |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
67 struct dict_vendor_data vendor_data = { 94, "Nokia" }; |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
68 CHECK_FCT(fd_dict_new(fd_g_config->cnf_dict, DICT_VENDOR, &vendor_data, NULL, NULL)); |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
69 } |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
70 |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
71 } |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
72 |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
73 |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
74 /* AVP section */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
75 { |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
76 struct dict_object * Address_type; |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
77 struct dict_object * UTF8String_type; |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
78 struct dict_object * DiameterIdentity_type; |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
79 struct dict_object * DiameterURI_type; |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
80 struct dict_object * Time_type; |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
81 |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
82 CHECK_dict_search( DICT_TYPE, TYPE_BY_NAME, "Address", &Address_type); |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
83 CHECK_dict_search( DICT_TYPE, TYPE_BY_NAME, "UTF8String", &UTF8String_type); |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
84 CHECK_dict_search( DICT_TYPE, TYPE_BY_NAME, "DiameterIdentity", &DiameterIdentity_type); |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
85 CHECK_dict_search( DICT_TYPE, TYPE_BY_NAME, "DiameterURI", &DiameterURI_type); |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
86 CHECK_dict_search( DICT_TYPE, TYPE_BY_NAME, "Time", &Time_type); |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
87 |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
88 /* NSN-Token-Value */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
89 { |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
90 /* |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
91 OctetString. A token that was received, for |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
92 example, from the subscription portal [14]. The |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
93 maximum length of the token is 64 octets. |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
94 When this AVP is included in the MSCC, the USU |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
95 and Reporting-Reason AVPs will not be included |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
96 (because the token is not a trigger to report quota |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
97 usage). Additionally, the Rating-Group and |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
98 Service-Id AVPs will have the values received |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
99 from the subscription portal. |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
100 */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
101 struct dict_avp_data data = { |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
102 5113, /* Code */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
103 94, /* Vendor */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
104 "NSN-Token-Value", /* Name */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
105 AVP_FLAG_VENDOR | AVP_FLAG_MANDATORY, /* Fixed flags */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
106 AVP_FLAG_VENDOR | AVP_FLAG_MANDATORY, /* Fixed flag values */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
107 AVP_TYPE_OCTETSTRING /* base type of data */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
108 }; |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
109 CHECK_dict_new( DICT_AVP, &data , NULL, NULL); |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
110 } |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
111 |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
112 /* Quota-Consumption-Time */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
113 { |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
114 /* |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
115 Unsigned32. Contains the time quota envelope |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
116 expiration time in seconds. This is the time |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
117 elapsed from the previous service request, to |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
118 the moment the Flexi ISN considers that the |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
119 time envelope finishes. The value of this AVP |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
120 will be in effect for the remainder of the session |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
121 or until a new value is received. If this AVP is |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
122 not present, the default value configured for the |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
123 rating group will be used. The OCS may |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
124 disable the time quota envelope expiration by |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
125 setting the value of this AVP to 0. The value of |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
126 QCT sent from the OCS for a certain MSCC |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
127 instance is stored in the Flexi ISN and it is used |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
128 if the OCS does not sent a new value in the |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
129 CCAs that follow |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
130 */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
131 struct dict_avp_data data = { |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
132 5109, /* Code */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
133 94, /* Vendor */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
134 "Quota-Consumption-Time", /* Name */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
135 AVP_FLAG_VENDOR | AVP_FLAG_MANDATORY, /* Fixed flags */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
136 AVP_FLAG_VENDOR | AVP_FLAG_MANDATORY, /* Fixed flag values */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
137 AVP_TYPE_UNSIGNED32 /* base type of data */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
138 }; |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
139 CHECK_dict_new( DICT_AVP, &data , NULL, NULL); |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
140 } |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
141 |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
142 /* Quota-Holding-Time */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
143 { |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
144 /* |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
145 Unsigned32. Indicates how long the Flexi ISN |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
146 will keep the granted quota after a service |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
147 request has been received. The unit is in |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
148 seconds. When this time elapses, the Flexi ISN |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
149 ends the MSCC instance and reports the used |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
150 quota without requesting more. The value of |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
151 this AVP will be in effect for the remainder of |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
152 the session or until a new value is received. If |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
153 this AVP is not present, the default value con- |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
154 figured for the rating group will be used. The |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
155 OCS may disable the Quota Holding Timer by |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
156 setting the value of this AVP to 0. The value of |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
157 the QHT sent from the OCS for a certain |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
158 MSCC instance is stored in the Flexi ISN, and |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
159 it is used if the OCS does not sent a new value |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
160 in the CCAs that follow. |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
161 */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
162 struct dict_avp_data data = { |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
163 5110, /* Code */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
164 94, /* Vendor */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
165 "Quota-Holding-Time", /* Name */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
166 AVP_FLAG_VENDOR | AVP_FLAG_MANDATORY, /* Fixed flags */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
167 AVP_FLAG_VENDOR | AVP_FLAG_MANDATORY, /* Fixed flag values */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
168 AVP_TYPE_UNSIGNED32 /* base type of data */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
169 }; |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
170 CHECK_dict_new( DICT_AVP, &data , NULL, NULL); |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
171 } |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
172 |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
173 /* Default-Quota */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
174 { |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
175 /* |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
176 Grouped. Indicates the absolute number of |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
177 units that are available for consumption during |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
178 each upcoming OCS interrogation (e.g. after a |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
179 CCR has been sent but before the CCA is |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
180 received). If this AVP is not present, the Flexi |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
181 ISN will use the configured or earlier received |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
182 default quota. If this AVP is present but does |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
183 not include the default quota for a certain unit |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
184 type, that unit type is considered to have no |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
185 default quota. |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
186 The usage of default quota can be disabled in |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
187 certain situations by modifying the Flexi ISN |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
188 settings |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
189 */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
190 struct dict_avp_data data = { |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
191 5111, /* Code */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
192 94, /* Vendor */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
193 "Default-Quota", /* Name */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
194 AVP_FLAG_VENDOR | AVP_FLAG_MANDATORY, /* Fixed flags */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
195 AVP_FLAG_VENDOR | AVP_FLAG_MANDATORY, /* Fixed flag values */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
196 AVP_TYPE_GROUPED /* base type of data */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
197 }; |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
198 CHECK_dict_new( DICT_AVP, &data , NULL, NULL); |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
199 } |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
200 |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
201 /* Session-Start-Indicator */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
202 { |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
203 /* |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
204 OctetString. (3GPP TS 29.061 Rel4). The address |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
205 of the charging gateway that has been marked as |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
206 the default charging gateway for the PDP context. |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
207 The address is expressed as a four-byte integer. |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
208 Present in the initial CCR only. |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
209 */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
210 struct dict_avp_data data = { |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
211 5105, /* Code */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
212 94, /* Vendor */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
213 "Session-Start-Indicator", /* Name */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
214 AVP_FLAG_VENDOR | AVP_FLAG_MANDATORY, /* Fixed flags */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
215 AVP_FLAG_VENDOR, /* Fixed flag values */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
216 AVP_TYPE_OCTETSTRING /* base type of data */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
217 }; |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
218 CHECK_dict_new( DICT_AVP, &data , NULL, NULL); |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
219 } |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
220 |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
221 /* Rulebase-id */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
222 { |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
223 /* |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
224 */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
225 struct dict_avp_data data = { |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
226 5106, /* Code */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
227 94, /* Vendor */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
228 "Rulebase-id", /* Name */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
229 AVP_FLAG_VENDOR | AVP_FLAG_MANDATORY, /* Fixed flags */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
230 AVP_FLAG_VENDOR, /* Fixed flag values */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
231 AVP_TYPE_OCTETSTRING /* base type of data */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
232 }; |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
233 CHECK_dict_new( DICT_AVP, &data , UTF8String_type, NULL); |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
234 } |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
235 |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
236 /* Time-Of-First-Usage */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
237 { |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
238 /* |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
239 Time. Contains a time-stamp identifying the date |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
240 and time of the first increment of the used units |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
241 counter since the previous report. If no used units |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
242 were gathered during the previous reporting inter- |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
243 val, this AVP will not be present. |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
244 */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
245 struct dict_avp_data data = { |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
246 5103, /* Code */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
247 94, /* Vendor */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
248 "Time-Of-First-Usage", /* Name */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
249 AVP_FLAG_VENDOR | AVP_FLAG_MANDATORY, /* Fixed flags */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
250 AVP_FLAG_VENDOR, /* Fixed flag values */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
251 AVP_TYPE_OCTETSTRING /* base type of data */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
252 }; |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
253 CHECK_dict_new( DICT_AVP, &data , Time_type, NULL); |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
254 } |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
255 |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
256 /* Time-Of-Last-Usage */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
257 { |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
258 /* |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
259 Time. Contains a time-stamp identifying the date |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
260 and time of the first increment of the used units |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
261 counter since the previous report. If no used units |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
262 were gathered during the previous reporting inter- |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
263 val, this AVP will not be present. |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
264 */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
265 struct dict_avp_data data = { |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
266 5104, /* Code */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
267 94, /* Vendor */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
268 "Time-Of-Last-Usage", /* Name */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
269 AVP_FLAG_VENDOR | AVP_FLAG_MANDATORY, /* Fixed flags */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
270 AVP_FLAG_VENDOR, /* Fixed flag values */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
271 AVP_TYPE_OCTETSTRING /* base type of data */ |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
272 }; |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
273 CHECK_dict_new( DICT_AVP, &data , Time_type, NULL); |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
274 } |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
275 } |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
276 |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
277 TRACE_DEBUG(INFO, "Extension 'Dictionary definitions for DCCA Nokia' initialized"); |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
278 return 0; |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
279 } |
35f3fe884dc9
Updates sent by Konstantin to the dict_dcca files
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff
changeset
|
280 |
902
42d0a08cffa8
Remove duplicate definitions, use dependencies instead -- thanks to Thomas Klausner
Sebastien Decugis <sdecugis@freediameter.net>
parents:
800
diff
changeset
|
281 EXTENSION_ENTRY("dict_dcca_nokia", dict_dcca_nokia_entry, "dict_dcca"); |