forked from acouzens/open5gs
move fd/extensions to freeDiameter-1.2.1/extensions
This commit is contained in:
parent
4ef15728a0
commit
8b916d15f4
|
@ -416,15 +416,6 @@ AC_CONFIG_FILES([lib/base/Makefile])
|
|||
AC_CONFIG_FILES([lib/s1ap/asn1c/Makefile])
|
||||
AC_CONFIG_FILES([lib/s1ap/Makefile])
|
||||
AC_CONFIG_FILES([lib/nas/Makefile])
|
||||
AC_CONFIG_FILES([lib/fd/extensions/dbg_msg_dumps/Makefile])
|
||||
AC_CONFIG_FILES([lib/fd/extensions/dict_rfc5777/Makefile])
|
||||
AC_CONFIG_FILES([lib/fd/extensions/dict_mip6i/Makefile])
|
||||
AC_CONFIG_FILES([lib/fd/extensions/dict_nasreq/Makefile])
|
||||
AC_CONFIG_FILES([lib/fd/extensions/dict_nas_mipv6/Makefile])
|
||||
AC_CONFIG_FILES([lib/fd/extensions/dict_dcca/Makefile])
|
||||
AC_CONFIG_FILES([lib/fd/extensions/dict_dcca_3gpp/Makefile])
|
||||
AC_CONFIG_FILES([lib/fd/extensions/dict_s6a/Makefile])
|
||||
AC_CONFIG_FILES([lib/fd/extensions/Makefile])
|
||||
AC_CONFIG_FILES([lib/fd/Makefile])
|
||||
AC_CONFIG_FILES([lib/gtp/Makefile])
|
||||
AC_CONFIG_FILES([lib/ipfw/Makefile])
|
||||
|
|
|
@ -2,8 +2,6 @@
|
|||
|
||||
AUTOMAKE_OPTIONS = subdir-objects
|
||||
|
||||
SUBDIRS = extensions
|
||||
|
||||
pkglib_LTLIBRARIES = libfd.la
|
||||
|
||||
libfd_la_SOURCES = \
|
||||
|
|
|
@ -1,395 +0,0 @@
|
|||
/*********************************************************************************************************
|
||||
* Software License Agreement (BSD License) *
|
||||
* Author: Sebastien Decugis <sdecugis@freediameter.net> *
|
||||
* *
|
||||
* Copyright (c) 2013, WIDE Project and NICT *
|
||||
* All rights reserved. *
|
||||
* *
|
||||
* Redistribution and use of this software in source and binary forms, with or without modification, are *
|
||||
* permitted provided that the following conditions are met: *
|
||||
* *
|
||||
* * Redistributions of source code must retain the above *
|
||||
* copyright notice, this list of conditions and the *
|
||||
* following disclaimer. *
|
||||
* *
|
||||
* * Redistributions in binary form must reproduce the above *
|
||||
* copyright notice, this list of conditions and the *
|
||||
* following disclaimer in the documentation and/or other *
|
||||
* materials provided with the distribution. *
|
||||
* *
|
||||
* * Neither the name of the WIDE Project or NICT nor the *
|
||||
* names of its contributors may be used to endorse or *
|
||||
* promote products derived from this software without *
|
||||
* specific prior written permission of WIDE Project and *
|
||||
* NICT. *
|
||||
* *
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED *
|
||||
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A *
|
||||
* PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR *
|
||||
* ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT *
|
||||
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS *
|
||||
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR *
|
||||
* TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF *
|
||||
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. *
|
||||
*********************************************************************************************************/
|
||||
|
||||
/* This extension uses the hooks mechanism to display the full content of received and sent messages, for
|
||||
learning & debugging purpose.
|
||||
Do NOT use this extension in production environment because it will slow down all operation. */
|
||||
|
||||
/* You can add a configuration parameter on the LoadExtension line, e.g.
|
||||
LoadExtension="dbg_msg_dump.fdx":"0x149";
|
||||
The value is an hexadecimal value with the following bits meaning: */
|
||||
#define HK_ERRORS_QUIET 0x0001 /* errors are not dumped -- removes the default handling as well */
|
||||
#define HK_ERRORS_COMPACT 0x0002 /* errors in compact mode */
|
||||
#define HK_ERRORS_FULL 0x0004 /* errors in full mode (1 line with all the data) */
|
||||
#define HK_ERRORS_TREE 0x0008 /* errors in treeview mode (message split over multiple lines) */
|
||||
|
||||
#define HK_SNDRCV_QUIET 0x0010 /* send+rcv are not dumped -- removes the default handling as well */
|
||||
#define HK_SNDRCV_COMPACT 0x0020 /* send+rcv in compact mode */
|
||||
#define HK_SNDRCV_FULL 0x0040 /* send+rcv in full mode */
|
||||
#define HK_SNDRCV_TREE 0x0080 /* send+rcv in tree mode */
|
||||
|
||||
#define HK_ROUTING_QUIET 0x0100 /* routing decisions are not dumped -- removes the default handling as well */
|
||||
#define HK_ROUTING_COMPACT 0x0200 /* routing decisions in compact mode */
|
||||
#define HK_ROUTING_FULL 0x0400 /* routing decisions in full mode */
|
||||
#define HK_ROUTING_TREE 0x0800 /* routing decisions in tree mode */
|
||||
|
||||
#define HK_PEERS_QUIET 0x1000 /* peers connections events are not dumped -- removes the default handling as well */
|
||||
#define HK_PEERS_COMPACT 0x2000 /* peers connections events in compact mode */
|
||||
#define HK_PEERS_FULL 0x4000 /* peers connections events in full mode */
|
||||
#define HK_PEERS_TREE 0x8000 /* peers connections events in tree mode */
|
||||
/*
|
||||
Default value is HK_ERRORS_TREE + HK_SNDRCV_TREE + HK_PEERS_TREE
|
||||
*/
|
||||
|
||||
#include <freeDiameter/extension.h>
|
||||
|
||||
static struct fd_hook_hdl *md_hdl[4] = {NULL,NULL,NULL,NULL};
|
||||
static uint32_t dump_level = HK_ERRORS_TREE | HK_SNDRCV_TREE | HK_PEERS_TREE; /* default */
|
||||
static char * buf = NULL;
|
||||
static size_t len;
|
||||
static pthread_mutex_t mtx = PTHREAD_MUTEX_INITIALIZER;
|
||||
|
||||
/* The callback called when messages are received and sent */
|
||||
static void md_hook_cb_tree(enum fd_hook_type type, struct msg * msg, struct peer_hdr * peer, void * other, struct fd_hook_permsgdata *pmd, void * regdata)
|
||||
{
|
||||
char * peer_name = peer ? peer->info.pi_diamid : "<unknown peer>";
|
||||
|
||||
CHECK_POSIX_DO( pthread_mutex_lock(&mtx), );
|
||||
|
||||
if (msg) {
|
||||
CHECK_MALLOC_DO( fd_msg_dump_treeview(&buf, &len, NULL, msg, fd_g_config->cnf_dict, (type == HOOK_MESSAGE_PARSING_ERROR) ? 0 : 1, 1),
|
||||
{ LOG_E("Error while dumping a message"); pthread_mutex_unlock(&mtx); return; } );
|
||||
}
|
||||
|
||||
switch (type) {
|
||||
/* errors */
|
||||
case HOOK_MESSAGE_FAILOVER:
|
||||
LOG_E("FAILOVER from '%s':", peer_name);
|
||||
LOG_SPLIT(FD_LOG_ERROR, " ", buf, NULL);
|
||||
break;
|
||||
case HOOK_MESSAGE_PARSING_ERROR:
|
||||
if (msg) {
|
||||
DiamId_t id = NULL;
|
||||
if (!fd_msg_source_get( msg, &id, NULL ))
|
||||
id = (DiamId_t)"<error getting source>";
|
||||
if (!id)
|
||||
id = (DiamId_t)"<local>";
|
||||
LOG_E("PARSING ERROR: '%s' from '%s': ", (char *)other, (char *)id);
|
||||
LOG_SPLIT(FD_LOG_ERROR, " ", buf, NULL);
|
||||
} else {
|
||||
struct fd_cnx_rcvdata *rcv_data = other;
|
||||
CHECK_MALLOC_DO(fd_dump_extend_hexdump(&buf, &len, NULL, rcv_data->buffer, rcv_data->length, 0, 0), break);
|
||||
LOG_E("PARSING ERROR: %zdB msg from '%s': %s", rcv_data->length, peer_name, buf);
|
||||
}
|
||||
break;
|
||||
case HOOK_MESSAGE_ROUTING_ERROR:
|
||||
LOG_E("ROUTING ERROR '%s' for: ", (char *)other);
|
||||
LOG_SPLIT(FD_LOG_ERROR, " ", buf, NULL);
|
||||
break;
|
||||
case HOOK_MESSAGE_DROPPED:
|
||||
LOG_E("DROPPED '%s'", (char *)other);
|
||||
LOG_SPLIT(FD_LOG_ERROR, " ", buf, NULL);
|
||||
break;
|
||||
|
||||
/* send receive */
|
||||
case HOOK_MESSAGE_RECEIVED:
|
||||
LOG_N("RCV from '%s':", peer_name);
|
||||
LOG_SPLIT(FD_LOG_NOTICE, " ", buf, NULL);
|
||||
break;
|
||||
case HOOK_MESSAGE_SENT:
|
||||
LOG_N("SND to '%s':", peer_name);
|
||||
LOG_SPLIT(FD_LOG_NOTICE, " ", buf, NULL);
|
||||
break;
|
||||
|
||||
/* routing */
|
||||
case HOOK_MESSAGE_LOCAL:
|
||||
LOG_N("ISSUED:");
|
||||
LOG_SPLIT(FD_LOG_NOTICE, " ", buf, NULL);
|
||||
break;
|
||||
case HOOK_MESSAGE_ROUTING_FORWARD:
|
||||
LOG_N("FORWARDING: %s", buf);
|
||||
LOG_SPLIT(FD_LOG_NOTICE, " ", buf, NULL);
|
||||
break;
|
||||
case HOOK_MESSAGE_ROUTING_LOCAL:
|
||||
LOG_N("DISPATCHING: %s", buf);
|
||||
LOG_SPLIT(FD_LOG_NOTICE, " ", buf, NULL);
|
||||
break;
|
||||
|
||||
/* peers */
|
||||
case HOOK_PEER_CONNECT_FAILED:
|
||||
LOG_N("CONNECT FAILED to %s: %s", peer_name, (char *)other);
|
||||
break;
|
||||
case HOOK_PEER_CONNECT_SUCCESS:
|
||||
{
|
||||
char protobuf[40];
|
||||
if (peer) {
|
||||
CHECK_FCT_DO(fd_peer_cnx_proto_info(peer, protobuf, sizeof(protobuf)), break );
|
||||
} else {
|
||||
protobuf[0] = '-';
|
||||
protobuf[1] = '\0';
|
||||
}
|
||||
LOG_N("CONNECTED TO '%s' (%s):", peer_name, protobuf);
|
||||
LOG_SPLIT(FD_LOG_NOTICE, " ", buf, NULL);
|
||||
}
|
||||
break;
|
||||
|
||||
/* Not handled */
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
CHECK_POSIX_DO( pthread_mutex_unlock(&mtx), );
|
||||
}
|
||||
|
||||
static void md_hook_cb_full(enum fd_hook_type type, struct msg * msg, struct peer_hdr * peer, void * other, struct fd_hook_permsgdata *pmd, void * regdata)
|
||||
{
|
||||
char * peer_name = peer ? peer->info.pi_diamid : "<unknown peer>";
|
||||
|
||||
CHECK_POSIX_DO( pthread_mutex_lock(&mtx), );
|
||||
|
||||
if (msg) {
|
||||
CHECK_MALLOC_DO( fd_msg_dump_full(&buf, &len, NULL, msg, fd_g_config->cnf_dict, (type == HOOK_MESSAGE_PARSING_ERROR) ? 0 : 1, 1),
|
||||
{ LOG_E("Error while dumping a message"); pthread_mutex_unlock(&mtx); return; } );
|
||||
}
|
||||
|
||||
switch (type) {
|
||||
/* errors */
|
||||
case HOOK_MESSAGE_FAILOVER:
|
||||
LOG_E("FAILOVER from '%s': %s", peer_name, buf);
|
||||
break;
|
||||
case HOOK_MESSAGE_PARSING_ERROR:
|
||||
if (msg) {
|
||||
DiamId_t id = NULL;
|
||||
if (!fd_msg_source_get( msg, &id, NULL ))
|
||||
id = (DiamId_t)"<error getting source>";
|
||||
if (!id)
|
||||
id = (DiamId_t)"<local>";
|
||||
LOG_E("PARSING ERROR: '%s' from '%s': %s", (char *)other, (char *)id, buf);
|
||||
} else {
|
||||
struct fd_cnx_rcvdata *rcv_data = other;
|
||||
CHECK_MALLOC_DO(fd_dump_extend_hexdump(&buf, &len, NULL, rcv_data->buffer, rcv_data->length, 0, 0), break);
|
||||
LOG_E("PARSING ERROR: %zdB msg from '%s': %s", rcv_data->length, peer_name, buf);
|
||||
}
|
||||
break;
|
||||
case HOOK_MESSAGE_ROUTING_ERROR:
|
||||
LOG_E("ROUTING ERROR '%s' for: %s", (char *)other, buf);
|
||||
break;
|
||||
case HOOK_MESSAGE_DROPPED:
|
||||
LOG_E("DROPPED '%s' %s", (char *)other, buf);
|
||||
break;
|
||||
|
||||
/* send receive */
|
||||
case HOOK_MESSAGE_RECEIVED:
|
||||
LOG_N("RCV from '%s': %s", peer_name, buf);
|
||||
break;
|
||||
case HOOK_MESSAGE_SENT:
|
||||
LOG_N("SND to '%s': %s", peer_name, buf);
|
||||
break;
|
||||
|
||||
/* routing */
|
||||
case HOOK_MESSAGE_LOCAL:
|
||||
LOG_N("ISSUED: %s", buf);
|
||||
break;
|
||||
case HOOK_MESSAGE_ROUTING_FORWARD:
|
||||
LOG_N("FORWARDING: %s", buf);
|
||||
break;
|
||||
case HOOK_MESSAGE_ROUTING_LOCAL:
|
||||
LOG_N("DISPATCHING: %s", buf);
|
||||
break;
|
||||
|
||||
/* peers */
|
||||
case HOOK_PEER_CONNECT_FAILED:
|
||||
LOG_N("CONNECT FAILED to %s: %s", peer_name, (char *)other);
|
||||
break;
|
||||
case HOOK_PEER_CONNECT_SUCCESS: {
|
||||
char protobuf[40];
|
||||
if (peer) {
|
||||
CHECK_FCT_DO(fd_peer_cnx_proto_info(peer, protobuf, sizeof(protobuf)), break );
|
||||
} else {
|
||||
protobuf[0] = '-';
|
||||
protobuf[1] = '\0';
|
||||
}
|
||||
LOG_N("CONNECTED TO '%s' (%s): %s", peer_name, protobuf, buf);
|
||||
}
|
||||
break;
|
||||
/* Not handled */
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
CHECK_POSIX_DO( pthread_mutex_unlock(&mtx), );
|
||||
}
|
||||
|
||||
static void md_hook_cb_compact(enum fd_hook_type type, struct msg * msg, struct peer_hdr * peer, void * other, struct fd_hook_permsgdata *pmd, void * regdata)
|
||||
{
|
||||
char * peer_name = peer ? peer->info.pi_diamid : "<unknown peer>";
|
||||
|
||||
CHECK_POSIX_DO( pthread_mutex_lock(&mtx), );
|
||||
|
||||
if (msg) {
|
||||
CHECK_MALLOC_DO( fd_msg_dump_summary(&buf, &len, NULL, msg, fd_g_config->cnf_dict, 0, 0),
|
||||
{ LOG_E("Error while dumping a message"); pthread_mutex_unlock(&mtx); return; } );
|
||||
}
|
||||
|
||||
switch (type) {
|
||||
/* errors */
|
||||
case HOOK_MESSAGE_FAILOVER:
|
||||
LOG_E("FAILOVER from '%s': %s", peer_name, buf);
|
||||
break;
|
||||
case HOOK_MESSAGE_PARSING_ERROR:
|
||||
if (msg) {
|
||||
DiamId_t id = NULL;
|
||||
if (!fd_msg_source_get( msg, &id, NULL ))
|
||||
id = (DiamId_t)"<error getting source>";
|
||||
if (!id)
|
||||
id = (DiamId_t)"<local>";
|
||||
LOG_E("PARSING ERROR: '%s' from '%s': %s", (char *)other, (char *)id, buf);
|
||||
} else {
|
||||
struct fd_cnx_rcvdata *rcv_data = other;
|
||||
CHECK_MALLOC_DO(fd_dump_extend_hexdump(&buf, &len, NULL, rcv_data->buffer, rcv_data->length, 0, 0), break);
|
||||
LOG_E("PARSING ERROR: %zdB msg from '%s': %s", rcv_data->length, peer_name, buf);
|
||||
}
|
||||
break;
|
||||
case HOOK_MESSAGE_ROUTING_ERROR:
|
||||
LOG_E("ROUTING ERROR '%s' for: %s", (char *)other, buf);
|
||||
break;
|
||||
case HOOK_MESSAGE_DROPPED:
|
||||
LOG_E("DROPPED '%s' %s", (char *)other, buf);
|
||||
break;
|
||||
|
||||
/* send receive */
|
||||
case HOOK_MESSAGE_RECEIVED:
|
||||
LOG_N("RCV from '%s': %s", peer_name, buf);
|
||||
break;
|
||||
case HOOK_MESSAGE_SENT:
|
||||
LOG_N("SND to '%s': %s", peer_name, buf);
|
||||
break;
|
||||
|
||||
/* routing */
|
||||
case HOOK_MESSAGE_LOCAL:
|
||||
LOG_N("ISSUED: %s", buf);
|
||||
break;
|
||||
case HOOK_MESSAGE_ROUTING_FORWARD:
|
||||
LOG_N("FORWARDING: %s", buf);
|
||||
break;
|
||||
case HOOK_MESSAGE_ROUTING_LOCAL:
|
||||
LOG_N("DISPATCHING: %s", buf);
|
||||
break;
|
||||
|
||||
/* peers */
|
||||
case HOOK_PEER_CONNECT_FAILED:
|
||||
LOG_N("CONNECT FAILED to %s: %s", peer_name, (char *)other);
|
||||
break;
|
||||
case HOOK_PEER_CONNECT_SUCCESS: {
|
||||
char protobuf[40];
|
||||
if (peer) {
|
||||
CHECK_FCT_DO(fd_peer_cnx_proto_info(peer, protobuf, sizeof(protobuf)), break );
|
||||
} else {
|
||||
protobuf[0] = '-';
|
||||
protobuf[1] = '\0';
|
||||
}
|
||||
LOG_N("CONNECTED TO '%s' (%s)", peer_name, protobuf);
|
||||
}
|
||||
break;
|
||||
/* Not handled */
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
CHECK_POSIX_DO( pthread_mutex_unlock(&mtx), );
|
||||
}
|
||||
|
||||
static void md_hook_cb_quiet(enum fd_hook_type type, struct msg * msg, struct peer_hdr * peer, void * other, struct fd_hook_permsgdata *pmd, void * regdata)
|
||||
{
|
||||
}
|
||||
|
||||
/* Entry point */
|
||||
static int md_main(char * conffile)
|
||||
{
|
||||
uint32_t mask_errors, mask_sndrcv, mask_routing, mask_peers;
|
||||
uint32_t mask_quiet, mask_compact, mask_full, mask_tree;
|
||||
TRACE_ENTRY("%p", conffile);
|
||||
|
||||
if (conffile != NULL) {
|
||||
char * endp;
|
||||
dump_level = (uint32_t)strtoul(conffile, &endp, 16);
|
||||
CHECK_PARAMS_DO( *endp == '\0', {
|
||||
LOG_E("Configuration parameter must be in the form \"0xNNNN\"");
|
||||
return EINVAL; });
|
||||
}
|
||||
|
||||
mask_errors = HOOK_MASK( HOOK_MESSAGE_FAILOVER, HOOK_MESSAGE_PARSING_ERROR, HOOK_MESSAGE_ROUTING_ERROR, HOOK_MESSAGE_DROPPED );
|
||||
mask_sndrcv = HOOK_MASK( HOOK_MESSAGE_RECEIVED, HOOK_MESSAGE_SENT );
|
||||
mask_routing= HOOK_MASK( HOOK_MESSAGE_LOCAL, HOOK_MESSAGE_ROUTING_FORWARD, HOOK_MESSAGE_ROUTING_LOCAL );
|
||||
mask_peers = HOOK_MASK( HOOK_PEER_CONNECT_FAILED, HOOK_PEER_CONNECT_SUCCESS );
|
||||
|
||||
mask_quiet = (dump_level & HK_ERRORS_QUIET) ? mask_errors : 0;
|
||||
mask_quiet |= (dump_level & HK_SNDRCV_QUIET) ? mask_sndrcv : 0;
|
||||
mask_quiet |= (dump_level & HK_ROUTING_QUIET) ? mask_routing : 0;
|
||||
mask_quiet |= (dump_level & HK_PEERS_QUIET) ? mask_peers : 0;
|
||||
|
||||
mask_compact = (dump_level & HK_ERRORS_COMPACT) ? mask_errors : 0;
|
||||
mask_compact |= (dump_level & HK_SNDRCV_COMPACT) ? mask_sndrcv : 0;
|
||||
mask_compact |= (dump_level & HK_ROUTING_COMPACT) ? mask_routing : 0;
|
||||
mask_compact |= (dump_level & HK_PEERS_COMPACT) ? mask_peers : 0;
|
||||
|
||||
mask_full = (dump_level & HK_ERRORS_FULL) ? mask_errors : 0;
|
||||
mask_full |= (dump_level & HK_SNDRCV_FULL) ? mask_sndrcv : 0;
|
||||
mask_full |= (dump_level & HK_ROUTING_FULL) ? mask_routing : 0;
|
||||
mask_full |= (dump_level & HK_PEERS_FULL) ? mask_peers : 0;
|
||||
|
||||
mask_tree = (dump_level & HK_ERRORS_TREE) ? mask_errors : 0;
|
||||
mask_tree |= (dump_level & HK_SNDRCV_TREE) ? mask_sndrcv : 0;
|
||||
mask_tree |= (dump_level & HK_ROUTING_TREE) ? mask_routing : 0;
|
||||
mask_tree |= (dump_level & HK_PEERS_TREE) ? mask_peers : 0;
|
||||
|
||||
if (mask_quiet) {
|
||||
CHECK_FCT( fd_hook_register( mask_quiet, md_hook_cb_quiet, NULL, NULL, &md_hdl[0]) );
|
||||
}
|
||||
if (mask_compact) {
|
||||
CHECK_FCT( fd_hook_register( mask_compact, md_hook_cb_compact, NULL, NULL, &md_hdl[1]) );
|
||||
}
|
||||
if (mask_full) {
|
||||
CHECK_FCT( fd_hook_register( mask_full, md_hook_cb_full, NULL, NULL, &md_hdl[2]) );
|
||||
}
|
||||
if (mask_tree) {
|
||||
CHECK_FCT( fd_hook_register( mask_tree, md_hook_cb_tree, NULL, NULL, &md_hdl[3]) );
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* Cleanup */
|
||||
void fd_ext_fini(void)
|
||||
{
|
||||
TRACE_ENTRY();
|
||||
if (md_hdl[0]) { CHECK_FCT_DO( fd_hook_unregister( md_hdl[0] ), ); }
|
||||
if (md_hdl[1]) { CHECK_FCT_DO( fd_hook_unregister( md_hdl[1] ), ); }
|
||||
if (md_hdl[2]) { CHECK_FCT_DO( fd_hook_unregister( md_hdl[2] ), ); }
|
||||
if (md_hdl[2]) { CHECK_FCT_DO( fd_hook_unregister( md_hdl[3] ), ); }
|
||||
return ;
|
||||
}
|
||||
|
||||
EXTENSION_ENTRY("dbg_msg_dumps", md_main);
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
@ -1,789 +0,0 @@
|
|||
| Attribute Name | Code | Section defined | Value Type | MUST | MAY | SHLD NOT | MUST NOT | Encr |
|
||||
| # 3GPP 29.061-c00 (12.0.0 2012.12.20) | | | | | | | | |
|
||||
| # 3GPP 29.061 is not very clear and self-inconsistent about M | | | | | | | | |
|
||||
| # for this reason, other sources are assumed more trustworthy | | | | | | | | |
|
||||
| # M inconsistently specified | | | | | | | | |
|
||||
| 3GPP-IMSI | 1 | 16.4.7 | UTF8String | M,V | P | | | |
|
||||
| # 29.061 says OctetString; dumps say UInt32; manually changed | | | | | | | | |
|
||||
| # 29.061 says MUST NOT M; dumps say MUST | | | | | | | | |
|
||||
| 3GPP-Charging-Id | 2 | 16.4.7 | Unsigned32 | M,V | P | | | |
|
||||
| # 29.061 says MUST NOT M; dumps say MUST | | | | | | | | |
|
||||
| 3GPP-PDP-Type | 3 | 16.4.7 | Enumerated | M,V | P | | | |
|
||||
| 3GPP-CG-Address | 4 | 16.4.7 | OctetString | V | P | | M | |
|
||||
| # 29.061 says MUST NOT M; old contrib/3gpp says MUST | | | | | | | | |
|
||||
| 3GPP-GPRS-Negotiated-QoS-Profile | 5 | 16.4.7 | UTF8String | M,V | P | | | |
|
||||
| # M inconsistently specified; old contrib/3gg says MUST NOT | | | | | | | | |
|
||||
| 3GPP-SGSN-Address | 6 | 16.4.7 | OctetString | V | P | | M | |
|
||||
| 3GPP-GGSN-Address | 7 | 16.4.7 | OctetString | V | P | | M | |
|
||||
| # 29.061 says MUST NOT M; dumps say MUST | | | | | | | | |
|
||||
| 3GPP-IMSI-MCC-MNC | 8 | 16.4.7 | UTF8String | M,V | P | | | |
|
||||
| # 29.061 says MUST NOT M; old contrib/3gpp says MUST | | | | | | | | |
|
||||
| 3GPP-GGSN-MCC-MNC | 9 | 16.4.7 | UTF8String | M,V | P | | | |
|
||||
| # 29.061 says MUST NOT M; old contrib/3gpp says MUST | | | | | | | | |
|
||||
| 3GPP-NSAPI | 10 | 16.4.7 | OctetString | M,V | P | | | |
|
||||
| # added manually, missing in AVP table | | | | | | | | |
|
||||
| 3GPP-Session-Stop-Indicator | 11 | 16.4.7 | OctetString | V | P | | M | |
|
||||
| # 29.061 says MUST NOT M; old contrib/3gpp says MUST | | | | | | | | |
|
||||
| 3GPP-Selection-Mode | 12 | 16.4.7 | UTF8String | M,V | P | | | |
|
||||
| # 29.061 says MUST NOT M; old contrib/3gpp says MUST | | | | | | | | |
|
||||
| 3GPP-Charging-Characteristics | 13 | 16.4.7 | UTF8String | M,V | P | | | |
|
||||
| # 29.061 says MUST NOT M; old contrib/3gpp says MUST | | | | | | | | |
|
||||
| 3GPP-CG-IPv6-Address | 14 | 16.4.7 | OctetString | M,V | P | | | |
|
||||
| # M inconsistently specified | | | | | | | | |
|
||||
| # 29.061 says MUST NOT M; old contrib/3gpp says MUST | | | | | | | | |
|
||||
| 3GPP-SGSN-IPv6-Address | 15 | 16.4.7 | OctetString | M,V | P | | | |
|
||||
| # 29.061 says MUST NOT M; old contrib/3gpp says MUST | | | | | | | | |
|
||||
| 3GPP-GGSN-IPv6-Address | 16 | 16.4.7 | OctetString | M,V | P | | | |
|
||||
| # 29.061 says MUST NOT M; old contrib/3gpp says MUST | | | | | | | | |
|
||||
| 3GPP-IPv6-DNS-Servers | 17 | 16.4.7 | OctetString | M,V | P | | | |
|
||||
| # 29.061 says MUST NOT M; old contrib/3gpp says MUST | | | | | | | | |
|
||||
| 3GPP-SGSN-MCC-MNC | 18 | 16.4.7 | UTF8String | M,V | P | | | |
|
||||
| # M inconsistently specified | | | | | | | | |
|
||||
| 3GPP-IMEISV | 20 | 16.4.7 | OctetString | M,V | P | | | |
|
||||
| # M inconsistently specified | | | | | | | | |
|
||||
| 3GPP-RAT-Type | 21 | 16.4.7 | OctetString | M,V | P | | | |
|
||||
| # M inconsistently specified | | | | | | | | |
|
||||
| 3GPP-User-Location-Info | 22 | 16.4.7 | OctetString | M,V | P | | | |
|
||||
| # M inconsistently specified | | | | | | | | |
|
||||
| 3GPP-MS-TimeZone | 23 | 16.4.7 | OctetString | M,V | P | | | |
|
||||
| 3GPP-CAMEL-Charging-Info | 24 | 16.4.7 | OctetString | V | P | | M | |
|
||||
| 3GPP-Packet-Filter | 25 | 16.4.7 | OctetString | V | P | | M | |
|
||||
| 3GPP-Negotiated-DSCP | 26 | 16.4.7 | OctetString | V | P | | M | |
|
||||
| 3GPP-Allocate-IP-Type | 27 | 16.4.7 | OctetString | V | P | | M | |
|
||||
| # added manually, missing in AVP table | | | | | | | | |
|
||||
| External-Identifier | 28 | 16.4.7 | OctetString | V | P | | M | |
|
||||
| TMGI | 900 | 17.07.02 | OctetString | M,V | P | | | |
|
||||
| Required-MBMS-Bearer-Capabilities | 901 | 17.07.03 | UTF8String | M,V | P | | | |
|
||||
| MBMS-StartStop-Indication | 902 | 17.07.05 | Enumerated | M,V | P | | | |
|
||||
| MBMS-Service-Area | 903 | 17.07.06 | OctetString | M,V | P | | | |
|
||||
| MBMS-Session-Duration | 904 | 17.07.07 | OctetString | M,V | P | | | |
|
||||
| Alternative-APN | 905 | 17.07.08 | UTF8String | M,V | P | | | |
|
||||
| MBMS-Service-Type | 906 | 17.07.09 | Enumerated | M,V | P | | | |
|
||||
| MBMS-2G-3G-Indicator | 907 | 17.07.10 | Enumerated | M,V | P | | | |
|
||||
| MBMS-Session-Identity | 908 | 17.07.11 | OctetString | M.V | P | | | |
|
||||
| RAI | 909 | 17.07.12 | UTF8String | M,V | P | | | |
|
||||
| Additional-MBMS-Trace-Info | 910 | 17.07.13 | OctetString | M,V | P | | | |
|
||||
| MBMS-Time-To-Data-Transfer | 911 | 17.07.14 | OctetString | M,V | P | | | |
|
||||
| MBMS-Session-Repetition-Number | 912 | 17.07.15 | OctetString | M.V | P | | | |
|
||||
| MBMS-Required-QoS | 913 | 17.07.16 | UTF8String | M.V | P | | | |
|
||||
| MBMS-Counting-Information | 914 | 17.07.17 | Enumerated | M.V | P | | | |
|
||||
| MBMS-User-Data-Mode-Indication | 915 | 17.07.18 | Enumerated | M.V | P | | | |
|
||||
| MBMS-GGSN-Address | 916 | 17.07.19 | OctetString | M.V | P | | | |
|
||||
| MBMS-GGSN-IPv6-Address | 917 | 17.07.20 | OctetString | M.V | P | | | |
|
||||
| MBMS-BMSC-SSM-IP-Address | 918 | 17.07.21 | OctetString | M.V | P | | | |
|
||||
| MBMS-BMSC-SSM-IPv6-Address | 919 | 17.07.22 | OctetString | M.V | P | | | |
|
||||
| MBMS-Flow-Identifier | 920 | 17.7.23 | OctetString | M,V | P | | | |
|
||||
| CN-IP-Multicast-Distribution | 921 | 17.7.24 | Enumerated | M,V | P | | | |
|
||||
| MBMS-HC-Indicator | 922 | 17.7.25 | Enumerated | M,V | P | | | |
|
||||
| # 3GPP 29.140-700 (7.0.0 2007.07.05) | | | | | | | | |
|
||||
| Served-User-Identity | 1100 | 6.3.1 | Grouped | M,V | | | | N |
|
||||
| # reuses: MSISDN | 701 | 6.3.2 | OctetString | M,V | | | | N |
|
||||
| VASP-ID | 1101 | 6.3.3 | UTF8String | M,V | | | | N |
|
||||
| VAS-ID | 1102 | 6.3.4 | UTF8String | M,V | | | | N |
|
||||
| Trigger-Event | 1103 | 6.3.5 | Enumerated | M,V | | | | N |
|
||||
| # reuses: 3GPP-IMSI | 1 | 6.3.6 | UTF8String | M,V | | | | N |
|
||||
| Sender-Address | 1104 | 6.3.7 | UTF8String | M,V | | | | N |
|
||||
| Initial-Recipient-Address | 1105 | 6.3.8 | Grouped | M,V | | | | N |
|
||||
| Result-Recipient-Address | 1106 | 6.3.9 | Grouped | M,V | | | | N |
|
||||
| # conflicts with one in (more common) 32.329 | | | | | | | | |
|
||||
| Sequence-Number-29.140 | 1107 | 6.3.10 | Unsigned32 | M,V | | | | N |
|
||||
| # conflicts with one in (more common) 32.299 | | | | | | | | |
|
||||
| Recipient-Address-29.140 | 1108 | 6.3.11 | UTF8String | M,V | | | | N |
|
||||
| Routeing-Address | 1109 | 6.3.12 | UTF8String | M,V | | | | N |
|
||||
| Originating-Interface | 1110 | 6.3.13 | Enumerated | M,V | | | | N |
|
||||
| Delivery-Report | 1111 | 6.3.14 | Enumerated | M,V | | | | N |
|
||||
| Read-Reply | 1112 | 6.3.15 | Enumerated | M,V | | | | N |
|
||||
| Sender-Visibility | 1113 | 6.3.16 | Enumerated | M,V | | | | N |
|
||||
| Service-Key | 1114 | 6.3.17 | UTF8String | M,V | | | | N |
|
||||
| Billing-Information | 1115 | 6.3.18 | UTF8String | M,V | | | | N |
|
||||
| # conflicts with one in (more common) 32.299 | | | | | | | | |
|
||||
| Status-29.140 | 1116 | 6.3.19 | Grouped | M,V | | | | N |
|
||||
| Status-Code | 1117 | 6.3.20 | UTF8String | M,V | | | | N |
|
||||
| Status-Text | 1118 | 6.3.21 | UTF8String | M,V | | | | N |
|
||||
| Routeing-Address-Resolution | 1119 | 6.3.22 | Enumerated | M,V | | | | N |
|
||||
| # 3GPP 29.173-c00 (12.0.0 2013.03.13) | | | | | | | | |
|
||||
| LMSI | 2400 | 6.4.2 | OctetString | M,V | | | | N |
|
||||
| Serving-Node | 2401 | 6.4.3 | Grouped | M,V | | | | N |
|
||||
| MME-Name | 2402 | 6.4.4 | DiameterIdentity | M,V | | | | N |
|
||||
| MSC-Number | 2403 | 6.4.5 | OctetString | M,V | | | | N |
|
||||
| LCS-Capabilities-Sets | 2404 | 6.4.6 | Unsigned32 | M,V | | | | N |
|
||||
| GMLC-Address | 2405 | 6.4.7 | Address | M,V | | | | N |
|
||||
| Additional-Serving-Node | 2406 | 6.4.8 | Grouped | M,V | | | | N |
|
||||
| PPR-Address | 2407 | 6.4.9 | Address | M,V | | | | N |
|
||||
| MME-Realm | 2408 | 6.4.12 | DiameterIdentity | V | | | M | N |
|
||||
| SGSN-Name | 2409 | 6.4.13 | DiameterIdentity | V | | | M | N |
|
||||
| SGSN-Realm | 2410 | 6.4.14 | DiameterIdentity | V | | | M | N |
|
||||
| # 3GPP 29.210-670 (6.7.0 2006-12-18) | | | | | | | | |
|
||||
| PDP-Session-Operation | 1015 | 5.2.21 | Enumerated | M,V | P | | | Y |
|
||||
| # 3GPP 29.212-c00 (12.0.0 2013.03.15) | | | | | | | | |
|
||||
| # Gx-specific | | | | | | | | |
|
||||
| ADC-Revalidation-Time | 2801 | 5.3.93 | Time | V | P | | M | Y |
|
||||
| ADC-Rule-Install | 1092 | 5.3.85 | Grouped | V | P | | M | Y |
|
||||
| ADC-Rule-Remove | 1093 | 5.3.86 | Grouped | V | P | | M | Y |
|
||||
| ADC-Rule-Definition | 1094 | 5.3.87 | Grouped | V | P | | M | Y |
|
||||
| ADC-Rule-Base-Name | 1095 | 5.3.88 | UTF8String | V | P | | M | Y |
|
||||
| ADC-Rule-Name | 1096 | 5.3.89 | OctetString | V | P | | M | Y |
|
||||
| ADC-Rule-Report | 1097 | 5.3.90 | Grouped | V | P | | M | Y |
|
||||
| Application-Detection-Information | 1098 | 5.3.91 | Grouped | V | P | | M | Y |
|
||||
| Access-Network-Charging-Identifier-Gx | 1022 | 5.3.22 | Grouped | M,V | P | | | Y |
|
||||
| Allocation-Retention-Priority | 1034 | 5.3.32 | Grouped | V | P | | M | Y |
|
||||
| AN-GW-Address | 1050 | 5.3.49 | Address | V | P | | M | Y |
|
||||
| APN-Aggregate-Max-Bitrate-DL | 1040 | 5.3.39 | Unsigned32 | V | P | | M | Y |
|
||||
| APN-Aggregate-Max-Bitrate-UL | 1041 | 5.3.40 | Unsigned32 | V | P | | M | Y |
|
||||
| Bearer-Control-Mode | 1023 | 5.3.23 | Enumerated | M,V | P | | | Y |
|
||||
| Bearer-Identifier | 1020 | 5.3.20 | OctetString | M,V | P | | | Y |
|
||||
| Bearer-Operation | 1021 | 5.3.21 | Enumerated | M,V | P | | | Y |
|
||||
| Bearer-Usage | 1000 | 5.3.1 | Enumerated | M,V | P | | | Y |
|
||||
| Charging-Rule-Install | 1001 | 5.3.2 | Grouped | M,V | P | | | Y |
|
||||
| Charging-Rule-Remove | 1002 | 5.3.3 | Grouped | M,V | P | | | Y |
|
||||
| Charging-Rule-Definition | 1003 | 5.3.4 | Grouped | M,V | P | | | Y |
|
||||
| Charging-Rule-Base-Name | 1004 | 5.3.5 | UTF8String | M,V | P | | | Y |
|
||||
| Charging-Rule-Name | 1005 | 5.3.6 | OctetString | M,V | P | | | Y |
|
||||
| Charging-Rule-Report | 1018 | 5.3.18 | Grouped | M,V | P | | | Y |
|
||||
| Charging-Correlation-Indicator | 1073 | 5.3.67 | Enumerated | V | P | | M | Y |
|
||||
| CoA-IP-Address | 1035 | 5.3.33 | Address | V | P | | M | Y |
|
||||
| CoA-Information | 1039 | 5.3.37 | Grouped | V | P | | M | Y |
|
||||
| CSG-Information-Reporting | 1071 | 5.3.64 | Enumerated | V | P | | M | Y |
|
||||
| Default-EPS-Bearer-QoS | 1049 | 5.3.48 | Grouped | V | P | | M | Y |
|
||||
| Event-Report-Indication | 1033 | 5.3.30 | Grouped | V | P | | M | Y |
|
||||
| Event-Trigger | 1006 | 5.3.7 | Enumerated | M,V | P | | | Y |
|
||||
| Flow-Direction | 1080 | 5.3.65 | Enumerated | V | P | | M | Y |
|
||||
| Flow-Information | 1058 | 5.3.53 | Grouped | V | P | | M | Y |
|
||||
| Flow-Label | 1057 | 5.3.52 | OctetString | V | P | | M | Y |
|
||||
| IP-CAN-Type | 1027 | 5.3.27 | Enumerated | M,V | P | | | Y |
|
||||
| Guaranteed-Bitrate-DL | 1025 | 5.3.25 | Unsigned32 | M,V | P | | | Y |
|
||||
| Guaranteed-Bitrate-UL | 1026 | 5.3.26 | Unsigned32 | M,V | P | | | Y |
|
||||
| HeNB-Local-IP-Address | 2804 | 5.3.95 | Address | V | P | | M | Y |
|
||||
| Metering-Method | 1007 | 5.3.8 | Enumerated | M,V | P | | | Y |
|
||||
| Monitoring-Key | 1066 | 5.3.59 | OctetString | V | P | | M | Y |
|
||||
| Mute-Notification | 2809 | 5.3.98 | Enumerated | V | P | | M | Y |
|
||||
| Monitoring-Time | 2810 | 5.3.99 | Time | V | P | | M | Y |
|
||||
| Network-Request-Support | 1024 | 5.3.24 | Enumerated | M,V | P | | | Y |
|
||||
| Offline | 1008 | 5.3.9 | Enumerated | M,V | P | | | Y |
|
||||
| Online | 1009 | 5.3.10 | Enumerated | M,V | P | | | Y |
|
||||
| Packet-Filter-Content | 1059 | 5.3.54 | IPFilterRule | V | P | | M | Y |
|
||||
| Packet-Filter-Identifier | 1060 | 5.3.55 | OctetString | V | P | | M | Y |
|
||||
| Packet-Filter-Information | 1061 | 5.3.56 | Grouped | V | P | | M | Y |
|
||||
| Packet-Filter-Operation | 1062 | 5.3.57 | Enumerated | V | P | | M | Y |
|
||||
| Packet-Filter-Usage | 1072 | 5.3.66 | Enumerated | V | P | | M | Y |
|
||||
| PDN-Connection-ID | 1065 | 5.3.58 | OctetString | V | P | | | Y |
|
||||
| Precedence | 1010 | 5.3.11 | Unsigned32 | M,V | P | | | Y |
|
||||
| Pre-emption-Capability | 1047 | 5.3.46 | Enumerated | V | P | | M | Y |
|
||||
| Pre-emption-Vulnerability | 1048 | 5.3.47 | Enumerated | V | P | | M | Y |
|
||||
| Priority-Level | 1046 | 5.3.45 | Unsigned32 | V | P | | M | Y |
|
||||
| Redirect-Information | 1085 | 5.3.82 | Grouped | V | P | | M | Y |
|
||||
| Redirect-Support | 1086 | 5.3.83 | Enumerated | V | P | | M | Y |
|
||||
| Reporting-Level | 1011 | 5.3.12 | Enumerated | M,V | P | | | Y |
|
||||
| Routing-Filter | 1078 | 5.3.72 | Grouped | V | P | | M | Y |
|
||||
| Routing-IP-Address | 1079 | 5.3.73 | Address | V | P | | M | Y |
|
||||
| Routing-Rule-Definition | 1076 | 5.3.70 | Grouped | V | P | | M | Y |
|
||||
| Routing-Rule-Identifier | 1077 | 5.3.71 | OctetString | V | P | | M | Y |
|
||||
| Routing-Rule-Install | 1081 | 5.3.68 | Grouped | V | P | | M | Y |
|
||||
| Routing-Rule-Remove | 1075 | 5.3.69 | Grouped | V | P | | M | Y |
|
||||
| PCC-Rule-Status | 1019 | 5.3.19 | Enumerated | M,V | P | | | Y |
|
||||
| Session-Release-Cause | 1045 | 5.3.44 | Enumerated | M,V | P | | | Y |
|
||||
| TDF-Information | 1087 | 5.3.78 | Grouped | V | P | | M | Y |
|
||||
| TDF-Application-Identifier | 1088 | 5.3.77 | OctetString | V | P | | M | Y |
|
||||
| TDF-Application-Instance-Identifier | 2802 | 5.3.92 | OctetString | V | P | | M | Y |
|
||||
| TDF-Destination-Host | 1089 | 5.3.80 | DiameterIdentity | V | P | | M | Y |
|
||||
| TDF-Destination-Realm | 1090 | 5.3.79 | DiameterIdentity | V | P | | M | Y |
|
||||
| TDF-IP-Address | 1091 | 5.3.81 | Address | V | P | | M | Y |
|
||||
| QoS-Class-Identifier | 1028 | 5.3.17 | Enumerated | M,V | P | | | Y |
|
||||
| QoS-Information | 1016 | 5.3.16 | Grouped | M.V | P | | | Y |
|
||||
| QoS-Negotiation | 1029 | 5.3.28 | Enumerated | M,V | P | | | Y |
|
||||
| QoS-Upgrade | 1030 | 5.3.29 | Enumerated | M.V | P | | | Y |
|
||||
| PS-to-CS-Session-Continuity | 1099 | 5.3.84 | Enumerated | V | P | | | Y |
|
||||
| Resource-Allocation-Notification | 1063 | 5.3.50 | Enumerated | V | P | | M | Y |
|
||||
| Rule-Failure-Code | 1031 | 5.3.38 | Enumerated | M.V | P | | | Y |
|
||||
| Security-Parameter-Index | 1056 | 5.3.51 | OctetString | V | P | | M | Y |
|
||||
| TFT-Filter | 1012 | 5.3.13 | IPFilterRule | M,V | P | | | Y |
|
||||
| TFT-Packet-Filter-Information | 1013 | 5.3.14 | Grouped | M,V | P | | | Y |
|
||||
| ToS-Traffic-Class | 1014 | 5.3.15 | OctetString | M,V | P | | | Y |
|
||||
| Tunnel-Header-Filter | 1036 | 5.3.34 | IPFilterRule | V | P | | M | Y |
|
||||
| Tunnel-Header-Length | 1037 | 5.3.35 | Unsigned32 | V | P | | M | Y |
|
||||
| Tunnel-Information | 1038 | 5.3.36 | Grouped | V | P | | M | Y |
|
||||
| RAT-Type | 1032 | 5.3.31 | Enumerated | V | P | | M | Y |
|
||||
| Revalidation-Time | 1042 | 5.3.41 | Time | M,V | P | | | Y |
|
||||
| Rule-Activation-Time | 1043 | 5.3.42 | Time | M,V | P | | | Y |
|
||||
| UDP-Source-Port | 2806 | 5.3.97 | Unsigned32 | V | P | | M | Y |
|
||||
| UE-Local-IP-Address | 2805 | 5.3.96 | Address | V | P | | M | Y |
|
||||
| Usage-Monitoring-Information | 1067 | 5.3.60 | Grouped | V | P | | M | Y |
|
||||
| Rule-Deactivation-Time | 1044 | 5.3.43 | Time | M,V | P | | | Y |
|
||||
| Usage-Monitoring-Level | 1068 | 5.3.61 | Enumerated | V | P | | M | Y |
|
||||
| Usage-Monitoring-Report | 1069 | 5.3.62 | Enumerated | V | P | | M | Y |
|
||||
| Usage-Monitoring-Support | 1070 | 5.3.63 | Enumerated | V | P | | M | Y |
|
||||
| # Gxx-specific | | | | | | | | |
|
||||
| QoS-Rule-Install | 1051 | 5a.3.1 | Grouped | M,V | P | | | Y |
|
||||
| QoS-Rule-Remove | 1052 | 5a.3.2 | Grouped | M,V | P | | | Y |
|
||||
| QoS-Rule-Definition | 1053 | 5a.3.3 | Grouped | M,V | P | | | Y |
|
||||
| QoS-Rule-Name | 1054 | 5a.3.4 | OctetString | M,V | P | | | Y |
|
||||
| QoS-Rule-Base-Name | 1074 | 5a.3.7 | UTF8String | V | P | | M | Y |
|
||||
| QoS-Rule-Report | 1055 | 5a.3.5 | Grouped | M,V | P | | | Y |
|
||||
| Session-Linking-Indicator | 1064 | 5a.3.6 | Enumerated | M,V | P | | | Y |
|
||||
| # S15-specific | | | | | | | | |
|
||||
| CS-Service-Qos-Request-Identifier | 2807 | E.6.3.2 | OctetString | M,V | P | | | Y |
|
||||
| CS-Service-QoS-Request-Operation | 2808 | E.6.3.3 | Enumerated | M.V | P | | | Y |
|
||||
| # 3GPP 29.214-b80 (11.8.0 2013.03.15) | | | | | | | | |
|
||||
| Abort-Cause | 500 | 5.3.1 | Enumerated | M,V | P | | | Y |
|
||||
| Access-Network-Charging-Address | 501 | 5.3.2 | Address | M,V | P | | | Y |
|
||||
| Access-Network-Charging-Identifier | 502 | 5.3.3 | Grouped | M,V | P | | | Y |
|
||||
| Access-Network-Charging-Identifier-Value | 503 | 5.3.4 | OctetString | M,V | P | | | Y |
|
||||
| Acceptable-Service-Info | 526 | 5.3.24 | Grouped | M,V | P | | | Y |
|
||||
| AF-Application-Identifier | 504 | 5.3.5 | OctetString | M,V | P | | | Y |
|
||||
| AF-Charging-Identifier | 505 | 5.3.6 | OctetString | M,V | P | | | Y |
|
||||
| Application-Service-Provider-Identity | 532 | 5.3.29 | UTF8String | V | P | | M | Y |
|
||||
| Codec-Data | 524 | 5.3.7 | OctetString | M,V | P | | | Y |
|
||||
| Flow-Description | 507 | 5.3.8 | IPFilterRule | M,V | P | | | Y |
|
||||
| Flow-Number | 509 | 5.3.9 | Unsigned32 | M,V | P | | | Y |
|
||||
| Flows | 510 | 5.3.10 | Grouped | M,V | P | | | Y |
|
||||
| Flow-Status | 511 | 5.3.11 | Enumerated | M,V | P | | | Y |
|
||||
| Flow-Usage | 512 | 5.3.12 | Enumerated | M,V | P | | | Y |
|
||||
| Service-URN | 525 | 5.3.23 | OctetString | M,V | P | | | Y |
|
||||
| Specific-Action | 513 | 5.3.13 | Enumerated | M,V | P | | | Y |
|
||||
| Max-Requested-Bandwidth-DL | 515 | 5.3.14 | Unsigned32 | M,V | P | | | Y |
|
||||
| Max-Requested-Bandwidth-UL | 516 | 5.3.15 | Unsigned32 | M,V | P | | | Y |
|
||||
| Media-Component-Description | 517 | 5.3.16 | Grouped | M,V | P | | | Y |
|
||||
| Media-Component-Number | 518 | 5.3.17 | Unsigned32 | M,V | P | | | Y |
|
||||
| Media-Sub-Component | 519 | 5.3.18 | Grouped | M,V | P | | | Y |
|
||||
| Media-Type | 520 | 5.3.19 | Enumerated | M,V | P | | | Y |
|
||||
| MPS-Identifier | 528 | 5.3.30 | OctetString | V | P | | M | Y |
|
||||
| Min-Requested-Bandwidth-DL | 534 | 5.3.32 | Unsigned32 | V | P | | M | Y |
|
||||
| Min-Requested-Bandwidth-UL | 535 | 5.3.33 | Unsigned32 | V | P | | M | Y |
|
||||
| RR-Bandwidth | 521 | 5.3.20 | Unsigned32 | M,V | P | | | Y |
|
||||
| RS-Bandwidth | 522 | 5.3.21 | Unsigned32 | M,V | P | | | Y |
|
||||
| Service-Info-Status | 527 | 5.3.25 | Enumerated | M,V | P | | | Y |
|
||||
| SIP-Forking-Indication | 523 | 5.3.22 | Enumerated | M,V | P | | | Y |
|
||||
| Sponsor-Identity | 531 | 5.3.28 | UTF8String | V | P | | M | Y |
|
||||
| Sponsored-Connectivity-Data | 530 | 5.3.27 | Grouped | V | P | | M | Y |
|
||||
| AF-Signalling-Protocol | 529 | 5.3.26 | Enumerated | V | P | | M | Y |
|
||||
| Required-Access-Info | 536 | 5.3.34 | Enumerated | V | P | | M | Y |
|
||||
| Rx-Request-Type | 533 | 5.3.31 | Enumerated | V | P | | M | Y |
|
||||
| IP-Domain-Id | 537 | 5.3.35 | OctetString | V | P | | M | Y |
|
||||
| # 3GPP 29.229-b20 (11.2.0 2012.12.21) | | | | | | | | |
|
||||
| Associated-Identities | 632 | 6.3.33 | Grouped | V | | | M | N |
|
||||
| Associated-Registered-Identities | 647 | 6.3.50 | Grouped | V | | | M | N |
|
||||
| Call-ID-SIP-Header | 643 | 6.3.49.1 | OctetString | V | | | M | N |
|
||||
| Charging-Information | 618 | 6.3.19 | Grouped | M,V | | | | N |
|
||||
| Confidentiality-Key | 625 | 6.3.27 | OctetString | M,V | | | | N |
|
||||
| Contact | 641 | 6.3.48 | OctetString | V | | | M | N |
|
||||
| Deregistration-Reason | 615 | 6.3.16 | Grouped | M,V | | | | N |
|
||||
| Digest-Algorithm | 111 | 6.3.39 | UTF8String | M | | | V | N |
|
||||
| Digest-HA1 | 121 | 6.3.41 | UTF8String | M | | | V | N |
|
||||
| Digest-QoP | 110 | 6.3.40 | UTF8String | M | | | V | N |
|
||||
| Digest-Realm | 104 | 6.3.37 | UTF8String | M | | | V | N |
|
||||
| Feature-List | 630 | 6.3.31 | Unsigned32 | V | | | M | N |
|
||||
| Feature-List-ID | 629 | 6.3.30 | Unsigned32 | V | | | M | N |
|
||||
| From-SIP-Header | 644 | 6.3.49.2 | OctetString | V | | | M | N |
|
||||
| Identity-with-Emergency-Registration | 651 | 6.3.57 | Grouped | V | | | M | N |
|
||||
| Integrity-Key | 626 | 6.3.28 | OctetString | M,V | | | | N |
|
||||
| LIA-Flags | 653 | 6.3.59 | Unsigned32 | V | | | M | N |
|
||||
| Loose-Route-Indication | 638 | 6.3.45 | Enumerated | V | | | M | N |
|
||||
| Mandatory-Capability | 604 | 6.3.5 | Unsigned32 | M,V | | | | N |
|
||||
| Multiple-Registration-Indication | 648 | 6.3.51 | Enumerated | V | | | M | N |
|
||||
| Optional-Capability | 605 | 6.3.6 | Unsigned32 | M,V | | | | N |
|
||||
| Originating-Request | 633 | 6.3.34 | Enumerated | M,V | | | | N |
|
||||
| Path | 640 | 6.3.47 | OctetString | V | | | M | N |
|
||||
| Primary-Charging-Collection-Function-Name | 621 | 6.3.22 | DiameterURI | M,V | | | | N |
|
||||
| Primary-Event-Charging-Function-Name | 619 | 6.3.20 | DiameterURI | M,V | | | | N |
|
||||
| Priviledged-Sender-Indication | 652 | 6.3.58 | Enumerated | V | | | M | N |
|
||||
| Public-Identity | 601 | 6.3.2 | UTF8String | M,V | | | | N |
|
||||
| Reason-Code | 616 | 6.3.17 | Enumerated | M,V | | | | N |
|
||||
| Reason-Info | 617 | 6.3.18 | UTF8String | M,V | | | | N |
|
||||
| Record-Route | 646 | 6.3.49.4 | OctetString | V | | | M | N |
|
||||
| Restoration-Info | 649 | 6.3.52 | Grouped | V | | | M | N |
|
||||
| SCSCF-Restoration-Info | 639 | 6.3.46 | Grouped | V | | | M | N |
|
||||
| SIP-Auth-Data-Item | 612 | 6.3.13 | Grouped | M,V | | | | N |
|
||||
| SIP-Authenticate | 609 | 6.3.10 | OctetString | M,V | | | | N |
|
||||
| SIP-Authentication-Context | 611 | 6.3.12 | OctetString | M,V | | | | N |
|
||||
| SIP-Authentication-Scheme | 608 | 6.3.9 | UTF8String | M,V | | | | N |
|
||||
| SIP-Authorization | 610 | 6.3.11 | OctetString | M,V | | | | N |
|
||||
| SIP-Digest-Authenticate | 635 | 6.3.36 | Grouped | V | | | M | N |
|
||||
| SIP-Item-Number | 613 | 6.3.14 | Unsigned32 | M,V | | | | N |
|
||||
| SIP-Number-Auth-Items | 607 | 6.3.8 | Unsigned32 | M,V | | | | N |
|
||||
| Secondary-Charging-Collection-Function-Name | 622 | 6.3.23 | DiameterURI | M,V | | | | N |
|
||||
| Secondary-Event-Charging-Function-Name | 620 | 6.3.21 | DiameterURI | M,V | | | | N |
|
||||
| Server-Assignment-Type | 614 | 6.3.15 | Enumerated | M,V | | | | N |
|
||||
| Server-Capabilities | 603 | 6.3.4 | Grouped | M,V | | | | N |
|
||||
| Server-Name | 602 | 6.3.3 | UTF8String | M,V | | | | N |
|
||||
| Session-Priority | 650 | 6.3.56 | Enumerated | V | | | M | N |
|
||||
| Subscription-Info | 642 | 6.3.49 | Grouped | V | | | M | N |
|
||||
| Supported-Applications | 631 | 6.3.32 | Grouped | V | | | M | N |
|
||||
| Supported-Features | 628 | 6.3.29 | Grouped | V | M | | | N |
|
||||
| To-SIP-Header | 645 | 6.3.49.3 | OctetString | V | | | M | N |
|
||||
| UAR-Flags | 637 | 6.3.44 | Unsigned32 | V | | | M | N |
|
||||
| User-Authorization-Type | 623 | 6.3.24 | Enumerated | M,V | | | | N |
|
||||
| User-Data | 606 | 6.3.7 | OctetString | M,V | | | | N |
|
||||
| User-Data-Already-Available | 624 | 6.3.26 | Enumerated | M,V | | | | N |
|
||||
| Visited-Network-Identifier | 600 | 6.3.1 | OctetString | M,V | | | | N |
|
||||
| Wildcarded-Public-Identity | 634 | 6.3.35 | UTF8String | V | | | M | N |
|
||||
| # 3GPP 32.299-b60 (11.6.0 2012.12.21) | | | | | | | | |
|
||||
| AF-Correlation-Information | 1276 | | Grouped | M,V | P | | | N |
|
||||
| Access-Network-Information | 1263 | | OctetString | M,V | P | | | N |
|
||||
| Access-Transfer-Information | 2709 | | Grouped | M,V | P | | | N |
|
||||
| Access-Transfer-Type | 2710 | | Enumerated | M,V | P | | | N |
|
||||
| Account-Expiration | 2309 | | Time | M,V | P | | | N |
|
||||
| Accumulated-Cost | 2052 | | Grouped | M,V | P | | | N |
|
||||
| Adaptations | 1217 | | Enumerated | M,V | P | | | N |
|
||||
| Additional-Content-Information | 1207 | | Grouped | M,V | P | | | N |
|
||||
| Additional-Type-Information | 1205 | | UTF8String | M,V | P | | | N |
|
||||
| Address-Data | 897 | | UTF8String | M,V | P | | | N |
|
||||
| Address-Domain | 898 | | Grouped | M,V | P | | | N |
|
||||
| Address-Type | 899 | | Enumerated | M,V | P | | | N |
|
||||
| Addressee-Type | 1208 | | Enumerated | M,V | P | | | N |
|
||||
| Alternate-Charged-Party-Address | 1280 | | UTF8String | V.M | P | | | N |
|
||||
| AoC-Cost-Information | 2053 | | Grouped | M,V | P | | | N |
|
||||
| AoC-Format | 2310 | | Enumerated | M,V | P | | | N |
|
||||
| AoC-Information | 2054 | | Grouped | V.M | P | | | N |
|
||||
| AoC-Request-Type | 2055 | | Enumerated | V.M | P | | | N |
|
||||
| AoC-Service | 2311 | | Grouped | M,V | P | | | N |
|
||||
| AoC-Service-Obligatory-Type | 2312 | | Enumerated | M,V | P | | | N |
|
||||
| AoC-Service-Type | 2313 | | Enumerated | M,V | P | | | N |
|
||||
| AoC-Subscription-Information | 2314 | | Grouped | M,V | P | | | N |
|
||||
| Applic-ID | 1218 | | UTF8String | M,V | P | | | N |
|
||||
| Application-Server | 836 | | UTF8String | M,V | P | | | N |
|
||||
| Application-Server-Information | 850 | | Grouped | M,V | P | | | N |
|
||||
| Application-Provided-Called-Party-Address | 837 | | UTF8String | M,V | P | | | N |
|
||||
| Associated-Party-Address | 2035 | | UTF8String | M,V | P | | | N |
|
||||
| Associated-URI | 856 | | UTF8String | M,V | P | | | N |
|
||||
| Aux-Applic-Info | 1219 | | UTF8String | M,V | P | | | N |
|
||||
| Base-Time-Interval | 1265 | | Unsigned32 | M,V | P | | | N |
|
||||
| Bearer-Service | 854 | | OctetString | M,V | P | | | N |
|
||||
| CG-Address | 846 | | Address | M,V | P | | | Y |
|
||||
| CSG-Access-Mode | 2317 | | Enumerated | M,V | P | | | N |
|
||||
| CSG-Membership-Indication | 2318 | | Enumerated | M,V | P | | | N |
|
||||
| CUG-Information | 2304 | | OctetString | M,V | P | | | N |
|
||||
| Called-Asserted-Identity | 1250 | | UTF8String | M,V | P | | | N |
|
||||
| Called-Party-Address | 832 | | UTF8String | M,V | P | | | N |
|
||||
| Calling-Party-Address | 831 | | UTF8String | M,V | P | | | N |
|
||||
| Carrier-Select-Routing-Information | 2023 | | UTF8String | M,V | P | | | N |
|
||||
| Cause-Code | 861 | | Integer32 | M,V | P | | | N |
|
||||
| Change-Condition | 2037 | | Integer32 | M,V | P | | | N |
|
||||
| Change-Time | 2038 | | Time | M,V | P | | | N |
|
||||
| Charge-Reason-Code | 2118 | | Enumerated | M,V | P | | | N |
|
||||
| Charged-Party | 857 | | UTF8String | M,V | P | | | N |
|
||||
| Charging-Characteristics-Selection-Mode | 2066 | | Enumerated | M,V | P | | | N |
|
||||
| Class-Identifier | 1214 | | Enumerated | M,V | P | | | N |
|
||||
| Client-Address | 2018 | | Address | M,V | P | | | N |
|
||||
| Content-Class | 1220 | | Enumerated | M,V | P | | | N |
|
||||
| Content-Disposition | 828 | | UTF8String | M,V | P | | | N |
|
||||
| Content-Length | 827 | | Unsigned32 | M,V | P | | | N |
|
||||
| Content-Size | 1206 | | Unsigned32 | M,V | P | | | N |
|
||||
| Content-Type | 826 | | UTF8String | M,V | P | | | N |
|
||||
| Current-Tariff | 2056 | | Grouped | M,V | P | | | N |
|
||||
| DRM-Content | 1221 | | Enumerated | M,V | P | | | N |
|
||||
| Data-Coding-Scheme | 2001 | | Integer32 | M,V | P | | | N |
|
||||
| Deferred-Location-Event-Type | 1230 | | UTF8String | M,V | P | | | N |
|
||||
| Delivery-Report-Requested | 1216 | | Enumerated | M,V | P | | | N |
|
||||
| Destination-Interface | 2002 | | Grouped | M,V | P | | | N |
|
||||
| Diagnostics | 2039 | | Integer32 | M,V | P | | | N |
|
||||
| Domain-Name | 1200 | | UTF8String | M,V | P | | | N |
|
||||
| Dynamic-Address-Flag | 2051 | | Enumerated | M,V | P | | | N |
|
||||
| Dynamic-Address-Flag-Extension | 2068 | | Enumerated | M,V | P | | | N |
|
||||
| Early-Media-Description | 1272 | | Grouped | M,V | P | | | N |
|
||||
| Envelope | 1266 | | Grouped | M,V | P | | | N |
|
||||
| Envelope-End-Time | 1267 | | Time | M,V | P | | | N |
|
||||
| Envelope-Reporting | 1268 | | Enumerated | M,V | P | | | N |
|
||||
| Envelope-Start-Time | 1269 | | Time | M,V | P | | | N |
|
||||
| Event | 825 | | UTF8String | M,V | P | | | N |
|
||||
| Event-Charging-TimeStamp | 1258 | | Time | M,V | P | | | N |
|
||||
| Event-Type | 823 | | Grouped | M,V | P | | | N |
|
||||
| Expires | 888 | | Unsigned32 | M,V | P | | | N |
|
||||
| File-Repair-Supported | 1224 | | Enumerated | M,V | P | | | Y |
|
||||
| From-Address | 2708 | | UTF8String | M,V | P | | | N |
|
||||
| GGSN-Address | 847 | | Address | M,V | P | | | N |
|
||||
| IMS-Application-Reference-Identifier | 2601 | | UTF8String | M,V | P | | | N |
|
||||
| IMS-Charging-Identifier | 841 | | UTF8String | M,V | P | | | N |
|
||||
| IMS-Communication-Service-Identifier | 1281 | | UTF8String | M,V | P | | | N |
|
||||
| IMS-Emergency-Indicator | 2322 | | Enumerated | M,V | P | | | N |
|
||||
| IMS-Information | 876 | | Grouped | M,V | P | | | N |
|
||||
| IMSI-Unauthenticated-Flag | 2308 | | Enumerated | M,V | P | | | N |
|
||||
| IP-Realm-Default-Indication | 2603 | | Enumerated | M,V | P | | | N |
|
||||
| Incoming-Trunk-Group-Id | 852 | | UTF8String | M,V | P | | | N |
|
||||
| Incremental-Cost | 2062 | | Grouped | M,V | P | | | N |
|
||||
| Initial-IMS-Charging-Identifier | 2321 | | UTF8String | M,V | P | | | N |
|
||||
| Inter-Operator-Identifier | 838 | | Grouped | M,V | P | | | N |
|
||||
| Interface-Id | 2003 | | UTF8String | M,V | P | | | N |
|
||||
| Interface-Port | 2004 | | UTF8String | M,V | P | | | N |
|
||||
| Interface-Text | 2005 | | UTF8String | M,V | P | | | N |
|
||||
| Interface-Type | 2006 | | Enumerated | M,V | P | | | N |
|
||||
| LCS-APN | 1231 | | UTF8String | M,V | P | | | N |
|
||||
| LCS-Client-Dialed-By-MS | 1233 | | UTF8String | M,V | P | | | N |
|
||||
| LCS-Client-External-ID | 1234 | | UTF8String | M,V | P | | | N |
|
||||
| LCS-Client-Id | 1232 | | Grouped | M,V | P | | | N |
|
||||
| LCS-Client-Name | 1235 | | Grouped | M,V | P | | | N |
|
||||
| LCS-Client-Type | 1241 | | Enumerated | M,V | P | | | N |
|
||||
| LCS-Data-Coding-Scheme | 1236 | | UTF8String | M,V | P | | | N |
|
||||
| LCS-Format-Indicator | 1237 | | Enumerated | M,V | P | | | N |
|
||||
| LCS-Information | 878 | | Grouped | M,V | P | | | N |
|
||||
| LCS-Name-String | 1238 | | UTF8String | M,V | P | | | N |
|
||||
| LCS-Requestor-Id | 1239 | | Grouped | M,V | P | | | N |
|
||||
| LCS-Requestor-Id-String | 1240 | | UTF8String | M,V | P | | | N |
|
||||
| Local-GW-Inserted-Indication | 2604 | | Enumerated | M,V | P | | | N |
|
||||
| Local-Sequence-Number | 2063 | | Unsigned32 | M,V | P | | | N |
|
||||
| Location-Estimate | 1242 | | OctetString | M,V | P | | | N |
|
||||
| Location-Estimate-Type | 1243 | | Enumerated | M,V | P | | | N |
|
||||
| Location-Type | 1244 | | Grouped | M,V | P | | | N |
|
||||
| Low-Balance-Indication | 2020 | | Enumerated | M,V | P | | | N |
|
||||
| Low-Priority-Indicator | 2602 | | Enumerated | M,V | P | | | N |
|
||||
| MBMS GW-Address | 2307 | | Address | M,V | P | | | N |
|
||||
| MBMS-Information | 880 | | Grouped | M,V | P | | | N |
|
||||
| MBMS-User-Service-Type | 1225 | | Enumerated | M,V | P | | | Y |
|
||||
| MM-Content-Type | 1203 | | Grouped | M,V | P | | | N |
|
||||
| MMBox-Storage-Requested | 1248 | | Enumerated | M,V | P | | | N |
|
||||
| MMS-Information | 877 | | Grouped | M,V | P | | | N |
|
||||
| MMTel-Information | 2030 | | Grouped | M,V | P | | | N |
|
||||
| MMTel-SService-Type | 2031 | | Unsigned32 | M,V | P | | | N |
|
||||
| Media-Initiator-Flag | 882 | | Enumerated | M,V | P | | | N |
|
||||
| Media-Initiator-Party | 1288 | | UTF8String | M,V | P | | | N |
|
||||
| Message-Body | 889 | | Grouped | M,V | P | | | N |
|
||||
| Message-Class | 1213 | | Grouped | M,V | P | | | N |
|
||||
| Message-ID | 1210 | | UTF8String | M,V | P | | | N |
|
||||
| Message-Size | 1212 | | Unsigned32 | M,V | P | | | N |
|
||||
| Message-Type | 1211 | | Enumerated | M,V | P | | | N |
|
||||
| NNI-Information | 2703 | | Grouped | M,V | P | | | N |
|
||||
| NNI-Type | 2704 | | Enumerated | M,V | P | | | N |
|
||||
| Neighbour-Node-Address | 2705 | | Address | M,V | P | | | N |
|
||||
| Next-Tariff | 2057 | | Grouped | V/M | P | | | N |
|
||||
| Node-Functionality | 862 | | Enumerated | M,V | P | | | N |
|
||||
| Node-Id | 2064 | | UTF8String | M,V | P | | | N |
|
||||
| Number-Of-Diversions | 2034 | | Unsigned32 | M,V | P | | | N |
|
||||
| Number-Of-Messages-Sent | 2019 | | Unsigned32 | M,V | P | | | N |
|
||||
| Number-Of-Participants | 885 | | Unsigned32 | M,V | P | | | N |
|
||||
| Number-Of-Received-Talk-Bursts | 1282 | | Unsigned32 | M,V | P | | | N |
|
||||
| Number-Of-Talk-Bursts | 1283 | | Unsigned32 | M,V | P | | | N |
|
||||
| Number-Portability-Routing-Information | 2024 | | UTF8String | M,V | P | | | N |
|
||||
| Offline-Charging | 1278 | | Grouped | M,V | P | | | N |
|
||||
| Online-Charging-Flag | 2303 | | Enumerated | M,V | P | | | N |
|
||||
| Originating-IOI | 839 | | UTF8String | M,V | P | | | N |
|
||||
| Originator | 864 | | Enumerated | M,V | P | | | N |
|
||||
| Originator-Address | 886 | | Grouped | M,V | P | | | N |
|
||||
| Originator-Interface | 2009 | | Grouped | M,V | P | | | N |
|
||||
| Originator-Received-Address | 2027 | | Grouped | M,V | P | | | N |
|
||||
| Originator-SCCP-Address | 2008 | | Address | M,V | P | | | N |
|
||||
| Outgoing-Session-Id | 2320 | | UTF8String | M,V | P | | | N |
|
||||
| Outgoing-Trunk-Group-Id | 853 | | UTF8String | M,V | P | | | N |
|
||||
| PDG-Address | 895 | | Address | M,V | P | | | N |
|
||||
| PDG-Charging-Id | 896 | | Unsigned32 | M,V | P | | | N |
|
||||
| PDN-Connection-Charging-ID | 2050 | | Unsigned32 | M,V | P | | | N |
|
||||
| PDP-Address | 1227 | | Address | M,V | P | | | Y |
|
||||
| PDP-Address-Prefix-Length | 2606 | | Unsigned32 | M,V | P | | | Y |
|
||||
| PDP-Context-Type | 1247 | | Enumerated | M,V | P | | | N |
|
||||
| PS-Append-Free-Format-Data | 867 | | Enumerated | M,V | P | | | N |
|
||||
| PS-Free-Format-Data | 866 | | OctetString | M,V | P | | | N |
|
||||
| PS-Furnish-Charging-Information | 865 | | Grouped | M,V | P | | | N |
|
||||
| PS-Information | 874 | | Grouped | M,V | P | | | N |
|
||||
| Participant-Access-Priority | 1259 | | Enumerated | M,V | P | | | N |
|
||||
| Participant-Action-Type | 2049 | | Enumerated | M,V | P | | | N |
|
||||
| Participant-Group | 1260 | | Grouped | M,V | P | | | N |
|
||||
| Participants-Involved | 887 | | UTF8String | M,V | P | | | N |
|
||||
| PoC-Change-Condition | 1261 | | Enumerated | M,V | P | | | N |
|
||||
| PoC-Change-Time | 1262 | | Time | M,V | P | | | N |
|
||||
| PoC-Controlling-Address | 858 | | UTF8String | M,V | P | | | N |
|
||||
| PoC-Event-Type | 2025 | | Enumerated | M,V | P | | | N |
|
||||
| PoC-Group-Name | 859 | | UTF8String | M,V | P | | | N |
|
||||
| PoC-Information | 879 | | Grouped | M,V | P | | | N |
|
||||
| PoC-Server-Role | 883 | | Enumerated | M,V | P | | | N |
|
||||
| PoC-Session-Id | 1229 | | UTF8String | M,V | P | | | N |
|
||||
| PoC-Session-Initiation-type | 1277 | | Enumerated | M,V | P | | | N |
|
||||
| PoC-Session-Type | 884 | | Enumerated | M,V | P | | | N |
|
||||
| PoC-User-Role | 1252 | | Grouped | M,V | P | | | N |
|
||||
| PoC-User-Role-IDs | 1253 | | UTF8String | M,V | P | | | N |
|
||||
| PoC-User-Role-info-Units | 1254 | | Enumerated | M,V | P | | | N |
|
||||
| Positioning-Data | 1245 | | UTF8String | M,V | P | | | N |
|
||||
| Preferred-AoC-Currency | 2315 | | Unsigned32 | M,V | P | | | N |
|
||||
| Priority | 1209 | | Enumerated | M,V | P | | | N |
|
||||
| Quota-Consumption-Time | 881 | | Unsigned32 | M,V | P | | | N |
|
||||
| Quota-Holding-Time | 871 | | Unsigned32 | M,V | P | | | N |
|
||||
| Rate-Element | 2058 | | Grouped | M,V | P | | | N |
|
||||
| Read-Reply-Report-Requested | 1222 | | Enumerated | M,V | P | | | N |
|
||||
| Real-Time-Tariff-Information | 2305 | | Grouped | M,V | P | | | N |
|
||||
| Received-Talk-Burst-Time | 1284 | | Unsigned32 | M,V | P | | | N |
|
||||
| Received-Talk-Burst-Volume | 1285 | | Unsigned32 | M,V | P | | | N |
|
||||
| Recipient-Address | 1201 | | Grouped | M,V | P | | | N |
|
||||
| Recipient-Info | 2026 | | Grouped | M,V | P | | | N |
|
||||
| Recipient-Received-Address | 2028 | | Grouped | M,V | P | | | N |
|
||||
| Recipient-SCCP-Address | 2010 | | Address | M,V | P | | | N |
|
||||
| Refund-Information | 2022 | | OctetString | M,V | P | | | N |
|
||||
| Relationship-Mode | 2706 | | Enumerated | M,V | P | | | N |
|
||||
| Remaining-Balance | 2021 | | Grouped | M,V | P | | | N |
|
||||
| Reply-Applic-ID | 1223 | | UTF8String | M,V | P | | | N |
|
||||
| Reply-Path-Requested | 2011 | | Enumerated | M,V | P | | | N |
|
||||
| Reporting-Reason | 872 | | Enumerated | M,V | P | | | N |
|
||||
| Requested-Party-Address | 1251 | | UTF8String | M,V | P | | | N |
|
||||
| Role-Of-Node | 829 | | Enumerated | M,V | P | | | N |
|
||||
| SDP-Answer-Timestamp | 1275 | | Time | M,V | P | | | N |
|
||||
| SDP-Media-Component | 843 | | Grouped | M,V | P | | | N |
|
||||
| SDP-Media-Description | 845 | | UTF8String | M,V | P | | | N |
|
||||
| SDP-Media-Name | 844 | | UTF8String | M,V | P | | | N |
|
||||
| SDP-Offer-Timestamp | 1274 | | Time | M,V | P | | | N |
|
||||
| SDP-Session-Description | 842 | | UTF8String | M,V | P | | | N |
|
||||
| SDP-TimeStamps | 1273 | | Grouped | M,V | P | | | N |
|
||||
| SDP-Type | 2036 | | Enumerated | M,V | P | | | N |
|
||||
| SGSN-Address | 1228 | | Address | M,V | P | | | N |
|
||||
| SGW-Address | 2067 | | Address | M,V | P | | | N |
|
||||
| SGW-Change | 2065 | | Enumerated | M,V | P | | | N |
|
||||
| SIP-Method | 824 | | UTF8String | M,V | P | | | N |
|
||||
| SIP-Request-Timestamp | 834 | | Time | M,V | P | | | N |
|
||||
| SIP-Request-Timestamp-Fraction | 2301 | | Unsigned32 | M,V | P | | | N |
|
||||
| SIP-Response-Timestamp | 835 | | Time | M,V | P | | | N |
|
||||
| SIP-Response-Timestamp-Fraction | 2302 | | Unsigned32 | M,V | P | | | N |
|
||||
| SM-Discharge-Time | 2012 | | Time | M,V | P | | | N |
|
||||
| SM-Message-Type | 2007 | | Enumerated | M,V | P | | | N |
|
||||
| SM-Protocol-ID | 2013 | | OctetString | M,V | P | | | N |
|
||||
| SM-Service-Type | 2029 | | Enumerated | M,V | P | | | N |
|
||||
| SM-Status | 2014 | | OctetString | M,V | P | | | N |
|
||||
| SM-User-Data-Header | 2015 | | OctetString | M,V | P | | | N |
|
||||
| SMS-Information | 2000 | | Grouped | M,V | P | | | N |
|
||||
| SMS-Node | 2016 | | Enumerated | M,V | P | | | N |
|
||||
| SMSC-Address | 2017 | | Address | M,V | P | | | N |
|
||||
| Scale-Factor | 2059 | | Grouped | M,V | P | | | N |
|
||||
| Served-Party-IP-Address | 848 | | Address | M,V | P | | | N |
|
||||
| Service-Data-Container | 2040 | | Grouped | M,V | P | | | N |
|
||||
| Service-Id | 855 | | UTF8String | M,V | P | | | N |
|
||||
| Service-Information | 873 | | Grouped | M,V | P | | | N |
|
||||
| Service-Mode | 2032 | | Unsigned32 | M,V | P | | | N |
|
||||
| Service-Specific-Data | 863 | | UTF8String | M,V | P | | | N |
|
||||
| Service-Specific-Info | 1249 | | Grouped | M,V | P | | | N |
|
||||
| Service-Specific-Type | 1257 | | Unsigned32 | M,V | P | | | N |
|
||||
| Serving-Node-Type | 2047 | | Enumerated | M,V | P | | | N |
|
||||
| Session-Direction | 2707 | | Enumerated | M,V | P | | | N |
|
||||
| Start-Time | 2041 | | Time | M,V | P | | | N |
|
||||
| Status | 2702 | | Enumerated | M,V | P | | | N |
|
||||
| Stop-Time | 2042 | | Time | M,V | P | | | N |
|
||||
| Submission-Time | 1202 | | Time | M,V | P | | | N |
|
||||
| Subscriber-Role | 2033 | | Enumerated | M,V | P | | | N |
|
||||
| Supplementary-Service | 2048 | | Grouped | M,V | P | | | N |
|
||||
| Talk-Burst-Exchange | 1255 | | Grouped | M,V | P | | | N |
|
||||
| Talk-Burst-Time | 1286 | | Unsigned32 | M,V | P | | | N |
|
||||
| Talk-Burst-Volume | 1287 | | Unsigned32 | M,V | P | | | N |
|
||||
| Tariff-Information | 2060 | | Grouped | M,V | P | | | N |
|
||||
| Tariff-XML | 2306 | | UTF8String | M,V | P | | | N |
|
||||
| Terminating-IOI | 840 | | UTF8String | M,V | P | | | N |
|
||||
| Time-First-Usage | 2043 | | Time | M,V | P | | | N |
|
||||
| Time-Last-Usage | 2044 | | Time | M,V | P | | | N |
|
||||
| Time-Quota-Mechanism | 1270 | | Grouped | M,V | P | | | N |
|
||||
| Time-Quota-Threshold | 868 | | Unsigned32 | M,V | P | | | N |
|
||||
| Time-Quota-Type | 1271 | | Enumerated | M,V | P | | | N |
|
||||
| Time-Stamps | 833 | | Grouped | M,V | P | | | N |
|
||||
| Time-Usage | 2045 | | Unsigned32 | M,V | P | | | N |
|
||||
| Token-Text | 1215 | | UTF8String | M,V | P | | | N |
|
||||
| Traffic-Data-Volumes | 2046 | | Grouped | M,V | P | | | N |
|
||||
| Transcoder-Inserted-Indication | 2605 | | Enumerated | M,V | P | | | N |
|
||||
| Transit-IOI-List | 2701 | | UTF8String | M,V | P | | | N |
|
||||
| Trigger | 1264 | | Grouped | M,V | P | | | N |
|
||||
| Trigger-Type | 870 | | Enumerated | M,V | P | | | N |
|
||||
| Trunk-Group-Id | 851 | | Grouped | M,V | P | | | N |
|
||||
| Type-Number | 1204 | | Enumerated | M,V | P | | | N |
|
||||
| Unit-Cost | 2061 | | Grouped | M,V | P | | | N |
|
||||
| Unit-Quota-Threshold | 1226 | | Unsigned32 | M,V | P | | | N |
|
||||
| User-CSG-Information | 2319 | | Grouped | M,V | P | | | N |
|
||||
| User-Participating-Type | 1279 | | Enumerated | M,V | P | | | N |
|
||||
| User-Session-Id | 830 | | UTF8String | M,V | P | | | N |
|
||||
| Volume-Quota-Threshold | 869 | | Unsigned32 | M,V | P | | | N |
|
||||
| WAG-Address | 890 | | Address | M,V | P | | | N |
|
||||
| WAG-PLMN-Id | 891 | | OctetString | M,V | P | | | N |
|
||||
| WLAN-Information | 875 | | Grouped | M,V | P | | | N |
|
||||
| WLAN-Radio-Container | 892 | | Grouped | M,V | P | | | N |
|
||||
| WLAN-Session-Id | 1246 | | UTF8String | M,V | P | | | N |
|
||||
| WLAN-Technology | 893 | | Unsigned32 | M,V | P | | | N |
|
||||
| WLAN-UE-Local-IPAddress | 894 | | Address | M,V | P | | | N |
|
||||
| # 3GPP 29.272-c00 (12.0.0 2013.03.13) | | | | | | | | |
|
||||
| Subscription-Data | 1400 | 7.3.2 | Grouped | M,V | | | | N |
|
||||
| Terminal-Information | 1401 | 7.3.3 | Grouped | M,V | | | | N |
|
||||
| IMEI | 1402 | 7.3.4 | UTF8String | M,V | | | | N |
|
||||
| Software-Version | 1403 | 7.3.5 | UTF8String | M,V | | | | N |
|
||||
| QoS-Subscribed | 1404 | 7.3.77 | OctetString | M,V | | | | N |
|
||||
| ULR-Flags | 1405 | 7.3.7 | Unsigned32 | M,V | | | | N |
|
||||
| ULA-Flags | 1406 | 7.3.8 | Unsigned32 | M,V | | | | N |
|
||||
| Visited-PLMN-Id | 1407 | 7.3.9 | OctetString | M,V | | | | N |
|
||||
| Requested-EUTRAN-Authentication-Info | 1408 | 7.3.11 | Grouped | M,V | | | | N |
|
||||
| Requested-UTRAN- GERAN-Authentication-Info | 1409 | 7.3.12 | Grouped | M,V | | | | N |
|
||||
| Number-Of-Requested-Vectors | 1410 | 7.3.14 | Unsigned32 | M,V | | | | N |
|
||||
| Re-Synchronization-Info | 1411 | 7.3.15 | OctetString | M,V | | | | N |
|
||||
| Immediate-Response-Preferred | 1412 | 7.3.16 | Unsigned32 | M,V | | | | N |
|
||||
| Authentication-Info | 1413 | 7.3.17 | Grouped | M,V | | | | N |
|
||||
| E-UTRAN-Vector | 1414 | 7.3.18 | Grouped | M,V | | | | N |
|
||||
| UTRAN-Vector | 1415 | 7.3.19 | Grouped | M,V | | | | N |
|
||||
| GERAN-Vector | 1416 | 7.3.20 | Grouped | M,V | | | | N |
|
||||
| Network-Access-Mode | 1417 | 7.3.21 | Enumerated | M,V | | | | N |
|
||||
| HPLMN-ODB | 1418 | 7.3.22 | Unsigned32 | M,V | | | | N |
|
||||
| Item-Number | 1419 | 7.3.23 | Unsigned32 | M,V | | | | N |
|
||||
| Cancellation-Type | 1420 | 7.3.24 | Enumerated | M,V | | | | N |
|
||||
| DSR-Flags | 1421 | 7.3.25 | Unsigned32 | M,V | | | | N |
|
||||
| DSA-Flags | 1422 | 7.3.26 | Unsigned32 | M,V | | | | N |
|
||||
| Context-Identifier | 1423 | 7.3.27 | Unsigned32 | M,V | | | | N |
|
||||
| Subscriber-Status | 1424 | 7.3.29 | Enumerated | M,V | | | | N |
|
||||
| Operator-Determined-Barring | 1425 | 7.3.30 | Unsigned32 | M,V | | | | N |
|
||||
| Access-Restriction-Data | 1426 | 7.3.31 | Unsigned32 | M,V | | | | N |
|
||||
| APN-OI-Replacement | 1427 | 7.3.32 | UTF8String | M,V | | | | N |
|
||||
| All-APN-Configurations-Included-Indicator | 1428 | 7.3.33 | Enumerated | M,V | | | | N |
|
||||
| APN-Configuration-Profile | 1429 | 7.3.34 | Grouped | M,V | | | | N |
|
||||
| APN-Configuration | 1430 | 7.3.35 | Grouped | M,V | | | | N |
|
||||
| EPS-Subscribed-QoS-Profile | 1431 | 7.3.37 | Grouped | M,V | | | | N |
|
||||
| VPLMN-Dynamic-Address-Allowed | 1432 | 7.3.38 | Enumerated | M,V | | | | N |
|
||||
| STN-SR | 1433 | 7.3.39 | OctetString | M,V | | | | N |
|
||||
| Alert-Reason | 1434 | 7.3.83 | Enumerated | M,V | | | | N |
|
||||
| AMBR | 1435 | 7.3.41 | Grouped | M,V | | | | N |
|
||||
| CSG-Subscription-Data | 1436 | 7.3.78 | Grouped | M. V | | | | N |
|
||||
| CSG-Id | 1437 | 7.3.79 | Unsigned32 | M,V | | | | N |
|
||||
| PDN-GW-Allocation-Type | 1438 | 7.3.44 | Enumerated | M,V | | | | N |
|
||||
| Expiration-Date | 1439 | 7.3.80 | Time | M,V | | | | N |
|
||||
| RAT-Frequency-Selection-Priority-ID | 1440 | 7.3.46 | Unsigned32 | M,V | | | | N |
|
||||
| IDA-Flags | 1441 | 7.3.47 | Unsigned32 | M,V | | | | N |
|
||||
| PUA-Flags | 1442 | 7.3.48 | Unsigned32 | M,V | | | | N |
|
||||
| NOR-Flags | 1443 | 7.3.49 | Unsigned32 | M,V | | | | N |
|
||||
| User-Id | 1444 | 7.3.50 | UTF8String | V | | | M | N |
|
||||
| Equipment-Status | 1445 | 7.3.51 | Enumerated | M,V | | | | N |
|
||||
| Regional-Subscription-Zone-Code | 1446 | 7.3.52 | OctetString | M,V | | | | N |
|
||||
| RAND | 1447 | 7.3.53 | OctetString | M,V | | | | N |
|
||||
| XRES | 1448 | 7.3.54 | OctetString | M,V | | | | N |
|
||||
| AUTN | 1449 | 7.3.55 | OctetString | M,V | | | | N |
|
||||
| KASME | 1450 | 7.3.56 | OctetString | M,V | | | | N |
|
||||
| Trace-Collection-Entity | 1452 | 7.3.98 | Address | M,V | | | | N |
|
||||
| Kc | 1453 | 7.3.59 | OctetString | M,V | | | | N |
|
||||
| SRES | 1454 | 7.3.60 | OctetString | M,V | | | | N |
|
||||
| PDN-Type | 1456 | 7.3.62 | Enumerated | M,V | | | | N |
|
||||
| Roaming-Restricted-Due-To-Unsupported-Feature | 1457 | 7.3.81 | Enumerated | M,V | | | | N |
|
||||
| Trace-Data | 1458 | 7.3.63 | Grouped | M,V | | | | N |
|
||||
| Trace-Reference | 1459 | 7.3.64 | OctetString | M,V | | | | N |
|
||||
| Trace-Depth | 1462 | 7.3.67 | Enumerated | M,V | | | | N |
|
||||
| Trace-NE-Type-List | 1463 | 7.3.68 | OctetString | M,V | | | | N |
|
||||
| Trace-Interface-List | 1464 | 7.3.69 | OctetString | M,V | | | | N |
|
||||
| Trace-Event-List | 1465 | 7.3.70 | OctetString | M,V | | | | N |
|
||||
| OMC-Id | 1466 | 7.3.71 | OctetString | M,V | | | | N |
|
||||
| GPRS-Subscription-Data | 1467 | 7.3.72 | Grouped | M,V | | | | N |
|
||||
| Complete-Data-List-Included-Indicator | 1468 | 7.3.73 | Enumerated | M,V | | | | N |
|
||||
| PDP-Context | 1469 | 7.3.74 | Grouped | M,V | | | | N |
|
||||
| PDP-Type | 1470 | 7.3.75 | OctetString | M,V | | | | N |
|
||||
| 3GPP2-MEID | 1471 | 7.3.6 | OctetString | M,V | | | | N |
|
||||
| Specific-APN-Info | 1472 | 7.3.82 | Grouped | M,V | | | | N |
|
||||
| LCS-Info | 1473 | 7.3.84 | Grouped | M,V | | | | N |
|
||||
| GMLC-Number | 1474 | 7.3.85 | OctetString | M,V | | | | N |
|
||||
| LCS-PrivacyException | 1475 | 7.3.86 | Grouped | M,V | | | | N |
|
||||
| SS-Code | 1476 | 7.3.87 | OctetString | M,V | | | | N |
|
||||
| SS-Status | 1477 | 7.3.88 | Grouped | M,V | | | | N |
|
||||
| Notification-To-UE-User | 1478 | 7.3.89 | Enumerated | M,V | | | | N |
|
||||
| External-Client | 1479 | 7.3.90 | Grouped | M,V | | | | N |
|
||||
| Client-Identity | 1480 | 7.3.91 | OctetString | M,V | | | | N |
|
||||
| GMLC-Restriction | 1481 | 7.3.92 | Enumerated | M,V | | | | N |
|
||||
| PLMN-Client | 1482 | 7.3.93 | Enumerated | M,V | | | | N |
|
||||
| Service-Type | 1483 | 7.3.94 | Grouped | M,V | | | | N |
|
||||
| ServiceTypeIdentity | 1484 | 7.3.95 | Unsigned32 | M,V | | | | N |
|
||||
| MO-LR | 1485 | 7.3.96 | Grouped | M,V | | | | N |
|
||||
| Teleservice-List | 1486 | 7.3.99 | Grouped | M,V | | | | N |
|
||||
| TS-Code | 1487 | 7.3.100 | OctetString | M,V | | | | N |
|
||||
| Call-Barring-Infor-List | 1488 | 7.3.101 | Grouped | M,V | | | | N |
|
||||
| SGSN-Number | 1489 | 7.3.102 | OctetString | M,V | | | | N |
|
||||
| IDR-Flags | 1490 | 7.3.103 | Unsigned32 | M,V | | | | N |
|
||||
| ICS-Indicator | 1491 | 7.3.104 | Enumerated | V | | | M | N |
|
||||
| IMS-Voice-Over-PS-Sessions-Supported | 1492 | 7.3.106 | Enumerated | V | | | M | N |
|
||||
| Homogeneous-Support-of-IMS-Voice-Over-PS-Sessions | 1493 | 7.3.107 | Enumerated | V | | | M | N |
|
||||
| Last-UE-Activity-Time | 1494 | 7.3.108 | Time | V | | | M | N |
|
||||
| EPS-User-State | 1495 | 7.3.110 | Grouped | V | | | M | N |
|
||||
| EPS-Location-Information | 1496 | 7.3.111 | Grouped | V | | | M | N |
|
||||
| MME-User-State | 1497 | 7.3.112 | Grouped | V | | | M | N |
|
||||
| SGSN-User-State | 1498 | 7.3.113 | Grouped | V | | | M | N |
|
||||
| User-State | 1499 | 7.3.114 | Enumerated | V | | | M | N |
|
||||
| MME-Location Information | 1600 | 7.3.115 | Grouped | V | | | M | N |
|
||||
| SGSN-Location-Information | 1601 | 7.3.116 | Grouped | V | | | M | N |
|
||||
| E-UTRAN-Cell-Global-Identity | 1602 | 7.3.117 | OctetString | V | | | M | N |
|
||||
| Tracking-Area-Identity | 1603 | 7.3.118 | OctetString | V | | | M | N |
|
||||
| Cell-Global-Identity | 1604 | 7.3.119 | OctetString | V | | | M | N |
|
||||
| Routing-Area-Identity | 1605 | 7.3.120 | OctetString | V | | | M | N |
|
||||
| Location-Area-Identity | 1606 | 7.3.121 | OctetString | V | | | M | N |
|
||||
| Service-Area-Identity | 1607 | 7.3.122 | OctetString | V | | | M | N |
|
||||
| Geographical-Information | 1608 | 7.3.123 | OctetString | V | | | M | N |
|
||||
| Geodetic-Information | 1609 | 7.3.124 | OctetString | V | | | M | N |
|
||||
| Current-Location-Retrieved | 1610 | 7.3.125 | Enumerated | V | | | M | N |
|
||||
| Age-Of-Location-Information | 1611 | 7.3.126 | Unsigned32 | V | | | M | N |
|
||||
| Active-APN | 1612 | 7.3.127 | Grouped | V | | | M | N |
|
||||
| Error-Diagnostic | 1614 | 7.3.128 | Enumerated | V | | | M | N |
|
||||
| Ext-PDP-Address | 1621 | 7.3.129 | Address | V | | | M | N |
|
||||
| UE-SRVCC-Capability | 1615 | 7.3.130 | Enumerated | V | | | M | N |
|
||||
| MPS-Priority | 1616 | 7.3.131 | Unsigned32 | V | | | M | N |
|
||||
| VPLMN-LIPA-Allowed | 1617 | 7.3.132 | Enumerated | V | | | M | N |
|
||||
| LIPA-Permission | 1618 | 7.3.133 | Enumerated | V | | | M | N |
|
||||
| Subscribed-Periodic-RAU-TAU-Timer | 1619 | 7.3.134 | Unsigned32 | V | | | M | N |
|
||||
| Ext-PDP-Type | 1620 | 7.3.75A | OctetString | V | | | M | N |
|
||||
| SIPTO-Permission | 1613 | 7.3.135 | Enumerated | V | | | M | N |
|
||||
| MDT-Configuration | 1622 | 7.3.136 | Grouped | V | | | M | N |
|
||||
| Job-Type | 1623 | 7.3.137 | Enumerated | V | | | M | N |
|
||||
| Area-Scope | 1624 | 7.3.138 | Grouped | V | | | M | N |
|
||||
| List-Of-Measurements | 1625 | 7.3.139 | Unsigned32 | V | | | M | N |
|
||||
| Reporting-Trigger | 1626 | 7.3.140 | Unsigned32 | V | | | M | N |
|
||||
| Report-Interval | 1627 | 7.3.141 | Enumerated | V | | | M | N |
|
||||
| Report-Amount | 1628 | 7.3.142 | Enumerated | V | | | M | N |
|
||||
| Event-Threshold-RSRP | 1629 | 7.3.143 | Unsigned32 | V | | | M | N |
|
||||
| Event-Threshold-RSRQ | 1630 | 7.3.144 | Unsigned32 | V | | | M | N |
|
||||
| Logging-Interval | 1631 | 7.3.145 | Enumerated | V | | | M | N |
|
||||
| Logging-Duration | 1632 | 7.3.146 | Enumerated | V | | | M | N |
|
||||
| Relay-Node-Indicator | 1633 | 7.3.147 | Enumerated | V | | | M | N |
|
||||
| MDT-User-Consent | 1634 | 7.3.148 | Enumerated | V | | | M | N |
|
||||
| PUR-Flags | 1635 | 7.3.149 | Unsigned32 | V | | | M | N |
|
||||
| Subscribed-VSRVCC | 1636 | 7.3.150 | Enumerated | V | | | M | N |
|
||||
| Equivalent-PLMN-List | 1637 | 7.3.151 | Grouped | V | | | M | N |
|
||||
| CLR-Flags | 1638 | 7.3.152 | Unsigned32 | V | | | M | N |
|
||||
| UVR-Flags | 1639 | 7.3.153 | Unsigned32 | M,V | | | | N |
|
||||
| UVA-Flags | 1640 | 7.3.154 | Unsigned32 | M,V | | | | N |
|
||||
| VPLMN-CSG-Subscription-Data | 1641 | 7.3.155 | Grouped | M,V | | | | N |
|
||||
| Time-Zone | 1642 | 7.3.163 | UTF8String | V | | | M | N |
|
||||
| A-MSISDN | 1643 | 7.3.157 | OctetString | V | | | M | N |
|
||||
| MME-Number-for-MT-SMS | 1645 | 7.3.159 | OctetString | V | | | M | N |
|
||||
| SMS-Register-Request | 1648 | 7.3.162 | Enumerated | V | | | M | N |
|
||||
| Local-Time-Zone | 1649 | 7.3.156 | Grouped | V | | | M | N |
|
||||
| Daylight-Saving-Time | 1650 | 7.3.164 | Enumerated | V | | | M | N |
|
||||
| Subscription-Data-Flags | 1654 | 7.3.165 | Unsigned32 | V | | | M | N |
|
||||
| Measurement-Period-UMTS | 1655 | 7.3.166 | Enumerated | V | | | M | N |
|
||||
| Measurement-Period-LTE | 1656 | 7.3.167 | Enumerated | V | | | M | N |
|
||||
| Collection-Period-RRM-LTE | 1657 | 7.3.168 | Enumerated | V | | | M | N |
|
||||
| Collection-Period-RRM-UMTS | 1658 | 7.3.169 | Enumerated | V | | | M | N |
|
||||
| Positioning-Method | 1659 | 7.3.170 | OctetString | V | | | M | N |
|
||||
| Measurement-Quantity | 1660 | 7.3.171 | OctetString | V | | | M | N |
|
||||
| Event-Threshold-Event-1F | 1661 | 7.3.172 | Integer32 | V | | | M | N |
|
||||
| Event-Threshold-Event-1I | 1662 | 7.3.173 | Integer32 | V | | | M | N |
|
||||
| # 3GPP 29.329-b50 (11.5.0 2012.12.21) | | | | | | | | |
|
||||
| User-Identity | 700 | 6.3.1 | Grouped | M,V | | | | N |
|
||||
| MSISDN | 701 | 6.3.2 | OctetString | M,V | | | | N |
|
||||
| # Name conflict with 29.229 User-Data (606), renamed | | | | | | | | |
|
||||
| User-Data-29.329 | 702 | 6.3.3 | OctetString | M,V | | | | N |
|
||||
| Data-Reference | 703 | 6.3.4 | Enumerated | M,V | | | | N |
|
||||
| Service-Indication | 704 | 6.3.5 | OctetString | M,V | | | | N |
|
||||
| Subs-Req-Type | 705 | 6.3.6 | Enumerated | M,V | | | | N |
|
||||
| Requested-Domain | 706 | 6.3.7 | Enumerated | M,V | | | | N |
|
||||
| Current-Location | 707 | 6.3.8 | Enumerated | M,V | | | | N |
|
||||
| Identity-Set | 708 | 6.3.10 | Enumerated | V | | | M | N |
|
||||
| Expiry-Time | 709 | 6.3.16 | Time | V | | | M | N |
|
||||
| Send-Data-Indication | 710 | 6.3.17 | Enumerated | V | | | M | N |
|
||||
| # in 29.229 | | | | | | | | |
|
||||
| # Server-Name | 602 | 6.3.9 | UTF8String | M,V | | | | N |
|
||||
| # Supported-Features | 628 | 6.3.11 | Grouped | V | M | | | N |
|
||||
| # Feature-List-ID | 629 | 6.3.12 | Unsigned32 | V | | | M | N |
|
||||
| # Feature-List | 630 | 6.3.13 | Unsigned32 | V | | | M | N |
|
||||
| # Supported-Applications | 631 | 6.3.14 | Grouped | V | | | M | N |
|
||||
| # Public-Identity | 601 | 6.3.15 | UTF8String | M,V | | | | N |
|
||||
| DSAI-Tag | 711 | 6.3.18 | OctetString | M,V | | | | N |
|
||||
| # in 29.229 | | | | | | | | |
|
||||
| # Wildcarded-Public-Identity | 634 | 6.3.19 | UTF8String | V | | | M | N |
|
||||
| Wildcarded-IMPU | 636 | 6.3.20 | UTF8String | V | | | M | N |
|
||||
| # in 29.229 | | | | | | | | |
|
||||
| # Session-Priority | 650 | 6.3.21 | Enumerated | V | | | M | N |
|
||||
| One-Time-Notification | 712 | 6.3.22 | Enumerated | V | | | M | N |
|
||||
| Requested-Nodes | 713 | 6.3.7A | Unsigned32 | V | | | M | N |
|
||||
| Serving-Node-Indication | 714 | 6.3.23 | Enumerated | V | | | M | N |
|
||||
| Repository-Data-ID | 715 | 6.3.24 | Grouped | V | | | M | N |
|
||||
| Sequence-Number | 716 | 6.3.25 | Unsigned32 | V | | | M | N |
|
||||
| UDR-Flags | 719 | 6.3.28 | Unsigned32 | V | | | M | N |
|
||||
| # OMA DDS Charging_Data V1.0 20110201-A | | | | | | | | |
|
||||
| Application-Server-Id | 2101 | 8.4 | UTF8String | M,V | | | | Y |
|
||||
| Application-Service-Type | 2102 | 8.4 | UTF8String | M,V | | | | Y |
|
||||
| Application-Session-Id | 2103 | 8.4 | UTF8String | M,V | | | | Y |
|
||||
| Content-ID | 2116 | 8.4 | UTF8String | M,V | | | | Y |
|
||||
| Content-provider-ID | 2117 | 8.4 | UTF8String | M,V | | | | Y |
|
||||
| DCD-Information | 2115 | 8.5.5 | Grouped | M,V | | | | Y |
|
||||
| Delivery-Status | 2104 | 8.4 | UTF8String | M,V | | | | Y |
|
||||
| IM-Information | 2110 | 8.5.6 | Grouped | M,V | | | | Y |
|
||||
| Number-Of-Messages-Successfully-Exploded | 2111 | 8.4 | Unsigned32 | M,V | | | | Y |
|
||||
| Number-Of-Messages-Successfully-Sent | 2112 | 8.4 | Unsigned32 | M,V | | | | Y |
|
||||
| Service-Generic-Information | 1256 | 8.5.10 | Grouped | M,V | | | | Y |
|
||||
| Total-Number-Of-Messages-Exploded | 2113 | 8.4 | Unsigned32 | M,V | | | | Y |
|
||||
| Total-Number-Of-Messages-Sent | 2114 | 8.4 | Unsigned32 | M,V | | | | Y |
|
|
@ -1,32 +0,0 @@
|
|||
## Process this file with automake to produce Makefile.in
|
||||
|
||||
pkglib_LTLIBRARIES = dict_legacy_xml.la
|
||||
|
||||
dict_legacy_xml_la_SOURCES = \
|
||||
dict_lxml.tab.y lex.dict_lxml.l dict_lxml.c dict_lxml_xml.c
|
||||
|
||||
dict_legacy_xml_la_DEPENDENCIES = \
|
||||
$(top_srcdir)/lib/@FREEDIAMETER_DIR@/libfdcore/libfdcore.la \
|
||||
$(top_srcdir)/lib/@FREEDIAMETER_DIR@/libfdproto/libfdproto.la
|
||||
|
||||
dict_legacy_xml_la_LIBADD = \
|
||||
$(top_srcdir)/lib/@FREEDIAMETER_DIR@/libfdcore/libfdcore.la \
|
||||
$(top_srcdir)/lib/@FREEDIAMETER_DIR@/libfdproto/libfdproto.la
|
||||
|
||||
AM_YFLAGS = -p dict_lxml -d
|
||||
|
||||
AM_LFLAGS = -p -Cem -Pdict_lxml
|
||||
|
||||
AM_LDFLAGS = \
|
||||
-module -avoid-version -shared
|
||||
|
||||
AM_CPPFLAGS = \
|
||||
-I$(top_srcdir)/lib/fd/gx \
|
||||
-I$(top_srcdir)/lib/@FREEDIAMETER_DIR@/include \
|
||||
@LIBXML2_CFLAGS@
|
||||
|
||||
AM_CFLAGS = \
|
||||
-Wall -Werror
|
||||
|
||||
MAINTAINERCLEANFILES = Makefile.in
|
||||
MOSTLYCLEANFILES = *.stackdump
|
|
@ -1,54 +0,0 @@
|
|||
/*********************************************************************************************************
|
||||
* Software License Agreement (BSD License) *
|
||||
* Author: Sebastien Decugis <sdecugis@freediameter.net> *
|
||||
* *
|
||||
* Copyright (c) 2011, WIDE Project and NICT *
|
||||
* All rights reserved. *
|
||||
* *
|
||||
* Redistribution and use of this software in source and binary forms, with or without modification, are *
|
||||
* permitted provided that the following conditions are met: *
|
||||
* *
|
||||
* * Redistributions of source code must retain the above *
|
||||
* copyright notice, this list of conditions and the *
|
||||
* following disclaimer. *
|
||||
* *
|
||||
* * Redistributions in binary form must reproduce the above *
|
||||
* copyright notice, this list of conditions and the *
|
||||
* following disclaimer in the documentation and/or other *
|
||||
* materials provided with the distribution. *
|
||||
* *
|
||||
* * Neither the name of the WIDE Project or NICT nor the *
|
||||
* names of its contributors may be used to endorse or *
|
||||
* promote products derived from this software without *
|
||||
* specific prior written permission of WIDE Project and *
|
||||
* NICT. *
|
||||
* *
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED *
|
||||
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A *
|
||||
* PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR *
|
||||
* ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT *
|
||||
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS *
|
||||
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR *
|
||||
* TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF *
|
||||
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. *
|
||||
*********************************************************************************************************/
|
||||
|
||||
/*
|
||||
* Legacy XML dictionary files support for freeDiameter.
|
||||
*/
|
||||
|
||||
#include "dict_lxml.h"
|
||||
|
||||
/* entry point */
|
||||
static int dict_lxml_entry(char * conffile)
|
||||
{
|
||||
TRACE_ENTRY("%p", conffile);
|
||||
|
||||
/* Parse the configuration file -- everything happens there */
|
||||
CHECK_FCT( dict_lxml_handle(conffile) );
|
||||
|
||||
/* We're done */
|
||||
return 0;
|
||||
}
|
||||
|
||||
EXTENSION_ENTRY("dict_legacy_xml", dict_lxml_entry);
|
|
@ -1,48 +0,0 @@
|
|||
/*********************************************************************************************************
|
||||
* Software License Agreement (BSD License) *
|
||||
* Author: Sebastien Decugis <sdecugis@freediameter.net> *
|
||||
* *
|
||||
* Copyright (c) 2011, WIDE Project and NICT *
|
||||
* All rights reserved. *
|
||||
* *
|
||||
* Redistribution and use of this software in source and binary forms, with or without modification, are *
|
||||
* permitted provided that the following conditions are met: *
|
||||
* *
|
||||
* * Redistributions of source code must retain the above *
|
||||
* copyright notice, this list of conditions and the *
|
||||
* following disclaimer. *
|
||||
* *
|
||||
* * Redistributions in binary form must reproduce the above *
|
||||
* copyright notice, this list of conditions and the *
|
||||
* following disclaimer in the documentation and/or other *
|
||||
* materials provided with the distribution. *
|
||||
* *
|
||||
* * Neither the name of the WIDE Project or NICT nor the *
|
||||
* names of its contributors may be used to endorse or *
|
||||
* promote products derived from this software without *
|
||||
* specific prior written permission of WIDE Project and *
|
||||
* NICT. *
|
||||
* *
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED *
|
||||
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A *
|
||||
* PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR *
|
||||
* ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT *
|
||||
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS *
|
||||
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR *
|
||||
* TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF *
|
||||
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. *
|
||||
*********************************************************************************************************/
|
||||
|
||||
/* Header file for the dict_legacy_xml extension.
|
||||
*
|
||||
* See the dict_legacy_xml.conf.sample file for the format of the configuration file.
|
||||
*/
|
||||
|
||||
/* FreeDiameter's common include file */
|
||||
#include <freeDiameter/extension.h>
|
||||
|
||||
/* Parse the configuration file */
|
||||
int dict_lxml_handle(char * conffile);
|
||||
|
||||
/* Parse an XML file and return the number of dictionary objects or -1 on error */
|
||||
int dict_lxml_parse(char * xmlfilename);
|
|
@ -1,141 +0,0 @@
|
|||
/*********************************************************************************************************
|
||||
* Software License Agreement (BSD License) *
|
||||
* Author: Sebastien Decugis <sdecugis@freediameter.net> *
|
||||
* *
|
||||
* Copyright (c) 2013, WIDE Project and NICT *
|
||||
* All rights reserved. *
|
||||
* *
|
||||
* Redistribution and use of this software in source and binary forms, with or without modification, are *
|
||||
* permitted provided that the following conditions are met: *
|
||||
* *
|
||||
* * Redistributions of source code must retain the above *
|
||||
* copyright notice, this list of conditions and the *
|
||||
* following disclaimer. *
|
||||
* *
|
||||
* * Redistributions in binary form must reproduce the above *
|
||||
* copyright notice, this list of conditions and the *
|
||||
* following disclaimer in the documentation and/or other *
|
||||
* materials provided with the distribution. *
|
||||
* *
|
||||
* * Neither the name of the WIDE Project or NICT nor the *
|
||||
* names of its contributors may be used to endorse or *
|
||||
* promote products derived from this software without *
|
||||
* specific prior written permission of WIDE Project and *
|
||||
* NICT. *
|
||||
* *
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED *
|
||||
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A *
|
||||
* PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR *
|
||||
* ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT *
|
||||
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS *
|
||||
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR *
|
||||
* TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF *
|
||||
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. *
|
||||
*********************************************************************************************************/
|
||||
|
||||
/* Yacc extension's configuration parser.
|
||||
* See doc/dict_legacy_xml.conf.sample for configuration file format
|
||||
*/
|
||||
|
||||
/* For development only : */
|
||||
%debug
|
||||
%error-verbose
|
||||
|
||||
/* The parser receives the configuration file filename as parameter */
|
||||
%parse-param {char * conffile}
|
||||
|
||||
/* Keep track of location */
|
||||
%locations
|
||||
%pure-parser
|
||||
|
||||
%{
|
||||
#include "dict_lxml.h"
|
||||
#include "dict_lxml.tab.h" /* bison is not smart enough to define the YYLTYPE before including this code, so... */
|
||||
|
||||
/* Forward declaration */
|
||||
int yyparse(char * conffile);
|
||||
|
||||
static int nb_files = 0;
|
||||
static int nb_dict = 0;
|
||||
|
||||
/* Parse the configuration file */
|
||||
int dict_lxml_handle(char * conffile)
|
||||
{
|
||||
extern FILE * dict_lxmlin;
|
||||
int ret;
|
||||
|
||||
TRACE_ENTRY("%p", conffile);
|
||||
|
||||
TRACE_DEBUG (FULL, "Parsing configuration file: %s...", conffile);
|
||||
|
||||
dict_lxmlin = fopen(conffile, "r");
|
||||
if (dict_lxmlin == NULL) {
|
||||
ret = errno;
|
||||
fd_log_debug("Unable to open extension configuration file %s for reading: %s", conffile, strerror(ret));
|
||||
TRACE_DEBUG (INFO, "Error occurred, message logged -- configuration file.");
|
||||
return ret;
|
||||
}
|
||||
|
||||
ret = yyparse(conffile);
|
||||
|
||||
fclose(dict_lxmlin);
|
||||
|
||||
if (ret != 0) {
|
||||
TRACE_DEBUG (INFO, "Unable to parse the configuration file.");
|
||||
return EINVAL;
|
||||
} else {
|
||||
TRACE_DEBUG(FULL, "%d XML dictionary files parsed successfully, %d dictionary objects added.", nb_files, nb_dict);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* The Lex parser prototype */
|
||||
int dict_lxmllex(YYSTYPE *lvalp, YYLTYPE *llocp);
|
||||
|
||||
/* Function to report the errors */
|
||||
void yyerror (YYLTYPE *ploc, char * conffile, char const *s)
|
||||
{
|
||||
TRACE_DEBUG(INFO, "Error in configuration parsing");
|
||||
|
||||
if (ploc->first_line != ploc->last_line)
|
||||
fd_log_debug("%s:%d.%d-%d.%d : %s", conffile, ploc->first_line, ploc->first_column, ploc->last_line, ploc->last_column, s);
|
||||
else if (ploc->first_column != ploc->last_column)
|
||||
fd_log_debug("%s:%d.%d-%d : %s", conffile, ploc->first_line, ploc->first_column, ploc->last_column, s);
|
||||
else
|
||||
fd_log_debug("%s:%d.%d : %s", conffile, ploc->first_line, ploc->first_column, s);
|
||||
}
|
||||
|
||||
%}
|
||||
|
||||
/* Values returned by lex for token */
|
||||
%union {
|
||||
char *string; /* The string is allocated by strdup in lex.*/
|
||||
}
|
||||
|
||||
/* In case of error in the lexical analysis */
|
||||
%token LEX_ERROR
|
||||
|
||||
/* A (de)quoted string (malloc'd in lex parser; it must be freed after use) */
|
||||
%token <string> QSTRING
|
||||
|
||||
/* -------------------------------------- */
|
||||
%%
|
||||
|
||||
/* The grammar definition */
|
||||
conffile: /* empty grammar is OK */
|
||||
| conffile xmlfile
|
||||
;
|
||||
|
||||
/* a RULE entry */
|
||||
xmlfile: QSTRING ';'
|
||||
{
|
||||
int ret = dict_lxml_parse($1);
|
||||
if (ret < 0) {
|
||||
yyerror (&yylloc, conffile, "An error occurred while parsing a file, aborting...");
|
||||
YYERROR;
|
||||
}
|
||||
nb_files++;
|
||||
nb_dict += ret;
|
||||
}
|
||||
;
|
File diff suppressed because it is too large
Load Diff
|
@ -1,98 +0,0 @@
|
|||
/*********************************************************************************************************
|
||||
* Software License Agreement (BSD License) *
|
||||
* Author: Sebastien Decugis <sdecugis@freediameter.net> *
|
||||
* *
|
||||
* Copyright (c) 2013, WIDE Project and NICT *
|
||||
* All rights reserved. *
|
||||
* *
|
||||
* Redistribution and use of this software in source and binary forms, with or without modification, are *
|
||||
* permitted provided that the following conditions are met: *
|
||||
* *
|
||||
* * Redistributions of source code must retain the above *
|
||||
* copyright notice, this list of conditions and the *
|
||||
* following disclaimer. *
|
||||
* *
|
||||
* * Redistributions in binary form must reproduce the above *
|
||||
* copyright notice, this list of conditions and the *
|
||||
* following disclaimer in the documentation and/or other *
|
||||
* materials provided with the distribution. *
|
||||
* *
|
||||
* * Neither the name of the WIDE Project or NICT nor the *
|
||||
* names of its contributors may be used to endorse or *
|
||||
* promote products derived from this software without *
|
||||
* specific prior written permission of WIDE Project and *
|
||||
* NICT. *
|
||||
* *
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED *
|
||||
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A *
|
||||
* PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR *
|
||||
* ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT *
|
||||
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS *
|
||||
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR *
|
||||
* TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF *
|
||||
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. *
|
||||
*********************************************************************************************************/
|
||||
|
||||
/* Tokenizer
|
||||
*
|
||||
*/
|
||||
|
||||
%{
|
||||
#include "dict_lxml.h"
|
||||
/* Include yacc tokens definitions */
|
||||
#include "dict_lxml.tab.h"
|
||||
|
||||
/* Update the column information */
|
||||
#define YY_USER_ACTION { \
|
||||
yylloc->first_column = yylloc->last_column + 1; \
|
||||
yylloc->last_column = yylloc->first_column + yyleng - 1; \
|
||||
}
|
||||
|
||||
/* Avoid warning with newer flex */
|
||||
#define YY_NO_INPUT
|
||||
|
||||
%}
|
||||
|
||||
qstring \"[^\"\n]*\"
|
||||
|
||||
|
||||
%option bison-bridge bison-locations
|
||||
%option noyywrap
|
||||
%option nounput
|
||||
|
||||
%%
|
||||
|
||||
/* Update the line count */
|
||||
\n {
|
||||
yylloc->first_line++;
|
||||
yylloc->last_line++;
|
||||
yylloc->last_column=0;
|
||||
}
|
||||
|
||||
/* Eat all spaces but not new lines */
|
||||
([[:space:]]{-}[\n])+ ;
|
||||
/* Eat all comments */
|
||||
#.*$ ;
|
||||
|
||||
/* Recognize quoted strings */
|
||||
{qstring} {
|
||||
/* Match a quoted string. */
|
||||
CHECK_MALLOC_DO( yylval->string = strdup(yytext+1),
|
||||
{
|
||||
TRACE_DEBUG(INFO, "Unable to copy the string '%s': %s", yytext, strerror(errno));
|
||||
return LEX_ERROR; /* trig an error in yacc parser */
|
||||
} );
|
||||
yylval->string[strlen(yytext) - 2] = '\0';
|
||||
return QSTRING;
|
||||
}
|
||||
|
||||
/* Valid single characters for yyparse */
|
||||
[;] { return yytext[0]; }
|
||||
|
||||
/* Unrecognized sequence, if it did not match any previous pattern */
|
||||
[^[:space:]\";\n]+ {
|
||||
fd_log_debug("Unrecognized text on line %d col %d: '%s'.", yylloc->first_line, yylloc->first_column, yytext);
|
||||
return LEX_ERROR;
|
||||
}
|
||||
|
||||
%%
|
File diff suppressed because it is too large
Load Diff
|
@ -1,258 +0,0 @@
|
|||
/*********************************************************************************************************
|
||||
* Software License Agreement (BSD License) *
|
||||
* Author: Francois Bard <francois@tera.ics.keio.ac.jp> *
|
||||
* *
|
||||
* Copyright (c) 2010, Teraoka Laboratory, Keio University *
|
||||
* All rights reserved. *
|
||||
* *
|
||||
* Redistribution and use of this software in source and binary forms, with or without modification, are *
|
||||
* permitted provided that the following conditions are met: *
|
||||
* *
|
||||
* * Redistributions of source code must retain the above *
|
||||
* copyright notice, this list of conditions and the *
|
||||
* following disclaimer. *
|
||||
* *
|
||||
* * Redistributions in binary form must reproduce the above *
|
||||
* copyright notice, this list of conditions and the *
|
||||
* following disclaimer in the documentation and/or other *
|
||||
* materials provided with the distribution. *
|
||||
* *
|
||||
* * Neither the name of the Teraoka Laboratory nor the *
|
||||
* names of its contributors may be used to endorse or *
|
||||
* promote products derived from this software without *
|
||||
* specific prior written permission of Teraoka Laboratory *
|
||||
* *
|
||||
* *
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED *
|
||||
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A *
|
||||
* PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR *
|
||||
* ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT *
|
||||
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS *
|
||||
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR *
|
||||
* TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF *
|
||||
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. *
|
||||
*********************************************************************************************************/
|
||||
|
||||
/*
|
||||
|
||||
The following table lists the AVPs needed for the NAS to HAAA server interaction.
|
||||
We try to keep the structure of the grouped AVP by declaring the contained AVPs just before the grouped AVP they depend on.
|
||||
The number of '+' indicates the depth of the contained AVP.
|
||||
|
||||
DEPTH NAME AVP CODE RFC TYPE IMPLEMENTED NOTES
|
||||
|
||||
MIP6-Feature-Vector 124 5447 Unsigned64 yes
|
||||
+ MIP-Home-Agent-Address 334 4004 Address not yet
|
||||
++ Destination-Host 293 3588 DiameterIdentity no (Base)
|
||||
++ Destination-Realm 283 3588 DiameterIdentity no (Base)
|
||||
+ MIP-Home-Agent-Host 348 4004 Grouped not yet
|
||||
+ MIP6-Home-Link-Prefix 125 5447 OctetString yes
|
||||
MIP6-Agent-Info 486 5447 Grouped yes
|
||||
|
||||
*/
|
||||
|
||||
|
||||
|
||||
#include <freeDiameter/extension.h>
|
||||
|
||||
/* The content of this file follows the same structure as dict_base_proto.c */
|
||||
|
||||
#define CHECK_dict_new( _type, _data, _parent, _ref ) \
|
||||
CHECK_FCT( fd_dict_new( fd_g_config->cnf_dict, (_type), (_data), (_parent), (_ref)) );
|
||||
|
||||
#define CHECK_dict_search( _type, _criteria, _what, _result ) \
|
||||
CHECK_FCT( fd_dict_search( fd_g_config->cnf_dict, (_type), (_criteria), (_what), (_result), ENOENT) );
|
||||
|
||||
struct local_rules_definition {
|
||||
char *avp_name;
|
||||
enum rule_position position;
|
||||
int min;
|
||||
int max;
|
||||
};
|
||||
|
||||
#define RULE_ORDER( _position ) ((((_position) == RULE_FIXED_HEAD) || ((_position) == RULE_FIXED_TAIL)) ? 1 : 0 )
|
||||
|
||||
#define PARSE_loc_rules( _rulearray, _parent) { \
|
||||
int __ar; \
|
||||
for (__ar=0; __ar < sizeof(_rulearray) / sizeof((_rulearray)[0]); __ar++) { \
|
||||
struct dict_rule_data __data = { NULL, \
|
||||
(_rulearray)[__ar].position, \
|
||||
0, \
|
||||
(_rulearray)[__ar].min, \
|
||||
(_rulearray)[__ar].max}; \
|
||||
__data.rule_order = RULE_ORDER(__data.rule_position); \
|
||||
CHECK_FCT( fd_dict_search( \
|
||||
fd_g_config->cnf_dict, \
|
||||
DICT_AVP, \
|
||||
AVP_BY_NAME, \
|
||||
(_rulearray)[__ar].avp_name, \
|
||||
&__data.rule_avp, 0 ) ); \
|
||||
if ( !__data.rule_avp ) { \
|
||||
TRACE_DEBUG(INFO, "AVP Not found: '%s'", (_rulearray)[__ar].avp_name ); \
|
||||
return ENOENT; \
|
||||
} \
|
||||
CHECK_FCT_DO( fd_dict_new( fd_g_config->cnf_dict, DICT_RULE, &__data, _parent, NULL), \
|
||||
{ \
|
||||
TRACE_DEBUG(INFO, "Error on rule with AVP '%s'", \
|
||||
(_rulearray)[__ar].avp_name ); \
|
||||
return EINVAL; \
|
||||
} ); \
|
||||
} \
|
||||
}
|
||||
|
||||
#define enumval_def_u32( _val_, _str_ ) \
|
||||
{ _str_, { .u32 = _val_ }}
|
||||
|
||||
#define enumval_def_os( _len_, _val_, _str_ ) \
|
||||
{ _str_, { .os = { .data = (unsigned char *)_val_, .len = _len_ }}}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/* Defines if there are any */
|
||||
|
||||
/* Define Flags for MIP6-Feature-Vector*/
|
||||
|
||||
#define MIP6_INTEGRATED 0x0000000000000001
|
||||
#define LOCAL_HOME_AGENT_ASSIGNMENT 0x0000000000000002
|
||||
|
||||
/* Dictionary */
|
||||
|
||||
int dict_nas_mipv6_init(char * conffile)
|
||||
{
|
||||
struct dict_object * nas_mipv6;
|
||||
{
|
||||
struct dict_application_data data = { 5447, "MIPv6 NAS-to-HAAA Interaction" };
|
||||
CHECK_dict_new( DICT_APPLICATION, &data , NULL, &nas_mipv6);
|
||||
}
|
||||
|
||||
/* AVP section */
|
||||
{
|
||||
/* Loading the derived data formats */
|
||||
|
||||
struct dict_object * Address_type;
|
||||
CHECK_dict_search( DICT_TYPE, TYPE_BY_NAME, "Address", &Address_type);
|
||||
|
||||
/* MIP6-Feature-Vector */
|
||||
{
|
||||
/*
|
||||
|
||||
*/
|
||||
|
||||
struct dict_avp_data data = {
|
||||
124, /* Code */
|
||||
0, /* Vendor */
|
||||
"MIP6-Feature-Vector", /* Name */
|
||||
AVP_FLAG_VENDOR | AVP_FLAG_MANDATORY, /* Fixed flags */
|
||||
AVP_FLAG_MANDATORY, /* Fixed flag values */
|
||||
AVP_TYPE_UNSIGNED64 /* base type of data */
|
||||
};
|
||||
|
||||
CHECK_dict_new( DICT_AVP, &data , NULL, NULL);
|
||||
}
|
||||
|
||||
/* MIP-Home-Agent-Address - RFC 4004 */
|
||||
{
|
||||
/*
|
||||
|
||||
*/
|
||||
|
||||
struct dict_avp_data data = {
|
||||
334, /* Code */
|
||||
0, /* Vendor */
|
||||
"MIP-Home-Agent-Address", /* Name */
|
||||
AVP_FLAG_VENDOR | AVP_FLAG_MANDATORY, /* Fixed flags */
|
||||
AVP_FLAG_MANDATORY, /* Fixed flag values */
|
||||
AVP_TYPE_OCTETSTRING /* base type of data */
|
||||
};
|
||||
|
||||
CHECK_dict_new( DICT_AVP, &data , Address_type, NULL);
|
||||
}
|
||||
|
||||
/* Destination-Host - Base Protocol */
|
||||
|
||||
/* Destination-Realm - Base Protocol */
|
||||
|
||||
/* MIP-Home-Agent-Host - RFC 4004 */
|
||||
{
|
||||
/*
|
||||
The MIP-Home-Agent-Host AVP (AVP Code 348) is of type Grouped and
|
||||
contains the identity of the assigned Home Agent. If the MIP-Home-
|
||||
Agent-Host AVP is present in the AMR, the AAAH MUST copy it into the
|
||||
HAR.
|
||||
|
||||
MIP-Home-Agent-Host ::= < AVP Header: 348 >
|
||||
{ Destination-Realm }
|
||||
{ Destination-Host }
|
||||
* [ AVP ]
|
||||
*/
|
||||
|
||||
struct dict_object * avp;
|
||||
struct dict_avp_data data = {
|
||||
348, /* Code */
|
||||
0, /* Vendor */
|
||||
"MIP-Home-Agent-Host", /* Name */
|
||||
AVP_FLAG_VENDOR | AVP_FLAG_MANDATORY, /* Fixed flags */
|
||||
AVP_FLAG_MANDATORY, /* Fixed flag values */
|
||||
AVP_TYPE_GROUPED /* base type of data */
|
||||
};
|
||||
|
||||
struct local_rules_definition rules[] =
|
||||
{ { "Destination-Realm", RULE_REQUIRED, -1, 1 }
|
||||
,{ "Destination-Host", RULE_REQUIRED, -1, 1 }
|
||||
};
|
||||
|
||||
CHECK_dict_new( DICT_AVP, &data , NULL, &avp);
|
||||
PARSE_loc_rules( rules, avp );
|
||||
}
|
||||
|
||||
/* MIP6-Home-Link-Prefix */
|
||||
{
|
||||
/*
|
||||
|
||||
*/
|
||||
|
||||
struct dict_avp_data data = {
|
||||
125, /* Code */
|
||||
0, /* Vendor */
|
||||
"MIP6-Home-Link-Prefix", /* Name */
|
||||
AVP_FLAG_VENDOR | AVP_FLAG_MANDATORY, /* Fixed flags */
|
||||
AVP_FLAG_MANDATORY, /* Fixed flag values */
|
||||
AVP_TYPE_OCTETSTRING /* base type of data */
|
||||
};
|
||||
|
||||
CHECK_dict_new( DICT_AVP, &data , NULL, NULL);
|
||||
}
|
||||
|
||||
/* MIP6-Agent-Info */
|
||||
{
|
||||
/*
|
||||
|
||||
*/
|
||||
struct dict_object * avp;
|
||||
struct dict_avp_data data = {
|
||||
486, /* Code */
|
||||
0, /* Vendor */
|
||||
"MIP6-Agent-Info", /* Name */
|
||||
AVP_FLAG_VENDOR | AVP_FLAG_MANDATORY, /* Fixed flags */
|
||||
AVP_FLAG_MANDATORY, /* Fixed flag values */
|
||||
AVP_TYPE_GROUPED /* base type of data */
|
||||
};
|
||||
|
||||
struct local_rules_definition rules[] =
|
||||
{ { "MIP-Home-Agent-Address", RULE_OPTIONAL, -1, 2 }
|
||||
,{ "MIP-Home-Agent-Host", RULE_OPTIONAL, -1, 1 }
|
||||
,{ "MIP6-Home-Link-Prefix", RULE_OPTIONAL, -1, 1 }
|
||||
};
|
||||
|
||||
CHECK_dict_new( DICT_AVP, &data , NULL, &avp);
|
||||
PARSE_loc_rules( rules, avp );
|
||||
}
|
||||
}
|
||||
|
||||
LOG_D( "Dictionary Extension 'MIPv6 NAS-to-HAAA Interaction' initialized");
|
||||
return 0;
|
||||
}
|
||||
EXTENSION_ENTRY("dict_nas_mipv6", dict_nas_mipv6_init);
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
@ -2,7 +2,7 @@
|
|||
|
||||
ACLOCAL_AMFLAGS = -I m4
|
||||
|
||||
SUBDIRS = libfdproto libfdcore
|
||||
SUBDIRS = libfdproto libfdcore extensions
|
||||
|
||||
MAINTAINERCLEANFILES = \
|
||||
configure include/freeDiameter/config.h.in \
|
||||
|
|
|
@ -188,8 +188,17 @@ fi
|
|||
#####################
|
||||
|
||||
AC_CONFIG_FILES([include/freeDiameter/freeDiameter-host.h:include/freeDiameter/freeDiameter-host.hin])
|
||||
AC_CONFIG_FILES([libfdcore/Makefile])
|
||||
AC_CONFIG_FILES([libfdproto/Makefile])
|
||||
AC_CONFIG_FILES([libfdcore/Makefile])
|
||||
AC_CONFIG_FILES([extensions/dbg_msg_dumps/Makefile])
|
||||
AC_CONFIG_FILES([extensions/dict_rfc5777/Makefile])
|
||||
AC_CONFIG_FILES([extensions/dict_mip6i/Makefile])
|
||||
AC_CONFIG_FILES([extensions/dict_nasreq/Makefile])
|
||||
AC_CONFIG_FILES([extensions/dict_nas_mipv6/Makefile])
|
||||
AC_CONFIG_FILES([extensions/dict_dcca/Makefile])
|
||||
AC_CONFIG_FILES([extensions/dict_dcca_3gpp/Makefile])
|
||||
AC_CONFIG_FILES([extensions/dict_s6a/Makefile])
|
||||
AC_CONFIG_FILES([extensions/Makefile])
|
||||
AC_CONFIG_FILES([Makefile])
|
||||
AC_OUTPUT
|
||||
|
||||
|
|
|
@ -6,18 +6,18 @@ dbg_msg_dumps_la_SOURCES = \
|
|||
dbg_msg_dumps.c
|
||||
|
||||
dbg_msg_dumps_la_DEPENDENCIES = \
|
||||
$(top_srcdir)/lib/@FREEDIAMETER_DIR@/libfdcore/libfdcore.la \
|
||||
$(top_srcdir)/lib/@FREEDIAMETER_DIR@/libfdproto/libfdproto.la
|
||||
$(top_srcdir)/libfdcore/libfdcore.la \
|
||||
$(top_srcdir)/libfdproto/libfdproto.la
|
||||
|
||||
dbg_msg_dumps_la_LIBADD = \
|
||||
$(top_srcdir)/lib/@FREEDIAMETER_DIR@/libfdcore/libfdcore.la \
|
||||
$(top_srcdir)/lib/@FREEDIAMETER_DIR@/libfdproto/libfdproto.la
|
||||
$(top_srcdir)/libfdcore/libfdcore.la \
|
||||
$(top_srcdir)/libfdproto/libfdproto.la
|
||||
|
||||
AM_LDFLAGS = \
|
||||
-module -avoid-version -shared
|
||||
|
||||
AM_CPPFLAGS = \
|
||||
-I$(top_srcdir)/lib/@FREEDIAMETER_DIR@/include
|
||||
-I$(top_srcdir)/include
|
||||
|
||||
AM_CFLAGS = \
|
||||
-Wall -Werror
|
|
@ -2,7 +2,7 @@
|
|||
* Software License Agreement (BSD License) *
|
||||
* Author: Sebastien Decugis <sdecugis@freediameter.net> *
|
||||
* *
|
||||
* Copyright (c) 2015, WIDE Project and NICT *
|
||||
* Copyright (c) 2013, WIDE Project and NICT *
|
||||
* All rights reserved. *
|
||||
* *
|
||||
* Redistribution and use of this software in source and binary forms, with or without modification, are *
|
||||
|
@ -92,7 +92,7 @@ static void md_hook_cb_tree(enum fd_hook_type type, struct msg * msg, struct pee
|
|||
case HOOK_MESSAGE_PARSING_ERROR:
|
||||
if (msg) {
|
||||
DiamId_t id = NULL;
|
||||
if (fd_msg_source_get( msg, &id, NULL ))
|
||||
if (!fd_msg_source_get( msg, &id, NULL ))
|
||||
id = (DiamId_t)"<error getting source>";
|
||||
if (!id)
|
||||
id = (DiamId_t)"<local>";
|
||||
|
@ -104,10 +104,6 @@ static void md_hook_cb_tree(enum fd_hook_type type, struct msg * msg, struct pee
|
|||
LOG_E("PARSING ERROR: %zdB msg from '%s': %s", rcv_data->length, peer_name, buf);
|
||||
}
|
||||
break;
|
||||
case HOOK_MESSAGE_PARSING_ERROR2:
|
||||
LOG_E("PARSING ERROR, returning:");
|
||||
LOG_SPLIT(FD_LOG_ERROR, " ", buf, NULL);
|
||||
break;
|
||||
case HOOK_MESSAGE_ROUTING_ERROR:
|
||||
LOG_E("ROUTING ERROR '%s' for: ", (char *)other);
|
||||
LOG_SPLIT(FD_LOG_ERROR, " ", buf, NULL);
|
||||
|
@ -122,10 +118,6 @@ static void md_hook_cb_tree(enum fd_hook_type type, struct msg * msg, struct pee
|
|||
LOG_N("RCV from '%s':", peer_name);
|
||||
LOG_SPLIT(FD_LOG_NOTICE, " ", buf, NULL);
|
||||
break;
|
||||
case HOOK_MESSAGE_SENDING:
|
||||
LOG_N("SNDING to '%s':", peer_name);
|
||||
LOG_SPLIT(FD_LOG_NOTICE, " ", buf, NULL);
|
||||
break;
|
||||
case HOOK_MESSAGE_SENT:
|
||||
LOG_N("SND to '%s':", peer_name);
|
||||
LOG_SPLIT(FD_LOG_NOTICE, " ", buf, NULL);
|
||||
|
@ -164,8 +156,8 @@ static void md_hook_cb_tree(enum fd_hook_type type, struct msg * msg, struct pee
|
|||
break;
|
||||
|
||||
/* Not handled */
|
||||
case HOOK_DATA_RECEIVED:
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
CHECK_POSIX_DO( pthread_mutex_unlock(&mtx), );
|
||||
|
@ -190,7 +182,7 @@ static void md_hook_cb_full(enum fd_hook_type type, struct msg * msg, struct pee
|
|||
case HOOK_MESSAGE_PARSING_ERROR:
|
||||
if (msg) {
|
||||
DiamId_t id = NULL;
|
||||
if (fd_msg_source_get( msg, &id, NULL ))
|
||||
if (!fd_msg_source_get( msg, &id, NULL ))
|
||||
id = (DiamId_t)"<error getting source>";
|
||||
if (!id)
|
||||
id = (DiamId_t)"<local>";
|
||||
|
@ -201,9 +193,6 @@ static void md_hook_cb_full(enum fd_hook_type type, struct msg * msg, struct pee
|
|||
LOG_E("PARSING ERROR: %zdB msg from '%s': %s", rcv_data->length, peer_name, buf);
|
||||
}
|
||||
break;
|
||||
case HOOK_MESSAGE_PARSING_ERROR2:
|
||||
LOG_E("PARSING ERROR, returning: %s", buf);
|
||||
break;
|
||||
case HOOK_MESSAGE_ROUTING_ERROR:
|
||||
LOG_E("ROUTING ERROR '%s' for: %s", (char *)other, buf);
|
||||
break;
|
||||
|
@ -215,9 +204,6 @@ static void md_hook_cb_full(enum fd_hook_type type, struct msg * msg, struct pee
|
|||
case HOOK_MESSAGE_RECEIVED:
|
||||
LOG_N("RCV from '%s': %s", peer_name, buf);
|
||||
break;
|
||||
case HOOK_MESSAGE_SENDING:
|
||||
LOG_N("SNDING to '%s': %s", peer_name, buf);
|
||||
break;
|
||||
case HOOK_MESSAGE_SENT:
|
||||
LOG_N("SND to '%s': %s", peer_name, buf);
|
||||
break;
|
||||
|
@ -249,8 +235,8 @@ static void md_hook_cb_full(enum fd_hook_type type, struct msg * msg, struct pee
|
|||
}
|
||||
break;
|
||||
/* Not handled */
|
||||
case HOOK_DATA_RECEIVED:
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
CHECK_POSIX_DO( pthread_mutex_unlock(&mtx), );
|
||||
|
@ -275,7 +261,7 @@ static void md_hook_cb_compact(enum fd_hook_type type, struct msg * msg, struct
|
|||
case HOOK_MESSAGE_PARSING_ERROR:
|
||||
if (msg) {
|
||||
DiamId_t id = NULL;
|
||||
if (fd_msg_source_get( msg, &id, NULL ))
|
||||
if (!fd_msg_source_get( msg, &id, NULL ))
|
||||
id = (DiamId_t)"<error getting source>";
|
||||
if (!id)
|
||||
id = (DiamId_t)"<local>";
|
||||
|
@ -286,9 +272,6 @@ static void md_hook_cb_compact(enum fd_hook_type type, struct msg * msg, struct
|
|||
LOG_E("PARSING ERROR: %zdB msg from '%s': %s", rcv_data->length, peer_name, buf);
|
||||
}
|
||||
break;
|
||||
case HOOK_MESSAGE_PARSING_ERROR2:
|
||||
LOG_E("PARSING ERROR, returning: %s", buf);
|
||||
break;
|
||||
case HOOK_MESSAGE_ROUTING_ERROR:
|
||||
LOG_E("ROUTING ERROR '%s' for: %s", (char *)other, buf);
|
||||
break;
|
||||
|
@ -300,9 +283,6 @@ static void md_hook_cb_compact(enum fd_hook_type type, struct msg * msg, struct
|
|||
case HOOK_MESSAGE_RECEIVED:
|
||||
LOG_N("RCV from '%s': %s", peer_name, buf);
|
||||
break;
|
||||
case HOOK_MESSAGE_SENDING:
|
||||
LOG_N("SNDING to '%s': %s", peer_name, buf);
|
||||
break;
|
||||
case HOOK_MESSAGE_SENT:
|
||||
LOG_N("SND to '%s': %s", peer_name, buf);
|
||||
break;
|
||||
|
@ -334,8 +314,8 @@ static void md_hook_cb_compact(enum fd_hook_type type, struct msg * msg, struct
|
|||
}
|
||||
break;
|
||||
/* Not handled */
|
||||
case HOOK_DATA_RECEIVED:
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
CHECK_POSIX_DO( pthread_mutex_unlock(&mtx), );
|
||||
|
@ -360,8 +340,8 @@ static int md_main(char * conffile)
|
|||
return EINVAL; });
|
||||
}
|
||||
|
||||
mask_errors = HOOK_MASK( HOOK_MESSAGE_FAILOVER, HOOK_MESSAGE_PARSING_ERROR, HOOK_MESSAGE_PARSING_ERROR2, HOOK_MESSAGE_ROUTING_ERROR, HOOK_MESSAGE_DROPPED );
|
||||
mask_sndrcv = HOOK_MASK( HOOK_MESSAGE_RECEIVED, HOOK_MESSAGE_SENT ); /* We don t access SENDING hook here */
|
||||
mask_errors = HOOK_MASK( HOOK_MESSAGE_FAILOVER, HOOK_MESSAGE_PARSING_ERROR, HOOK_MESSAGE_ROUTING_ERROR, HOOK_MESSAGE_DROPPED );
|
||||
mask_sndrcv = HOOK_MASK( HOOK_MESSAGE_RECEIVED, HOOK_MESSAGE_SENT );
|
||||
mask_routing= HOOK_MASK( HOOK_MESSAGE_LOCAL, HOOK_MESSAGE_ROUTING_FORWARD, HOOK_MESSAGE_ROUTING_LOCAL );
|
||||
mask_peers = HOOK_MASK( HOOK_PEER_CONNECT_FAILED, HOOK_PEER_CONNECT_SUCCESS );
|
||||
|
||||
|
|
|
@ -6,18 +6,18 @@ dict_dcca_la_SOURCES = \
|
|||
dict_dcca.c
|
||||
|
||||
dict_dcca_la_DEPENDENCIES = \
|
||||
$(top_srcdir)/lib/@FREEDIAMETER_DIR@/libfdcore/libfdcore.la \
|
||||
$(top_srcdir)/lib/@FREEDIAMETER_DIR@/libfdproto/libfdproto.la
|
||||
$(top_srcdir)/libfdcore/libfdcore.la \
|
||||
$(top_srcdir)/libfdproto/libfdproto.la
|
||||
|
||||
dict_dcca_la_LIBADD = \
|
||||
$(top_srcdir)/lib/@FREEDIAMETER_DIR@/libfdcore/libfdcore.la \
|
||||
$(top_srcdir)/lib/@FREEDIAMETER_DIR@/libfdproto/libfdproto.la
|
||||
$(top_srcdir)/libfdcore/libfdcore.la \
|
||||
$(top_srcdir)/libfdproto/libfdproto.la
|
||||
|
||||
AM_LDFLAGS = \
|
||||
-module -avoid-version -shared
|
||||
|
||||
AM_CPPFLAGS = \
|
||||
-I$(top_srcdir)/lib/@FREEDIAMETER_DIR@/include
|
||||
-I$(top_srcdir)/include
|
||||
|
||||
AM_CFLAGS = \
|
||||
-Wall -Werror
|
|
@ -69,11 +69,25 @@ static int dict_dcca_entry(char * conffile)
|
|||
|
||||
/* Applications section */
|
||||
{
|
||||
#if 0 /* modified by acetcom */
|
||||
/* DCCA */
|
||||
{
|
||||
struct dict_application_data data = { 4, "Diameter Credit Control Application" };
|
||||
CHECK_dict_new( DICT_APPLICATION, &data, NULL, &dcca);
|
||||
}
|
||||
#else
|
||||
/* Create the vendors */
|
||||
{
|
||||
struct dict_vendor_data vendor_data = { 10415, "3GPP" };
|
||||
CHECK_FCT(fd_dict_new(fd_g_config->cnf_dict, DICT_VENDOR, &vendor_data, NULL, NULL));
|
||||
}
|
||||
{
|
||||
struct dict_object * vendor;
|
||||
CHECK_FCT(fd_dict_search(fd_g_config->cnf_dict, DICT_VENDOR, VENDOR_BY_NAME, "3GPP", &vendor, ENOENT));
|
||||
struct dict_application_data app_data = { 16777238, "Gx" };
|
||||
CHECK_FCT(fd_dict_new(fd_g_config->cnf_dict, DICT_APPLICATION, &app_data, vendor, &dcca));
|
||||
}
|
||||
#endif /* end of modification */
|
||||
}
|
||||
|
||||
/* Result codes */
|
||||
|
@ -1362,7 +1376,7 @@ static int dict_dcca_entry(char * conffile)
|
|||
{ "Origin-Realm", RULE_REQUIRED, -1, 1 },
|
||||
{ "Destination-Realm", RULE_REQUIRED, -1, 1 },
|
||||
{ "Auth-Application-Id", RULE_REQUIRED, -1, 1 },
|
||||
{ "Service-Context-Id", RULE_REQUIRED, -1, 1 },
|
||||
{ "Service-Context-Id", RULE_OPTIONAL, -1, 1 },
|
||||
{ "CC-Request-Type", RULE_REQUIRED, -1, 1 },
|
||||
{ "CC-Request-Number", RULE_REQUIRED, -1, 1 },
|
||||
{ "Destination-Host", RULE_OPTIONAL, -1, 1 },
|
||||
|
@ -1446,7 +1460,7 @@ static int dict_dcca_entry(char * conffile)
|
|||
struct local_rules_definition rules[] =
|
||||
{
|
||||
{ "Session-Id", RULE_FIXED_HEAD, -1, 1 },
|
||||
{ "Result-Code", RULE_REQUIRED, -1, 1 },
|
||||
{ "Result-Code", RULE_OPTIONAL, -1, 1 },
|
||||
{ "Origin-Host", RULE_REQUIRED, -1, 1 },
|
||||
{ "Origin-Realm", RULE_REQUIRED, -1, 1 },
|
||||
{ "Auth-Application-Id", RULE_REQUIRED, -1, 1 },
|
||||
|
|
|
@ -6,18 +6,18 @@ dict_dcca_3gpp_la_SOURCES = \
|
|||
dict_dcca_3gpp.c
|
||||
|
||||
dict_dcca_3gpp_la_DEPENDENCIES = \
|
||||
$(top_srcdir)/lib/@FREEDIAMETER_DIR@/libfdcore/libfdcore.la \
|
||||
$(top_srcdir)/lib/@FREEDIAMETER_DIR@/libfdproto/libfdproto.la
|
||||
$(top_srcdir)/libfdcore/libfdcore.la \
|
||||
$(top_srcdir)/libfdproto/libfdproto.la
|
||||
|
||||
dict_dcca_3gpp_la_LIBADD = \
|
||||
$(top_srcdir)/lib/@FREEDIAMETER_DIR@/libfdcore/libfdcore.la \
|
||||
$(top_srcdir)/lib/@FREEDIAMETER_DIR@/libfdproto/libfdproto.la
|
||||
$(top_srcdir)/libfdcore/libfdcore.la \
|
||||
$(top_srcdir)/libfdproto/libfdproto.la
|
||||
|
||||
AM_LDFLAGS = \
|
||||
-module -avoid-version -shared
|
||||
|
||||
AM_CPPFLAGS = \
|
||||
-I$(top_srcdir)/lib/@FREEDIAMETER_DIR@/include
|
||||
-I$(top_srcdir)/include
|
||||
|
||||
AM_CFLAGS = \
|
||||
-Wall -Werror
|
File diff suppressed because it is too large
Load Diff
|
@ -6,18 +6,18 @@ dict_mip6i_la_SOURCES = \
|
|||
dict_mip6i.c
|
||||
|
||||
dict_mip6i_la_DEPENDENCIES = \
|
||||
$(top_srcdir)/lib/@FREEDIAMETER_DIR@/libfdcore/libfdcore.la \
|
||||
$(top_srcdir)/lib/@FREEDIAMETER_DIR@/libfdproto/libfdproto.la
|
||||
$(top_srcdir)/libfdcore/libfdcore.la \
|
||||
$(top_srcdir)/libfdproto/libfdproto.la
|
||||
|
||||
dict_mip6i_la_LIBADD = \
|
||||
$(top_srcdir)/lib/@FREEDIAMETER_DIR@/libfdcore/libfdcore.la \
|
||||
$(top_srcdir)/lib/@FREEDIAMETER_DIR@/libfdproto/libfdproto.la
|
||||
$(top_srcdir)/libfdcore/libfdcore.la \
|
||||
$(top_srcdir)/libfdproto/libfdproto.la
|
||||
|
||||
AM_LDFLAGS = \
|
||||
-module -avoid-version -shared
|
||||
|
||||
AM_CPPFLAGS = \
|
||||
-I$(top_srcdir)/lib/@FREEDIAMETER_DIR@/include
|
||||
-I$(top_srcdir)/include
|
||||
|
||||
AM_CFLAGS = \
|
||||
-Wall -Werror
|
|
@ -6,18 +6,18 @@ dict_nas_mipv6_la_SOURCES = \
|
|||
dict_nas_mipv6.c
|
||||
|
||||
dict_nas_mipv6_la_DEPENDENCIES = \
|
||||
$(top_srcdir)/lib/@FREEDIAMETER_DIR@/libfdcore/libfdcore.la \
|
||||
$(top_srcdir)/lib/@FREEDIAMETER_DIR@/libfdproto/libfdproto.la
|
||||
$(top_srcdir)/libfdcore/libfdcore.la \
|
||||
$(top_srcdir)/libfdproto/libfdproto.la
|
||||
|
||||
dict_nas_mipv6_la_LIBADD = \
|
||||
$(top_srcdir)/lib/@FREEDIAMETER_DIR@/libfdcore/libfdcore.la \
|
||||
$(top_srcdir)/lib/@FREEDIAMETER_DIR@/libfdproto/libfdproto.la
|
||||
$(top_srcdir)/libfdcore/libfdcore.la \
|
||||
$(top_srcdir)/libfdproto/libfdproto.la
|
||||
|
||||
AM_LDFLAGS = \
|
||||
-module -avoid-version -shared
|
||||
|
||||
AM_CPPFLAGS = \
|
||||
-I$(top_srcdir)/lib/@FREEDIAMETER_DIR@/include
|
||||
-I$(top_srcdir)/include
|
||||
|
||||
AM_CFLAGS = \
|
||||
-Wall -Werror
|
|
@ -6,18 +6,18 @@ dict_nasreq_la_SOURCES = \
|
|||
dict_nasreq.c
|
||||
|
||||
dict_nasreq_la_DEPENDENCIES = \
|
||||
$(top_srcdir)/lib/@FREEDIAMETER_DIR@/libfdcore/libfdcore.la \
|
||||
$(top_srcdir)/lib/@FREEDIAMETER_DIR@/libfdproto/libfdproto.la
|
||||
$(top_srcdir)/libfdcore/libfdcore.la \
|
||||
$(top_srcdir)/libfdproto/libfdproto.la
|
||||
|
||||
dict_nasreq_la_LIBADD = \
|
||||
$(top_srcdir)/lib/@FREEDIAMETER_DIR@/libfdcore/libfdcore.la \
|
||||
$(top_srcdir)/lib/@FREEDIAMETER_DIR@/libfdproto/libfdproto.la
|
||||
$(top_srcdir)/libfdcore/libfdcore.la \
|
||||
$(top_srcdir)/libfdproto/libfdproto.la
|
||||
|
||||
AM_LDFLAGS = \
|
||||
-module -avoid-version -shared
|
||||
|
||||
AM_CPPFLAGS = \
|
||||
-I$(top_srcdir)/lib/@FREEDIAMETER_DIR@/include
|
||||
-I$(top_srcdir)/include
|
||||
|
||||
AM_CFLAGS = \
|
||||
-Wall -Werror
|
|
@ -3013,7 +3013,7 @@ static int dnr_entry(char * conffile)
|
|||
,{ "Origin-Host", RULE_REQUIRED, -1, 1 }
|
||||
,{ "Origin-Realm", RULE_REQUIRED, -1, 1 }
|
||||
,{ "Destination-Realm", RULE_REQUIRED, -1, 1 }
|
||||
,{ "Auth-Request-Type", RULE_REQUIRED, -1, 1 }
|
||||
,{ "Auth-Request-Type", RULE_OPTIONAL, -1, 1 }
|
||||
,{ "Destination-Host", RULE_OPTIONAL, -1, 1 }
|
||||
,{ "NAS-Identifier", RULE_OPTIONAL, -1, 1 }
|
||||
,{ "NAS-IP-Address", RULE_OPTIONAL, -1, 1 }
|
||||
|
@ -3169,7 +3169,7 @@ static int dnr_entry(char * conffile)
|
|||
{ { "Session-Id", RULE_FIXED_HEAD, -1, 1 }
|
||||
,{ "Auth-Application-Id", RULE_REQUIRED, -1, 1 }
|
||||
,{ "Auth-Request-Type", RULE_REQUIRED, -1, 1 }
|
||||
,{ "Result-Code", RULE_REQUIRED, -1, 1 }
|
||||
,{ "Result-Code", RULE_OPTIONAL, -1, 1 }
|
||||
,{ "Origin-Host", RULE_REQUIRED, -1, 1 }
|
||||
,{ "Origin-Realm", RULE_REQUIRED, -1, 1 }
|
||||
,{ "User-Name", RULE_OPTIONAL, -1, 1 }
|
||||
|
|
|
@ -6,18 +6,18 @@ dict_rfc5777_la_SOURCES = \
|
|||
dict_rfc5777.c
|
||||
|
||||
dict_rfc5777_la_DEPENDENCIES = \
|
||||
$(top_srcdir)/lib/@FREEDIAMETER_DIR@/libfdcore/libfdcore.la \
|
||||
$(top_srcdir)/lib/@FREEDIAMETER_DIR@/libfdproto/libfdproto.la
|
||||
$(top_srcdir)/libfdcore/libfdcore.la \
|
||||
$(top_srcdir)/libfdproto/libfdproto.la
|
||||
|
||||
dict_rfc5777_la_LIBADD = \
|
||||
$(top_srcdir)/lib/@FREEDIAMETER_DIR@/libfdcore/libfdcore.la \
|
||||
$(top_srcdir)/lib/@FREEDIAMETER_DIR@/libfdproto/libfdproto.la
|
||||
$(top_srcdir)/libfdcore/libfdcore.la \
|
||||
$(top_srcdir)/libfdproto/libfdproto.la
|
||||
|
||||
AM_LDFLAGS = \
|
||||
-module -avoid-version -shared
|
||||
|
||||
AM_CPPFLAGS = \
|
||||
-I$(top_srcdir)/lib/@FREEDIAMETER_DIR@/include
|
||||
-I$(top_srcdir)/include
|
||||
|
||||
AM_CFLAGS = \
|
||||
-Wall -Werror
|
|
@ -6,18 +6,18 @@ dict_s6a_la_SOURCES = \
|
|||
dict_s6a.c
|
||||
|
||||
dict_s6a_la_DEPENDENCIES = \
|
||||
$(top_srcdir)/lib/@FREEDIAMETER_DIR@/libfdcore/libfdcore.la \
|
||||
$(top_srcdir)/lib/@FREEDIAMETER_DIR@/libfdproto/libfdproto.la
|
||||
$(top_srcdir)/libfdcore/libfdcore.la \
|
||||
$(top_srcdir)/libfdproto/libfdproto.la
|
||||
|
||||
dict_s6a_la_LIBADD = \
|
||||
$(top_srcdir)/lib/@FREEDIAMETER_DIR@/libfdcore/libfdcore.la \
|
||||
$(top_srcdir)/lib/@FREEDIAMETER_DIR@/libfdproto/libfdproto.la
|
||||
$(top_srcdir)/libfdcore/libfdcore.la \
|
||||
$(top_srcdir)/libfdproto/libfdproto.la
|
||||
|
||||
AM_LDFLAGS = \
|
||||
-module -avoid-version -shared
|
||||
|
||||
AM_CPPFLAGS = \
|
||||
-I$(top_srcdir)/lib/@FREEDIAMETER_DIR@/include
|
||||
-I$(top_srcdir)/include
|
||||
|
||||
AM_CFLAGS = \
|
||||
-Wall -Werror
|
Loading…
Reference in New Issue