Openflow: Add support of openflow 1.5 (v6)
Copy from dissector 1.4 (v5) Bug: 13702 Change-Id: I2ae5b620e6ff1626c69f8fac6184244399e297de Reviewed-on: https://code.wireshark.org/review/21641 Reviewed-by: Anders Broman <a.broman58@gmail.com>
This commit is contained in:
parent
d5635bcb0a
commit
8082e7ceea
|
@ -1017,6 +1017,7 @@ set(DISSECTOR_SRC
|
|||
packet-openflow_v1.c
|
||||
packet-openflow_v4.c
|
||||
packet-openflow_v5.c
|
||||
packet-openflow_v6.c
|
||||
packet-opensafety.c
|
||||
packet-openthread.c
|
||||
packet-openvpn.c
|
||||
|
|
|
@ -1039,6 +1039,7 @@ DISSECTOR_SRC = \
|
|||
packet-openflow_v1.c \
|
||||
packet-openflow_v4.c \
|
||||
packet-openflow_v5.c \
|
||||
packet-openflow_v6.c \
|
||||
packet-opensafety.c \
|
||||
packet-openthread.c \
|
||||
packet-openvpn.c \
|
||||
|
|
|
@ -44,6 +44,7 @@ static dissector_handle_t openflow_handle;
|
|||
static dissector_handle_t openflow_v1_handle;
|
||||
static dissector_handle_t openflow_v4_handle;
|
||||
static dissector_handle_t openflow_v5_handle;
|
||||
static dissector_handle_t openflow_v6_handle;
|
||||
|
||||
/* Initialize the protocol and registered fields */
|
||||
static int proto_openflow = -1;
|
||||
|
@ -58,6 +59,7 @@ static gboolean openflow_desegment = TRUE;
|
|||
#define OFP_VERSION_1_2 3
|
||||
#define OFP_VERSION_1_3 4
|
||||
#define OFP_VERSION_1_4 5
|
||||
#define OFP_VERSION_1_5 6
|
||||
|
||||
static const value_string openflow_version_values[] = {
|
||||
{ 0x01, "1.0" },
|
||||
|
@ -97,6 +99,9 @@ dissect_openflow_tcp_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, vo
|
|||
case OFP_VERSION_1_4:
|
||||
call_dissector(openflow_v5_handle, tvb, pinfo, tree);
|
||||
break;
|
||||
case OFP_VERSION_1_5:
|
||||
call_dissector(openflow_v6_handle, tvb, pinfo, tree);
|
||||
break;
|
||||
default:
|
||||
ti = proto_tree_add_item(tree, hf_openflow_version, tvb, offset, 1, ENC_BIG_ENDIAN);
|
||||
expert_add_info(pinfo, ti, &ei_openflow_version);
|
||||
|
@ -196,6 +201,7 @@ proto_reg_handoff_openflow(void)
|
|||
openflow_v1_handle = find_dissector_add_dependency("openflow_v1", proto_openflow);
|
||||
openflow_v4_handle = find_dissector_add_dependency("openflow_v4", proto_openflow);
|
||||
openflow_v5_handle = find_dissector_add_dependency("openflow_v5", proto_openflow);
|
||||
openflow_v6_handle = find_dissector_add_dependency("openflow_v6", proto_openflow);
|
||||
}
|
||||
|
||||
/*
|
||||
|
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue