Add a MAPdialouge dissector
authoretxrab <etxrab@f5534014-38df-0310-8fa8-9805f1628bb7>
Wed, 27 Oct 2004 20:08:44 +0000 (20:08 +0000)
committeretxrab <etxrab@f5534014-38df-0310-8fa8-9805f1628bb7>
Wed, 27 Oct 2004 20:08:44 +0000 (20:08 +0000)
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@12415 f5534014-38df-0310-8fa8-9805f1628bb7

asn1/MAP_Dialouge/MAP_DialoguePDU.asn [new file with mode: 0644]
asn1/MAP_Dialouge/MAP_DialoguePDU.cnf [new file with mode: 0644]
asn1/MAP_Dialouge/packet-MAP-DialoguePDU-template.c [new file with mode: 0644]
asn1/MAP_Dialouge/packet-MAP-DialoguePDU-template.h [new file with mode: 0644]

diff --git a/asn1/MAP_Dialouge/MAP_DialoguePDU.asn b/asn1/MAP_Dialouge/MAP_DialoguePDU.asn
new file mode 100644 (file)
index 0000000..263085c
--- /dev/null
@@ -0,0 +1,103 @@
+MAP-DialogueAS{ ccitt(0) identified-organization(4) etsi(0) mobileDomain(0) gsm-Network(1) 1 map-DialoguePDU(1) version1(1) }\r
+\r
+DEFINITIONS::=\r
+\r
+BEGIN\r
+\r
+MAP-DialoguePDU ::= CHOICE {\r
+\r
+       map-open [0] IMPLICIT SEQUENCE {\r
+\r
+               destinationReference [0] IMPLICIT DestinationReference OPTIONAL,\r
+               originationReference [1] IMPLICIT OriginationReference OPTIONAL,\r
+               ... },\r
+\r
+       map-accept [1] IMPLICIT SEQUENCE {\r
+               ... },\r
+               map-close [2] IMPLICIT SEQUENCE {\r
+               ... },\r
+               map-refuse [3] IMPLICIT SEQUENCE {\r
+                       reason Reason,\r
+                               ... },\r
+               map-userAbort [4] IMPLICIT SEQUENCE {\r
+                       map-UserAbortChoice MAP-UserAbortChoice,\r
+                       ... },\r
+               map-providerAbort [5] IMPLICIT SEQUENCE {\r
+                       map-ProviderAbortReason MAP-ProviderAbortReason,\r
+                       ... }}\r
+-- Ethereal adaptation\r
+ApplicationProcedureCancellation ::= ENUMERATED {\r
+       handoverCancellation (0),\r
+       radioChannelRelease (1),\r
+       networkPathRelease (2),\r
+       callRelease (3),\r
+       associatedProcedureFailure (4),\r
+       tandemDialogueRelease (5),\r
+       remoteOperationsFailure (6)\r
+}\r
+\r
+\r
+ResourceUnavailable ::= ENUMERATED {\r
+       shortTermResourceLimitation (0),\r
+       longTermResourceLimitation (1)\r
+}\r
+DestinationReference ::= OCTET STRING\r
+OriginationReference ::= OCTET STRING\r
+-- end ethereal adaptation\r
+       MAP-OpenInfo ::= SEQUENCE {\r
+               destinationReference [0] IMPLICIT DestinationReference OPTIONAL,\r
+               originationReference [1] IMPLICIT OriginationReference OPTIONAL,\r
+       ... }\r
+\r
+\r
+       MAP-AcceptInfo ::= SEQUENCE {\r
+       ... }\r
+\r
+\r
+       MAP-CloseInfo ::= SEQUENCE {\r
+       ... }\r
+\r
+\r
+       MAP-RefuseInfo ::= SEQUENCE {\r
+               reason Reason,\r
+               ... }\r
+\r
+       Reason ::= ENUMERATED {\r
+               noReasonGiven (0),\r
+               invalidDestinationReference (1),\r
+               invalidOriginatingReference (2)}\r
+\r
+       MAP-UserAbortInfo ::= SEQUENCE {\r
+               map-UserAbortChoice MAP-UserAbortChoice,\r
+       ... }\r
+\r
+MAP-UserAbortChoice ::= CHOICE {\r
+       userSpecificReason [0] IMPLICIT NULL,\r
+       userResourceLimitation [1] IMPLICIT NULL,\r
+       resourceUnavailable [2] IMPLICIT ResourceUnavailable,\r
+       applicationProcedureCancellation [3] IMPLICIT ApplicationProcedureCancellation\r
+}\r
+\r
+ResourceUnavailableReason ::= ENUMERATED {\r
+       shortTermResourceLimitation (0),\r
+       longTermResourceLimitation (1)\r
+}\r
+\r
+ProcedureCancellationReason ::= ENUMERATED {\r
+       handoverCancellation (0),\r
+       radioChannelRelease (1),\r
+       networkPathRelease (2),\r
+       callRelease (3),\r
+       associatedProcedureFailure (4),\r
+       tandemDialogueRelease (5),\r
+       remoteOperationsFailure (6)\r
+}\r
+\r
+MAP-ProviderAbortInfo ::= SEQUENCE {\r
+       map-ProviderAbortReason MAP-ProviderAbortReason,\r
+... }\r
+\r
+MAP-ProviderAbortReason ::= ENUMERATED {\r
+       abnormalDialogue (0),\r
+       invalidPDU (1)}\r
+END
\ No newline at end of file
diff --git a/asn1/MAP_Dialouge/MAP_DialoguePDU.cnf b/asn1/MAP_Dialouge/MAP_DialoguePDU.cnf
new file mode 100644 (file)
index 0000000..d9ca6bb
--- /dev/null
@@ -0,0 +1,20 @@
+# gsm_map.cnf\r
+# gsm_map conformation file\r
+\r
+# $Id: gsm_map.cnf 12205 2004-10-05 09:50:19Z etxrab $\r
+\r
+#.MODULE_IMPORT\r
+\r
+#.EXPORTS\r
+\r
+#.PDU\r
+\r
+#.NO_EMIT\r
+\r
+#.TYPE_RENAME\r
+\r
+#.FIELD_RENAME\r
+\r
+#.END\r
+\r
+\r
diff --git a/asn1/MAP_Dialouge/packet-MAP-DialoguePDU-template.c b/asn1/MAP_Dialouge/packet-MAP-DialoguePDU-template.c
new file mode 100644 (file)
index 0000000..45fee6e
--- /dev/null
@@ -0,0 +1,85 @@
+/* packet-MAP_DialoguePDU_asn1.c\r
+ * Routines for MAP_DialoguePDU packet dissection\r
+ *\r
+ * $Id: packet-MAP_DialoguePDU_asn1-template.c 12203 2004-10-05 09:18:55Z guy $\r
+ *\r
+ * Ethereal - Network traffic analyzer\r
+ * By Gerald Combs <gerald@ethereal.com>\r
+ * Copyright 1998 Gerald Combs\r
+ *\r
+ * This program is free software; you can redistribute it and/or\r
+ * modify it under the terms of the GNU General Public License\r
+ * as published by the Free Software Foundation; either version 2\r
+ * of the License, or (at your option) any later version.\r
+ *\r
+ * This program is distributed in the hope that it will be useful,\r
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
+ * GNU General Public License for more details.\r
+ *\r
+ * You should have received a copy of the GNU General Public License\r
+ * along with this program; if not, write to the Free Software\r
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.\r
+ */\r
+\r
+#ifdef HAVE_CONFIG_H\r
+# include "config.h"\r
+#endif\r
+\r
+#include <glib.h>\r
+#include <epan/packet.h>\r
+#include <epan/conversation.h>\r
+\r
+#include <stdio.h>\r
+#include <string.h>\r
+\r
+#include "packet-ber.h"\r
+\r
+#define PNAME  "MAP_DialoguePDU"\r
+#define PSNAME "MAP_DialoguePDU"\r
+#define PFNAME "MAP_DialoguePDU"\r
+\r
+/* Initialize the protocol and registered fields */\r
+int proto_MAP_DialoguePDU = -1;\r
+#include "packet-MAP_DialoguePDU-hf.c"\r
+\r
+/* Initialize the subtree pointers */\r
+#include "packet-MAP_DialoguePDU-ett.c"\r
+\r
+#include "packet-MAP_DialoguePDU-fn.c"\r
+\r
+dissect_MAP_Dialogue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)\r
+{\r
+           dissect_MAP_DialoguePDU_MAP_DialoguePDU(FALSE, tvb, 0, pinfo, parent_tree, -1);\r
+}\r
+\r
+/*--- proto_register_MAP_DialoguePDU -------------------------------------------*/\r
+void proto_register_MAP_DialoguePDU(void) {\r
+\r
+  /* List of fields */\r
+  static hf_register_info hf[] = {\r
+#include "packet-MAP_DialoguePDU-hfarr.c"\r
+  };\r
+\r
+  /* List of subtrees */\r
+  static gint *ett[] = {\r
+#include "packet-MAP_DialoguePDU-ettarr.c"\r
+  };\r
+\r
+  /* Register protocol */\r
+  proto_MAP_DialoguePDU = proto_register_protocol(PNAME, PSNAME, PFNAME);\r
+  register_dissector("MAP_DialoguePDU", dissect_MAP_Dialogue, proto_MAP_DialoguePDU);\r
+  /* Register fields and subtrees */\r
+  proto_register_field_array(proto_MAP_DialoguePDU, hf, array_length(hf));\r
+  proto_register_subtree_array(ett, array_length(ett));\r
+\r
+}\r
+\r
+\r
+/*--- proto_reg_handoff_MAP_DialoguePDU ---------------------------------------*/\r
+void proto_reg_handoff_MAP_DialoguePDU(void) {\r
+       register_ber_oid_dissector("0.4.0.0.1.1.1.1", dissect_MAP_Dialogue, proto_MAP_DialoguePDU, \r
+         "itu-t(0) identified-organization(4) etsi(0) mobileDomain(0) gsm-Network(1) abstractSyntax(1) map-DialoguePDU(1) version1(1)");\r
+\r
+}\r
+\r
diff --git a/asn1/MAP_Dialouge/packet-MAP-DialoguePDU-template.h b/asn1/MAP_Dialouge/packet-MAP-DialoguePDU-template.h
new file mode 100644 (file)
index 0000000..04cdf2a
--- /dev/null
@@ -0,0 +1,31 @@
+/* packet-pkinit.h\r
+ * Routines for MAP_DialoguePDU packet dissection\r
+ *\r
+ * $Id: packet-pkinit-template.h 12203 2004-10-05 09:18:55Z guy $\r
+ *\r
+ * Ethereal - Network traffic analyzer\r
+ * By Gerald Combs <gerald@ethereal.com>\r
+ * Copyright 1998 Gerald Combs\r
+ *\r
+ * This program is free software; you can redistribute it and/or\r
+ * modify it under the terms of the GNU General Public License\r
+ * as published by the Free Software Foundation; either version 2\r
+ * of the License, or (at your option) any later version.\r
+ *\r
+ * This program is distributed in the hope that it will be useful,\r
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
+ * GNU General Public License for more details.\r
+ *\r
+ * You should have received a copy of the GNU General Public License\r
+ * along with this program; if not, write to the Free Software\r
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.\r
+ */\r
+\r
+#ifndef PACKET_MAP_DIALOUGEPDU_H\r
+#define PACKET_GSM_MAP_H\r
+\r
+#include "packet-MAP_DialoguePDU-exp.h"*/\r
+\r
+#endif  /* PACKET_MAP_DIALOUGEPDU_H */\r
+\r