aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-q708.c
diff options
context:
space:
mode:
authorGerasimos Dimitriadis <dimeg@intracom.gr>2010-05-15 20:14:52 +0000
committerGerasimos Dimitriadis <dimeg@intracom.gr>2010-05-15 20:14:52 +0000
commit682b962e72325451467f1a296d97169cc649f6b3 (patch)
tree276e8546fdc8694c7d289d054d871883e7350ae8 /epan/dissectors/packet-q708.c
parentac1b50ba2ce27ef993539a63e968854899900a03 (diff)
Use binary search when scanning the SANC and ISPC lists; correct a couple of
double entries in the ISPC lists. svn path=/trunk/; revision=32822
Diffstat (limited to 'epan/dissectors/packet-q708.c')
-rw-r--r--epan/dissectors/packet-q708.c16
1 files changed, 9 insertions, 7 deletions
diff --git a/epan/dissectors/packet-q708.c b/epan/dissectors/packet-q708.c
index c186d5e6de..857aaf56be 100644
--- a/epan/dissectors/packet-q708.c
+++ b/epan/dissectors/packet-q708.c
@@ -2318,8 +2318,8 @@ const value_string q708_ispc_point_name[] = {
{ 5700, "PMPSI" },
{ 5701, "KTPSI" },
{ 5702, "KTPSI" },
+ { 5703, "Cornet-AM" },
{ 5704, "Telecom Italia - POP Nantes 1" },
- { 5704, "Cornet-AM" },
{ 5705, "SFR - XA08 - Aubervilliers" },
{ 5706, "Colt 2" },
{ 5707, "Colt 3" },
@@ -6184,7 +6184,6 @@ const value_string q708_ispc_point_name[] = {
{ 16236, "London 4" },
{ 16237, "London 5" },
{ 16238, "London 6" },
- { 16239, "..." },
{ 16239, "Bristol AVN2042-M99" },
{ 16240, "Transatel-Paris" },
{ 16241, "SFR - Paris 2" },
@@ -7666,8 +7665,8 @@ const value_string q708_ispc_operator_name[] = {
{ 5700, "PMF-SAL" },
{ 5701, "K Telecom" },
{ 5702, "K Telecom" },
+ { 5703, "Cornet-AM" },
{ 5704, "Telecom Italia" },
- { 5704, "Cornet-AM" },
{ 5705, "SFR" },
{ 5706, "Colt Telecommunications" },
{ 5707, "Colt Telecommunications" },
@@ -11533,7 +11532,6 @@ const value_string q708_ispc_operator_name[] = {
{ 16237, "Teleglobe International Ltd" },
{ 16238, "Teleglobe International Ltd" },
{ 16239, "Orange" },
- { 16239, "Orange" },
{ 16240, "Transatel" },
{ 16241, "SFR" },
{ 16243, "Bouygues Telecom" },
@@ -11655,6 +11653,10 @@ const value_string q708_ispc_operator_name[] = {
{ 0, NULL }
};
+static value_string_ext q708_ispc_point_name_ext = VALUE_STRING_EXT_INIT(q708_ispc_point_name);
+static value_string_ext q708_ispc_operator_name_ext = VALUE_STRING_EXT_INIT(q708_ispc_operator_name);
+static value_string_ext q708_sanc_areas_ext = VALUE_STRING_EXT_INIT(q708_sanc_areas);
+
/*
* International signalling point codes (i.e. PCs with ni = 0) are allocated by the ITU,
* according to the processes described in Q.708. ITU keeps a database of all registered
@@ -11673,9 +11675,9 @@ analyze_q708_ispc(tvbuff_t *tvb, proto_tree *tree, int offset, int length, guint
val_to_str(sanc, q708_sanc_areas, "Unknown"),
sanc >> 8, sanc & 0xff);
proto_tree_add_string(tree, hf_q708_ispc_name, tvb, offset, length,
- val_to_str(ispc, q708_ispc_point_name, "Unknown"));
+ val_to_str_ext(ispc, &q708_ispc_point_name_ext, "Unknown"));
proto_tree_add_string(tree, hf_q708_ispc_operator_name, tvb, offset, length,
- val_to_str(ispc, q708_ispc_operator_name, "Unknown"));
+ val_to_str_ext(ispc, &q708_ispc_operator_name_ext, "Unknown"));
}
void
@@ -11684,7 +11686,7 @@ proto_register_q708(void)
static hf_register_info hf[] = {
{ &hf_q708_sanc,
{ "Signalling Area Network Code (SANC)","q708.sanc",
- FT_UINT16, BASE_DEC, VALS(q708_sanc_areas), 0x0,
+ FT_UINT16, BASE_DEC | BASE_EXT_STRING, VALS(&q708_sanc_areas_ext), 0x0,
NULL, HFILL }
},
{ &hf_q708_ispc_name,