1 /* Do not modify this file. */
2 /* It is created automatically by the ASN.1 to Wireshark dissector compiler */
4 /* ../../tools/asn2wrs.py -b -e -p ros -c ./ros.cnf -s ./packet-ros-template -D . ros.asn Remote-Operations-Information-Objects.asn */
6 /* Input file: packet-ros-template.h */
8 #line 1 "packet-ros-template.h"
10 * Routines for ROS packet dissection
15 * Wireshark - Network traffic analyzer
16 * By Gerald Combs <gerald@wireshark.org>
17 * Copyright 1998 Gerald Combs
19 * This program is free software; you can redistribute it and/or
20 * modify it under the terms of the GNU General Public License
21 * as published by the Free Software Foundation; either version 2
22 * of the License, or (at your option) any later version.
24 * This program is distributed in the hope that it will be useful,
25 * but WITHOUT ANY WARRANTY; without even the implied warranty of
26 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
27 * GNU General Public License for more details.
29 * You should have received a copy of the GNU General Public License
30 * along with this program; if not, write to the Free Software
31 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
38 /*--- Included file: packet-ros-exp.h ---*/
39 #line 1 "packet-ros-exp.h"
40 extern const value_string ros_ROS_vals[];
41 extern const value_string ros_InvokeId_vals[];
42 extern const value_string ros_Code_vals[];
43 int dissect_ros_ROS(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
44 int dissect_ros_InvokeId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
45 int dissect_ros_Code(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
47 /*--- End of included file: packet-ros-exp.h ---*/
48 #line 30 "packet-ros-template.h"
50 # include "packet-ses.h"
52 /* for use in the SESSION_DATA_STRUCTURE ros_op argument
53 top byte indicates ROS invocation
54 bottom three bytes indicate operation code */
56 # define ROS_OP_MASK 0xff000000
58 # define ROS_OP_PDU_MASK 0xf0000000
59 # define ROS_OP_ARGUMENT 0x10000000
60 # define ROS_OP_RESULT 0x20000000
61 # define ROS_OP_ERROR 0x30000000
62 # define ROS_OP_REJECT 0x40000000
64 # define ROS_OP_TYPE_MASK 0x0f000000
65 # define ROS_OP_BIND 0x01000000
66 # define ROS_OP_UNBIND 0x02000000
67 # define ROS_OP_INVOKE 0x03000000
69 # define ROS_OP_OPCODE_MASK (~ROS_OP_MASK)
71 # define op_ros_bind (-1) /* pseudo operation code for asn2wrs generated binds */
72 # define err_ros_bind (-1) /* pseudo eror code for asn2wrs generated binds */
74 typedef struct _ros_opr_t {
76 new_dissector_t arg_pdu;
77 new_dissector_t res_pdu;
80 typedef struct _ros_err_t {
82 new_dissector_t err_pdu;
85 typedef struct _ros_info_t {
89 const value_string *opr_code_strings;
90 const ros_opr_t *opr_code_dissectors;
91 const value_string *err_code_strings;
92 const ros_err_t *err_code_dissectors;
95 void register_ros_oid_dissector_handle(const char *oid, dissector_handle_t dissector, int proto _U_, const char *name, gboolean uses_rtse);
96 void register_ros_protocol_info(const char *oid, const ros_info_t *rinfo, int proto _U_, const char *name, gboolean uses_rtse);
98 #endif /* PACKET_ROS_H */