aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-cip.h
diff options
context:
space:
mode:
Diffstat (limited to 'epan/dissectors/packet-cip.h')
-rw-r--r--epan/dissectors/packet-cip.h11
1 files changed, 10 insertions, 1 deletions
diff --git a/epan/dissectors/packet-cip.h b/epan/dissectors/packet-cip.h
index a1651a2cc6..7d2821e73f 100644
--- a/epan/dissectors/packet-cip.h
+++ b/epan/dissectors/packet-cip.h
@@ -258,6 +258,7 @@ enum cip_datatype {
cip_short_string,
cip_string,
cip_string2,
+ cip_stringi,
cip_byte,
cip_byte_array,
cip_word,
@@ -270,7 +271,6 @@ enum cip_datatype {
/* Currently not supported */
cip_stringN,
- cip_stringi
};
typedef int attribute_dissector_func(packet_info *pinfo, proto_tree *tree, proto_item *item, tvbuff_t *tvb,
@@ -337,6 +337,15 @@ extern void dissect_epath( tvbuff_t *tvb, packet_info *pinfo, proto_tree *path_t
gboolean generate, gboolean packed, cip_simple_request_info_t* req_data, cip_safety_epath_info_t* safety,
int display_type, proto_item *msp_item,
gboolean is_msp_item);
+
+// Elementary Data Types.
+enum cip_elem_data_types {
+ CIP_STRING_TYPE = 0xD0,
+ CIP_SHORT_STRING_TYPE = 0xDA,
+ CIP_STRING2_TYPE = 0xD5
+};
+extern int dissect_cip_string_type(packet_info *pinfo, proto_tree *tree, proto_item *item, tvbuff_t *tvb, int offset, int hf_type, int string_type);
+
extern void dissect_cip_date_and_time(proto_tree *tree, tvbuff_t *tvb, int offset, int hf_datetime);
extern attribute_info_t* cip_get_attribute(guint class_id, guint instance, guint attribute);
extern void dissect_cip_get_attribute_all_rsp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree,