summaryrefslogtreecommitdiff
path: root/epan/dissectors/packet-i2c.c
diff options
context:
space:
mode:
Diffstat (limited to 'epan/dissectors/packet-i2c.c')
-rw-r--r--epan/dissectors/packet-i2c.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/epan/dissectors/packet-i2c.c b/epan/dissectors/packet-i2c.c
index e11ef026ae..84f369cfb4 100644
--- a/epan/dissectors/packet-i2c.c
+++ b/epan/dissectors/packet-i2c.c
@@ -35,6 +35,7 @@
#include <epan/prefs.h>
#include "packet-i2c.h"
+#include "packet-hdcp.h"
static int proto_i2c = -1;
@@ -48,6 +49,7 @@ static gint ett_i2c = -1;
enum {
SUB_DATA = 0,
SUB_IPMB,
+ SUB_HDCP,
SUB_MAX
};
@@ -178,7 +180,8 @@ sub_check_ipmb(packet_info *pinfo)
static sub_checkfunc_t sub_check[SUB_MAX] = {
NULL, /* raw data */
- sub_check_ipmb /* IPMI */
+ sub_check_ipmb, /* IPMI */
+ sub_check_hdcp /* HDCP */
};
static void
@@ -277,6 +280,7 @@ proto_register_i2c(void)
static const enum_val_t sub_enum_vals[] = {
{ "none", "None (raw I2C)", SUB_DATA },
{ "ipmb", "IPMB", SUB_IPMB },
+ { "hdcp", "HDCP", SUB_HDCP },
{ NULL, NULL, 0 }
};
module_t *m;
@@ -286,7 +290,8 @@ proto_register_i2c(void)
proto_register_subtree_array(ett, array_length(ett));
m = prefs_register_protocol(proto_i2c, NULL);
- prefs_register_enum_preference(m, "type", "Bus type", "How the I2C messages are interpreted",
+ prefs_register_enum_preference(m, "type", "Bus/Data type",
+ "How the I2C messages are interpreted",
&sub_selected, sub_enum_vals, FALSE);
}
@@ -297,6 +302,7 @@ proto_reg_handoff_i2c(void)
sub_handles[SUB_DATA] = find_dissector("data");
sub_handles[SUB_IPMB] = find_dissector("ipmi");
+ sub_handles[SUB_HDCP] = find_dissector("hdcp");
i2c_handle = create_dissector_handle(dissect_i2c, proto_i2c);
dissector_add_uint("wtap_encap", WTAP_ENCAP_I2C, i2c_handle);
}