octsdr-2g-wireshark/application/tool/wireshark/plugins/octasic/octsdr/octvc1/source/octvc1_module_cpp.c

4397 lines
137 KiB
C

/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*\
File: octvc1_module_cpp.c
Copyright (c) 2014 Octasic Inc. All rights reserved.
Description: Contain the wireshark module dissector related functions
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published by
the Free Software Foundation; either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
Release: Octasic Application Development Framework OCTADF-01.00.01-B497 (2014/01/09)
$Octasic_Revision: $
\*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/
/***************************** INCLUDE FILES *******************************/
#include <config.h>
#include <epan/packet.h>
#include "../../../include/oct_ws_macro.h"
#include "../include/module.h"
#include "../include/octvc1_common.h"
#include <cpp/octvc1_cpp_api.h>
/****************************************************************************
MODULE API ENUMERATION STRING VALUES
****************************************************************************/
const value_string vals_tOCTVC1_CPP_UDP_SEARCH_TYPE_ENUM[] =
{
{ cOCTVC1_CPP_UDP_SEARCH_TYPE_ENUM_NONE, "cOCTVC1_CPP_UDP_SEARCH_TYPE_ENUM_NONE" },
{ cOCTVC1_CPP_UDP_SEARCH_TYPE_ENUM_SRCIPUDP, "cOCTVC1_CPP_UDP_SEARCH_TYPE_ENUM_SRCIPUDP" },
{ cOCTVC1_CPP_UDP_SEARCH_TYPE_ENUM_SSRC, "cOCTVC1_CPP_UDP_SEARCH_TYPE_ENUM_SSRC" },
{ cOCTVC1_CPP_UDP_SEARCH_TYPE_ENUM_SRCIPUDP_SSRC, "cOCTVC1_CPP_UDP_SEARCH_TYPE_ENUM_SRCIPUDP_SSRC" },
{ 0, NULL }
};
const value_string vals_tOCTVC1_CPP_TCP_SEARCH_TYPE_ENUM[] =
{
{ cOCTVC1_CPP_TCP_SEARCH_TYPE_ENUM_NONE, "cOCTVC1_CPP_TCP_SEARCH_TYPE_ENUM_NONE" },
{ cOCTVC1_CPP_TCP_SEARCH_TYPE_ENUM_SRCIPTCP, "cOCTVC1_CPP_TCP_SEARCH_TYPE_ENUM_SRCIPTCP" },
{ 0, NULL }
};
const value_string vals_tOCTVC1_CPP_TX_HDR_TYPE_ENUM[] =
{
{ cOCTVC1_CPP_TX_HDR_TYPE_ENUM_ETHERNET, "cOCTVC1_CPP_TX_HDR_TYPE_ENUM_ETHERNET" },
{ cOCTVC1_CPP_TX_HDR_TYPE_ENUM_ETH_PQ, "cOCTVC1_CPP_TX_HDR_TYPE_ENUM_ETH_PQ" },
{ cOCTVC1_CPP_TX_HDR_TYPE_ENUM_LLC, "cOCTVC1_CPP_TX_HDR_TYPE_ENUM_LLC" },
{ cOCTVC1_CPP_TX_HDR_TYPE_ENUM_NLPID, "cOCTVC1_CPP_TX_HDR_TYPE_ENUM_NLPID" },
{ cOCTVC1_CPP_TX_HDR_TYPE_ENUM_SNAP, "cOCTVC1_CPP_TX_HDR_TYPE_ENUM_SNAP" },
{ cOCTVC1_CPP_TX_HDR_TYPE_ENUM_IPV4, "cOCTVC1_CPP_TX_HDR_TYPE_ENUM_IPV4" },
{ cOCTVC1_CPP_TX_HDR_TYPE_ENUM_UDP, "cOCTVC1_CPP_TX_HDR_TYPE_ENUM_UDP" },
{ cOCTVC1_CPP_TX_HDR_TYPE_ENUM_RTP, "cOCTVC1_CPP_TX_HDR_TYPE_ENUM_RTP" },
{ cOCTVC1_CPP_TX_HDR_TYPE_ENUM_IPV6, "cOCTVC1_CPP_TX_HDR_TYPE_ENUM_IPV6" },
{ 0, NULL }
};
const value_string vals_tOCTVC1_CPP_ETHERTYPE_ENUM[] =
{
{ cOCTVC1_CPP_ETHERTYPE_ENUM_ETH_II, "cOCTVC1_CPP_ETHERTYPE_ENUM_ETH_II" },
{ cOCTVC1_CPP_ETHERTYPE_ENUM_IEEE_802_3, "cOCTVC1_CPP_ETHERTYPE_ENUM_IEEE_802_3" },
{ 0, NULL }
};
const value_string vals_tOCTVC1_CPP_DEST_REMOVE_MODE_ENUM[] =
{
{ cOCTVC1_CPP_DEST_REMOVE_MODE_ENUM_SPECIFIC, "cOCTVC1_CPP_DEST_REMOVE_MODE_ENUM_SPECIFIC" },
{ cOCTVC1_CPP_DEST_REMOVE_MODE_ENUM_ALL, "cOCTVC1_CPP_DEST_REMOVE_MODE_ENUM_ALL" },
{ cOCTVC1_CPP_DEST_REMOVE_MODE_ENUM_SPECIFIC_PORT, "cOCTVC1_CPP_DEST_REMOVE_MODE_ENUM_SPECIFIC_PORT" },
{ cOCTVC1_CPP_DEST_REMOVE_MODE_ENUM_SPECIFIC_DEST_OBJ, "cOCTVC1_CPP_DEST_REMOVE_MODE_ENUM_SPECIFIC_DEST_OBJ" },
{ 0, NULL }
};
const value_string vals_tOCTVC1_CPP_DEST_INFO_ENUM[] =
{
{ cOCTVC1_CPP_DEST_INFO_ENUM_OBJ_FIRST, "cOCTVC1_CPP_DEST_INFO_ENUM_OBJ_FIRST" },
{ cOCTVC1_CPP_DEST_INFO_ENUM_OBJ_NEXT, "cOCTVC1_CPP_DEST_INFO_ENUM_OBJ_NEXT" },
{ 0, NULL }
};
/****************************************************************************
COMMON Registered
****************************************************************************/
int ahf_tOCTVC1_CPP_CONFIG_STATIC[15];
tWS_ENTITY_HANDLE ws_htOCTVC1_CPP_CONFIG_STATIC;
void register_tOCTVC1_CPP_CONFIG_STATIC(void)
{
static hf_register_info hf[] =
{
{
&ahf_tOCTVC1_CPP_CONFIG_STATIC[0],
{ "ulMaxDestination", "octvc1.cpp.config_static.ulmaxdestination",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulMaxDestination",HFILL }
},
{
&ahf_tOCTVC1_CPP_CONFIG_STATIC[1],
{ "ulMaxRxUdpPort", "octvc1.cpp.config_static.ulmaxrxudpport",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulMaxRxUdpPort",HFILL }
},
{
&ahf_tOCTVC1_CPP_CONFIG_STATIC[2],
{ "ulMaxRxUdpCnct", "octvc1.cpp.config_static.ulmaxrxudpcnct",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulMaxRxUdpCnct",HFILL }
},
{
&ahf_tOCTVC1_CPP_CONFIG_STATIC[3],
{ "ulMaxTxUdpCnct", "octvc1.cpp.config_static.ulmaxtxudpcnct",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulMaxTxUdpCnct",HFILL }
},
{
&ahf_tOCTVC1_CPP_CONFIG_STATIC[4],
{ "ulMaxRxRtpPort", "octvc1.cpp.config_static.ulmaxrxrtpport",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulMaxRxRtpPort",HFILL }
},
{
&ahf_tOCTVC1_CPP_CONFIG_STATIC[5],
{ "ulMaxRxRtpCnct", "octvc1.cpp.config_static.ulmaxrxrtpcnct",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulMaxRxRtpCnct",HFILL }
},
{
&ahf_tOCTVC1_CPP_CONFIG_STATIC[6],
{ "ulMaxTxRtpCnct", "octvc1.cpp.config_static.ulmaxtxrtpcnct",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulMaxTxRtpCnct",HFILL }
},
{
&ahf_tOCTVC1_CPP_CONFIG_STATIC[7],
{ "ulMaxRxTcpPort", "octvc1.cpp.config_static.ulmaxrxtcpport",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulMaxRxTcpPort",HFILL }
},
{
&ahf_tOCTVC1_CPP_CONFIG_STATIC[8],
{ "ulMaxRxTcpCnct", "octvc1.cpp.config_static.ulmaxrxtcpcnct",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulMaxRxTcpCnct",HFILL }
},
{
&ahf_tOCTVC1_CPP_CONFIG_STATIC[9],
{ "ulMaxRxIpPort", "octvc1.cpp.config_static.ulmaxrxipport",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulMaxRxIpPort",HFILL }
},
{
&ahf_tOCTVC1_CPP_CONFIG_STATIC[10],
{ "ulMaxForwardObj", "octvc1.cpp.config_static.ulmaxforwardobj",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulMaxForwardObj",HFILL }
},
{
&ahf_tOCTVC1_CPP_CONFIG_STATIC[11],
{ "ulIpFragmentIdMask", "octvc1.cpp.config_static.ulipfragmentidmask",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulIpFragmentIdMask",HFILL }
},
{
&ahf_tOCTVC1_CPP_CONFIG_STATIC[12],
{ "ulIpFragmentIdMatch", "octvc1.cpp.config_static.ulipfragmentidmatch",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulIpFragmentIdMatch",HFILL }
},
{
&ahf_tOCTVC1_CPP_CONFIG_STATIC[13],
{ "ulMaxNonEthernetBandwidth", "octvc1.cpp.config_static.ulmaxnonethernetbandwidth",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulMaxNonEthernetBandwidth",HFILL }
},
{
&ahf_tOCTVC1_CPP_CONFIG_STATIC[14],
{ "ulMaxNonUdpBandwidth", "octvc1.cpp.config_static.ulmaxnonudpbandwidth",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulMaxNonUdpBandwidth",HFILL }
},
};
static gint* ett[] =
{
&ws_htOCTVC1_CPP_CONFIG_STATIC.ett
};
proto_register_field_array( proto_octvc1_ctrl, hf, array_length(hf) );
};
int ahf_tOCTVC1_CPP_RX_RTP_PROFILE_ENTRY[3];
tWS_ENTITY_HANDLE ws_htOCTVC1_CPP_RX_RTP_PROFILE_ENTRY;
void register_tOCTVC1_CPP_RX_RTP_PROFILE_ENTRY(void)
{
static hf_register_info hf[] =
{
{
&ahf_tOCTVC1_CPP_RX_RTP_PROFILE_ENTRY[0],
{ "ulPacketEncodeType", "octvc1.cpp.rx_rtp_profile_entry.ulpacketencodetype",
FT_UINT32,BASE_HEX, VALS(vals_tOCTVOCNET_PKT_D_TYPE_ENUM), 0x0,
"ulPacketEncodeType",HFILL }
},
{
&ahf_tOCTVC1_CPP_RX_RTP_PROFILE_ENTRY[1],
{ "ulRtpPayloadType", "octvc1.cpp.rx_rtp_profile_entry.ulrtppayloadtype",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulRtpPayloadType",HFILL }
},
{
&ahf_tOCTVC1_CPP_RX_RTP_PROFILE_ENTRY[2],
{ "ulPktPortIndex", "octvc1.cpp.rx_rtp_profile_entry.ulpktportindex",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulPktPortIndex",HFILL }
},
};
static gint* ett[] =
{
&ws_htOCTVC1_CPP_RX_RTP_PROFILE_ENTRY.ett
};
proto_register_field_array( proto_octvc1_ctrl, hf, array_length(hf) );
};
int ahf_tOCTVC1_CPP_TX_RTP_PROFILE_ENTRY[2];
tWS_ENTITY_HANDLE ws_htOCTVC1_CPP_TX_RTP_PROFILE_ENTRY;
void register_tOCTVC1_CPP_TX_RTP_PROFILE_ENTRY(void)
{
static hf_register_info hf[] =
{
{
&ahf_tOCTVC1_CPP_TX_RTP_PROFILE_ENTRY[0],
{ "ulPacketEncodeType", "octvc1.cpp.tx_rtp_profile_entry.ulpacketencodetype",
FT_UINT32,BASE_HEX, VALS(vals_tOCTVOCNET_PKT_D_TYPE_ENUM), 0x0,
"ulPacketEncodeType",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_RTP_PROFILE_ENTRY[1],
{ "ulRtpPayloadType", "octvc1.cpp.tx_rtp_profile_entry.ulrtppayloadtype",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulRtpPayloadType",HFILL }
},
};
static gint* ett[] =
{
&ws_htOCTVC1_CPP_TX_RTP_PROFILE_ENTRY.ett
};
proto_register_field_array( proto_octvc1_ctrl, hf, array_length(hf) );
};
int ahf_tOCTVC1_CPP_DEST_ENTRY[7];
tWS_ENTITY_HANDLE ws_htOCTVC1_CPP_DEST_ENTRY;
void register_tOCTVC1_CPP_DEST_ENTRY(void)
{
static hf_register_info hf[] =
{
{
&ahf_tOCTVC1_CPP_DEST_ENTRY[0],
{ "hCppObj", "octvc1.cpp.dest_entry.hcppobj",
FT_NONE, BASE_NONE, NULL, 0x0,
"hCppObj",HFILL }
},
{
&ahf_tOCTVC1_CPP_DEST_ENTRY[1],
{ "ulCppObjPort", "octvc1.cpp.dest_entry.ulcppobjport",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulCppObjPort",HFILL }
},
{
&ahf_tOCTVC1_CPP_DEST_ENTRY[2],
{ "hDestObj", "octvc1.cpp.dest_entry.hdestobj",
FT_NONE, BASE_NONE, NULL, 0x0,
"hDestObj",HFILL }
},
{
&ahf_tOCTVC1_CPP_DEST_ENTRY[3],
{ "ulDestObjPort", "octvc1.cpp.dest_entry.uldestobjport",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulDestObjPort",HFILL }
},
{
&ahf_tOCTVC1_CPP_DEST_ENTRY[4],
{ "ulDestObjFifoId", "octvc1.cpp.dest_entry.uldestobjfifoid",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulDestObjFifoId",HFILL }
},
{
&ahf_tOCTVC1_CPP_DEST_ENTRY[5],
{ "DestMacAddress", "octvc1.cpp.dest_entry.destmacaddress",
FT_STRING, BASE_NONE, NULL, 0x0,
"DestMacAddress",HFILL }
},
{
&ahf_tOCTVC1_CPP_DEST_ENTRY[6],
{ "BridgeMacAddress", "octvc1.cpp.dest_entry.bridgemacaddress",
FT_STRING, BASE_NONE, NULL, 0x0,
"BridgeMacAddress",HFILL }
},
};
static gint* ett[] =
{
&ws_htOCTVC1_CPP_DEST_ENTRY.ett
};
proto_register_field_array( proto_octvc1_ctrl, hf, array_length(hf) );
};
int ahf_tOCTVC1_CPP_TX_HDR_COMMON[2];
tWS_ENTITY_HANDLE ws_htOCTVC1_CPP_TX_HDR_COMMON;
void register_tOCTVC1_CPP_TX_HDR_COMMON(void)
{
static hf_register_info hf[] =
{
{
&ahf_tOCTVC1_CPP_TX_HDR_COMMON[0],
{ "ulHeaderType", "octvc1.cpp.tx_hdr_common.ulheadertype",
FT_UINT32,BASE_HEX, VALS(vals_tOCTVC1_CPP_TX_HDR_TYPE_ENUM), 0x0,
"ulHeaderType",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_COMMON[1],
{ "ulHeaderLength", "octvc1.cpp.tx_hdr_common.ulheaderlength",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulHeaderLength",HFILL }
},
};
static gint* ett[] =
{
&ws_htOCTVC1_CPP_TX_HDR_COMMON.ett
};
proto_register_field_array( proto_octvc1_ctrl, hf, array_length(hf) );
};
int ahf_tOCTVC1_CPP_TX_HDR_ETHERNET[5];
tWS_ENTITY_HANDLE ws_htOCTVC1_CPP_TX_HDR_ETHERNET;
void register_tOCTVC1_CPP_TX_HDR_ETHERNET(void)
{
static hf_register_info hf[] =
{
{
&ahf_tOCTVC1_CPP_TX_HDR_ETHERNET[0],
{ "CommonHeader", "octvc1.cpp.tx_hdr_ethernet.commonheader",
FT_NONE, BASE_NONE, NULL, 0x0,
"CommonHeader",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_ETHERNET[1],
{ "ulEthertypeEncoding", "octvc1.cpp.tx_hdr_ethernet.ulethertypeencoding",
FT_UINT32,BASE_HEX, VALS(vals_tOCTVC1_CPP_ETHERTYPE_ENUM), 0x0,
"ulEthertypeEncoding",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_ETHERNET[2],
{ "ulEthertype", "octvc1.cpp.tx_hdr_ethernet.ulethertype",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulEthertype",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_ETHERNET[3],
{ "SourceMacAddr", "octvc1.cpp.tx_hdr_ethernet.sourcemacaddr",
FT_STRING, BASE_NONE, NULL, 0x0,
"SourceMacAddr",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_ETHERNET[4],
{ "DestinationMacAddr", "octvc1.cpp.tx_hdr_ethernet.destinationmacaddr",
FT_STRING, BASE_NONE, NULL, 0x0,
"DestinationMacAddr",HFILL }
},
};
static gint* ett[] =
{
&ws_htOCTVC1_CPP_TX_HDR_ETHERNET.ett
};
proto_register_field_array( proto_octvc1_ctrl, hf, array_length(hf) );
};
int ahf_tOCTVC1_CPP_TX_HDR_ETH_PQ[6];
tWS_ENTITY_HANDLE ws_htOCTVC1_CPP_TX_HDR_ETH_PQ;
void register_tOCTVC1_CPP_TX_HDR_ETH_PQ(void)
{
static hf_register_info hf[] =
{
{
&ahf_tOCTVC1_CPP_TX_HDR_ETH_PQ[0],
{ "CommonHeader", "octvc1.cpp.tx_hdr_eth_pq.commonheader",
FT_NONE, BASE_NONE, NULL, 0x0,
"CommonHeader",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_ETH_PQ[1],
{ "ulEthertypeEncoding", "octvc1.cpp.tx_hdr_eth_pq.ulethertypeencoding",
FT_UINT32,BASE_HEX, VALS(vals_tOCTVC1_CPP_ETHERTYPE_ENUM), 0x0,
"ulEthertypeEncoding",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_ETH_PQ[2],
{ "ulEthertype", "octvc1.cpp.tx_hdr_eth_pq.ulethertype",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulEthertype",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_ETH_PQ[3],
{ "ulTci", "octvc1.cpp.tx_hdr_eth_pq.ultci",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulTci",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_ETH_PQ[4],
{ "SourceMacAddr", "octvc1.cpp.tx_hdr_eth_pq.sourcemacaddr",
FT_STRING, BASE_NONE, NULL, 0x0,
"SourceMacAddr",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_ETH_PQ[5],
{ "DestinationMacAddr", "octvc1.cpp.tx_hdr_eth_pq.destinationmacaddr",
FT_STRING, BASE_NONE, NULL, 0x0,
"DestinationMacAddr",HFILL }
},
};
static gint* ett[] =
{
&ws_htOCTVC1_CPP_TX_HDR_ETH_PQ.ett
};
proto_register_field_array( proto_octvc1_ctrl, hf, array_length(hf) );
};
int ahf_tOCTVC1_CPP_TX_HDR_LLC[2];
tWS_ENTITY_HANDLE ws_htOCTVC1_CPP_TX_HDR_LLC;
void register_tOCTVC1_CPP_TX_HDR_LLC(void)
{
static hf_register_info hf[] =
{
{
&ahf_tOCTVC1_CPP_TX_HDR_LLC[0],
{ "CommonHeader", "octvc1.cpp.tx_hdr_llc.commonheader",
FT_NONE, BASE_NONE, NULL, 0x0,
"CommonHeader",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_LLC[1],
{ "ulLlcValue", "octvc1.cpp.tx_hdr_llc.ulllcvalue",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulLlcValue",HFILL }
},
};
static gint* ett[] =
{
&ws_htOCTVC1_CPP_TX_HDR_LLC.ett
};
proto_register_field_array( proto_octvc1_ctrl, hf, array_length(hf) );
};
int ahf_tOCTVC1_CPP_TX_HDR_NLPID[2];
tWS_ENTITY_HANDLE ws_htOCTVC1_CPP_TX_HDR_NLPID;
void register_tOCTVC1_CPP_TX_HDR_NLPID(void)
{
static hf_register_info hf[] =
{
{
&ahf_tOCTVC1_CPP_TX_HDR_NLPID[0],
{ "CommonHeader", "octvc1.cpp.tx_hdr_nlpid.commonheader",
FT_NONE, BASE_NONE, NULL, 0x0,
"CommonHeader",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_NLPID[1],
{ "ulNlpidValue", "octvc1.cpp.tx_hdr_nlpid.ulnlpidvalue",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulNlpidValue",HFILL }
},
};
static gint* ett[] =
{
&ws_htOCTVC1_CPP_TX_HDR_NLPID.ett
};
proto_register_field_array( proto_octvc1_ctrl, hf, array_length(hf) );
};
int ahf_tOCTVC1_CPP_TX_HDR_SNAP[3];
tWS_ENTITY_HANDLE ws_htOCTVC1_CPP_TX_HDR_SNAP;
void register_tOCTVC1_CPP_TX_HDR_SNAP(void)
{
static hf_register_info hf[] =
{
{
&ahf_tOCTVC1_CPP_TX_HDR_SNAP[0],
{ "CommonHeader", "octvc1.cpp.tx_hdr_snap.commonheader",
FT_NONE, BASE_NONE, NULL, 0x0,
"CommonHeader",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_SNAP[1],
{ "ulOuiValue", "octvc1.cpp.tx_hdr_snap.ulouivalue",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulOuiValue",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_SNAP[2],
{ "ulPidValue", "octvc1.cpp.tx_hdr_snap.ulpidvalue",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulPidValue",HFILL }
},
};
static gint* ett[] =
{
&ws_htOCTVC1_CPP_TX_HDR_SNAP.ett
};
proto_register_field_array( proto_octvc1_ctrl, hf, array_length(hf) );
};
int ahf_tOCTVC1_CPP_TX_HDR_IPV4[10];
tWS_ENTITY_HANDLE ws_htOCTVC1_CPP_TX_HDR_IPV4;
void register_tOCTVC1_CPP_TX_HDR_IPV4(void)
{
static hf_register_info hf[] =
{
{
&ahf_tOCTVC1_CPP_TX_HDR_IPV4[0],
{ "CommonHeader", "octvc1.cpp.tx_hdr_ipv4.commonheader",
FT_NONE, BASE_NONE, NULL, 0x0,
"CommonHeader",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_IPV4[1],
{ "ulTypeOfService", "octvc1.cpp.tx_hdr_ipv4.ultypeofservice",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulTypeOfService",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_IPV4[2],
{ "ulTimeToLive", "octvc1.cpp.tx_hdr_ipv4.ultimetolive",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulTimeToLive",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_IPV4[3],
{ "ulProtocol", "octvc1.cpp.tx_hdr_ipv4.ulprotocol",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulProtocol",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_IPV4[4],
{ "ulFlags", "octvc1.cpp.tx_hdr_ipv4.ulflags",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulFlags",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_IPV4[5],
{ "ulSourceAddr", "octvc1.cpp.tx_hdr_ipv4.ulsourceaddr",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulSourceAddr",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_IPV4[6],
{ "ulDestinationAddr", "octvc1.cpp.tx_hdr_ipv4.uldestinationaddr",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulDestinationAddr",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_IPV4[7],
{ "ulUdpChecksumAddr", "octvc1.cpp.tx_hdr_ipv4.uludpchecksumaddr",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulUdpChecksumAddr",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_IPV4[8],
{ "ulOptionsLength", "octvc1.cpp.tx_hdr_ipv4.uloptionslength",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulOptionsLength",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_IPV4[9],
{ "aulOptions", "octvc1.cpp.tx_hdr_ipv4.auloptions",
FT_UINT32,BASE_HEX, NULL, 0x0,
"aulOptions",HFILL }
},
};
static gint* ett[] =
{
&ws_htOCTVC1_CPP_TX_HDR_IPV4.ett
};
proto_register_field_array( proto_octvc1_ctrl, hf, array_length(hf) );
};
int ahf_tOCTVC1_CPP_TX_HDR_IPV6[8];
tWS_ENTITY_HANDLE ws_htOCTVC1_CPP_TX_HDR_IPV6;
void register_tOCTVC1_CPP_TX_HDR_IPV6(void)
{
static hf_register_info hf[] =
{
{
&ahf_tOCTVC1_CPP_TX_HDR_IPV6[0],
{ "CommonHeader", "octvc1.cpp.tx_hdr_ipv6.commonheader",
FT_NONE, BASE_NONE, NULL, 0x0,
"CommonHeader",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_IPV6[1],
{ "ulTrafficClass", "octvc1.cpp.tx_hdr_ipv6.ultrafficclass",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulTrafficClass",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_IPV6[2],
{ "ulFlowLabel", "octvc1.cpp.tx_hdr_ipv6.ulflowlabel",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulFlowLabel",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_IPV6[3],
{ "ulHopLimit", "octvc1.cpp.tx_hdr_ipv6.ulhoplimit",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulHopLimit",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_IPV6[4],
{ "aulSourceAddr", "octvc1.cpp.tx_hdr_ipv6.aulsourceaddr",
FT_UINT32,BASE_HEX, NULL, 0x0,
"aulSourceAddr",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_IPV6[5],
{ "aulDestinationAddr", "octvc1.cpp.tx_hdr_ipv6.auldestinationaddr",
FT_UINT32,BASE_HEX, NULL, 0x0,
"aulDestinationAddr",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_IPV6[6],
{ "aulUdpChecksumAddr", "octvc1.cpp.tx_hdr_ipv6.auludpchecksumaddr",
FT_UINT32,BASE_HEX, NULL, 0x0,
"aulUdpChecksumAddr",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_IPV6[7],
{ "ulNextHeader", "octvc1.cpp.tx_hdr_ipv6.ulnextheader",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulNextHeader",HFILL }
},
};
static gint* ett[] =
{
&ws_htOCTVC1_CPP_TX_HDR_IPV6.ett
};
proto_register_field_array( proto_octvc1_ctrl, hf, array_length(hf) );
};
int ahf_tOCTVC1_CPP_TX_HDR_UDP[3];
tWS_ENTITY_HANDLE ws_htOCTVC1_CPP_TX_HDR_UDP;
void register_tOCTVC1_CPP_TX_HDR_UDP(void)
{
static hf_register_info hf[] =
{
{
&ahf_tOCTVC1_CPP_TX_HDR_UDP[0],
{ "CommonHeader", "octvc1.cpp.tx_hdr_udp.commonheader",
FT_NONE, BASE_NONE, NULL, 0x0,
"CommonHeader",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_UDP[1],
{ "ulSourcePort", "octvc1.cpp.tx_hdr_udp.ulsourceport",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulSourcePort",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_UDP[2],
{ "ulDestinationPort", "octvc1.cpp.tx_hdr_udp.uldestinationport",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulDestinationPort",HFILL }
},
};
static gint* ett[] =
{
&ws_htOCTVC1_CPP_TX_HDR_UDP.ett
};
proto_register_field_array( proto_octvc1_ctrl, hf, array_length(hf) );
};
int ahf_tOCTVC1_CPP_TX_HDR_RTP[8];
tWS_ENTITY_HANDLE ws_htOCTVC1_CPP_TX_HDR_RTP;
void register_tOCTVC1_CPP_TX_HDR_RTP(void)
{
static hf_register_info hf[] =
{
{
&ahf_tOCTVC1_CPP_TX_HDR_RTP[0],
{ "CommonHeader", "octvc1.cpp.tx_hdr_rtp.commonheader",
FT_NONE, BASE_NONE, NULL, 0x0,
"CommonHeader",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_RTP[1],
{ "ulNumContributingSources", "octvc1.cpp.tx_hdr_rtp.ulnumcontributingsources",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulNumContributingSources",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_RTP[2],
{ "ulSynchronizationSource", "octvc1.cpp.tx_hdr_rtp.ulsynchronizationsource",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulSynchronizationSource",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_RTP[3],
{ "ulExtensionFlag", "octvc1.cpp.tx_hdr_rtp.ulextensionflag",
FT_BOOLEAN, BASE_NONE, NULL, 0x0,
"ulExtensionFlag",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_RTP[4],
{ "ulExtensionType", "octvc1.cpp.tx_hdr_rtp.ulextensiontype",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulExtensionType",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_RTP[5],
{ "ulExtensionLength", "octvc1.cpp.tx_hdr_rtp.ulextensionlength",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulExtensionLength",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_RTP[6],
{ "aulCsrcs", "octvc1.cpp.tx_hdr_rtp.aulcsrcs",
FT_UINT32,BASE_HEX, NULL, 0x0,
"aulCsrcs",HFILL }
},
{
&ahf_tOCTVC1_CPP_TX_HDR_RTP[7],
{ "aulExtensions", "octvc1.cpp.tx_hdr_rtp.aulextensions",
FT_UINT32,BASE_HEX, NULL, 0x0,
"aulExtensions",HFILL }
},
};
static gint* ett[] =
{
&ws_htOCTVC1_CPP_TX_HDR_RTP.ett
};
proto_register_field_array( proto_octvc1_ctrl, hf, array_length(hf) );
};
/****************************************************************************
CMD/RSP Registered
****************************************************************************/
int ahf_tOCTVC1_CPP_MSG_MODULE_ADD_DEST_CMD[9];
tWS_ENTITY_HANDLE ws_htOCTVC1_CPP_MSG_MODULE_ADD_DEST_CMD;
void register_tOCTVC1_CPP_MSG_MODULE_ADD_DEST_CMD(void)
{
static hf_register_info hf[] =
{
{
&ahf_tOCTVC1_CPP_MSG_MODULE_ADD_DEST_CMD[0],
{ "hCppObj", "octvc1.cpp.module.dest.add.hcppobj",
FT_NONE, BASE_NONE, NULL, 0x0,
"hCppObj",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_ADD_DEST_CMD[1],
{ "ulCppObjPort", "octvc1.cpp.module.dest.add.ulcppobjport",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulCppObjPort",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_ADD_DEST_CMD[2],
{ "hDestObj", "octvc1.cpp.module.dest.add.hdestobj",
FT_NONE, BASE_NONE, NULL, 0x0,
"hDestObj",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_ADD_DEST_CMD[3],
{ "ulDestObjPort", "octvc1.cpp.module.dest.add.uldestobjport",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulDestObjPort",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_ADD_DEST_CMD[4],
{ "ulDestObjFifoId", "octvc1.cpp.module.dest.add.uldestobjfifoid",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulDestObjFifoId",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_ADD_DEST_CMD[5],
{ "DestMacAddress", "octvc1.cpp.module.dest.add.destmacaddress",
FT_STRING, BASE_NONE, NULL, 0x0,
"DestMacAddress",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_ADD_DEST_CMD[6],
{ "SrcMacAddress", "octvc1.cpp.module.dest.add.srcmacaddress",
FT_STRING, BASE_NONE, NULL, 0x0,
"SrcMacAddress",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_ADD_DEST_CMD[7],
{ "BridgeMacAddress", "octvc1.cpp.module.dest.add.bridgemacaddress",
FT_STRING, BASE_NONE, NULL, 0x0,
"BridgeMacAddress",HFILL }
},
};
static gint* ett[] =
{
&ws_htOCTVC1_CPP_MSG_MODULE_ADD_DEST_CMD.ett
};
proto_register_field_array( proto_octvc1_ctrl, hf, array_length(hf) );
};
int ahf_tOCTVC1_CPP_MSG_MODULE_ADD_DEST_RSP[2];
tWS_ENTITY_HANDLE ws_htOCTVC1_CPP_MSG_MODULE_ADD_DEST_RSP;
void register_tOCTVC1_CPP_MSG_MODULE_ADD_DEST_RSP(void)
{
static hf_register_info hf[] =
{
{
&ahf_tOCTVC1_CPP_MSG_MODULE_ADD_DEST_RSP[0],
{ "hCppObj", "octvc1.cpp.module.dest.add.hcppobj",
FT_NONE, BASE_NONE, NULL, 0x0,
"hCppObj",HFILL }
},
};
static gint* ett[] =
{
&ws_htOCTVC1_CPP_MSG_MODULE_ADD_DEST_RSP.ett
};
proto_register_field_array( proto_octvc1_ctrl, hf, array_length(hf) );
};
int ahf_tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_CMD[8];
tWS_ENTITY_HANDLE ws_htOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_CMD;
void register_tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_CMD(void)
{
static hf_register_info hf[] =
{
{
&ahf_tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_CMD[0],
{ "ulRemoveMode", "octvc1.cpp.module.dest.remove.ulremovemode",
FT_UINT32,BASE_HEX, VALS(vals_tOCTVC1_CPP_DEST_REMOVE_MODE_ENUM), 0x0,
"ulRemoveMode",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_CMD[1],
{ "hCppObj", "octvc1.cpp.module.dest.remove.hcppobj",
FT_NONE, BASE_NONE, NULL, 0x0,
"hCppObj",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_CMD[2],
{ "ulCppObjPort", "octvc1.cpp.module.dest.remove.ulcppobjport",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulCppObjPort",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_CMD[3],
{ "hDestObj", "octvc1.cpp.module.dest.remove.hdestobj",
FT_NONE, BASE_NONE, NULL, 0x0,
"hDestObj",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_CMD[4],
{ "ulDestObjPort", "octvc1.cpp.module.dest.remove.uldestobjport",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulDestObjPort",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_CMD[5],
{ "ulDestObjFifoId", "octvc1.cpp.module.dest.remove.uldestobjfifoid",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulDestObjFifoId",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_CMD[6],
{ "DestMacAddress", "octvc1.cpp.module.dest.remove.destmacaddress",
FT_STRING, BASE_NONE, NULL, 0x0,
"DestMacAddress",HFILL }
},
};
static gint* ett[] =
{
&ws_htOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_CMD.ett
};
proto_register_field_array( proto_octvc1_ctrl, hf, array_length(hf) );
};
int ahf_tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_RSP[2];
tWS_ENTITY_HANDLE ws_htOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_RSP;
void register_tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_RSP(void)
{
static hf_register_info hf[] =
{
{
&ahf_tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_RSP[0],
{ "ulNumDestRemoved", "octvc1.cpp.module.dest.remove.ulnumdestremoved",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulNumDestRemoved",HFILL }
},
};
static gint* ett[] =
{
&ws_htOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_RSP.ett
};
proto_register_field_array( proto_octvc1_ctrl, hf, array_length(hf) );
};
int ahf_tOCTVC1_CPP_MSG_MODULE_INFO_DEST_CMD[8];
tWS_ENTITY_HANDLE ws_htOCTVC1_CPP_MSG_MODULE_INFO_DEST_CMD;
void register_tOCTVC1_CPP_MSG_MODULE_INFO_DEST_CMD(void)
{
static hf_register_info hf[] =
{
{
&ahf_tOCTVC1_CPP_MSG_MODULE_INFO_DEST_CMD[0],
{ "ulGetType", "octvc1.cpp.module.dest.info.ulgettype",
FT_UINT32,BASE_HEX, VALS(vals_tOCTVC1_CPP_DEST_INFO_ENUM), 0x0,
"ulGetType",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_INFO_DEST_CMD[1],
{ "hCppObj", "octvc1.cpp.module.dest.info.hcppobj",
FT_NONE, BASE_NONE, NULL, 0x0,
"hCppObj",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_INFO_DEST_CMD[2],
{ "ulCppObjPort", "octvc1.cpp.module.dest.info.ulcppobjport",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulCppObjPort",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_INFO_DEST_CMD[3],
{ "hDestObj", "octvc1.cpp.module.dest.info.hdestobj",
FT_NONE, BASE_NONE, NULL, 0x0,
"hDestObj",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_INFO_DEST_CMD[4],
{ "ulDestObjPort", "octvc1.cpp.module.dest.info.uldestobjport",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulDestObjPort",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_INFO_DEST_CMD[5],
{ "ulDestObjFifoId", "octvc1.cpp.module.dest.info.uldestobjfifoid",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulDestObjFifoId",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_INFO_DEST_CMD[6],
{ "DestMacAddress", "octvc1.cpp.module.dest.info.destmacaddress",
FT_STRING, BASE_NONE, NULL, 0x0,
"DestMacAddress",HFILL }
},
};
static gint* ett[] =
{
&ws_htOCTVC1_CPP_MSG_MODULE_INFO_DEST_CMD.ett
};
proto_register_field_array( proto_octvc1_ctrl, hf, array_length(hf) );
};
int ahf_tOCTVC1_CPP_MSG_MODULE_INFO_DEST_RSP[4];
tWS_ENTITY_HANDLE ws_htOCTVC1_CPP_MSG_MODULE_INFO_DEST_RSP;
void register_tOCTVC1_CPP_MSG_MODULE_INFO_DEST_RSP(void)
{
static hf_register_info hf[] =
{
{
&ahf_tOCTVC1_CPP_MSG_MODULE_INFO_DEST_RSP[0],
{ "ulMoreFlag", "octvc1.cpp.module.dest.info.ulmoreflag",
FT_BOOLEAN, BASE_NONE, NULL, 0x0,
"ulMoreFlag",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_INFO_DEST_RSP[1],
{ "ulNumDestEntry", "octvc1.cpp.module.dest.info.ulnumdestentry",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulNumDestEntry",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_INFO_DEST_RSP[2],
{ "aDestEntry", "octvc1.cpp.module.dest.info.adestentry",
FT_NONE, BASE_NONE, NULL, 0x0,
"aDestEntry",HFILL }
},
};
static gint* ett[] =
{
&ws_htOCTVC1_CPP_MSG_MODULE_INFO_DEST_RSP.ett
};
proto_register_field_array( proto_octvc1_ctrl, hf, array_length(hf) );
};
int ahf_tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_CMD[2];
tWS_ENTITY_HANDLE ws_htOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_CMD;
void register_tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_CMD(void)
{
static hf_register_info hf[] =
{
{
&ahf_tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_CMD[0],
{ "ulResetStatsFlag", "octvc1.cpp.module.global.stats.ulresetstatsflag",
FT_BOOLEAN, BASE_NONE, NULL, 0x0,
"ulResetStatsFlag",HFILL }
},
};
static gint* ett[] =
{
&ws_htOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_CMD.ett
};
proto_register_field_array( proto_octvc1_ctrl, hf, array_length(hf) );
};
int ahf_tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP[14];
tWS_ENTITY_HANDLE ws_htOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP;
void register_tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP(void)
{
static hf_register_info hf[] =
{
{
&ahf_tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP[0],
{ "ulControlRxPktCnt", "octvc1.cpp.module.global.stats.ulcontrolrxpktcnt",
FT_UINT32,BASE_DEC, NULL, 0x0,
"ulControlRxPktCnt",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP[1],
{ "ulDataRxPktCnt", "octvc1.cpp.module.global.stats.uldatarxpktcnt",
FT_UINT32,BASE_DEC, NULL, 0x0,
"ulDataRxPktCnt",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP[2],
{ "ulControlBadHdrLenCnt", "octvc1.cpp.module.global.stats.ulcontrolbadhdrlencnt",
FT_UINT32,BASE_DEC, NULL, 0x0,
"ulControlBadHdrLenCnt",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP[3],
{ "ulDataBadHdrLenCnt", "octvc1.cpp.module.global.stats.uldatabadhdrlencnt",
FT_UINT32,BASE_DEC, NULL, 0x0,
"ulDataBadHdrLenCnt",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP[4],
{ "ulInvalidPktFormatCnt", "octvc1.cpp.module.global.stats.ulinvalidpktformatcnt",
FT_UINT32,BASE_DEC, NULL, 0x0,
"ulInvalidPktFormatCnt",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP[5],
{ "ulNoFwdPktCnt", "octvc1.cpp.module.global.stats.ulnofwdpktcnt",
FT_UINT32,BASE_DEC, NULL, 0x0,
"ulNoFwdPktCnt",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP[6],
{ "ulCppCmdOverflowCnt", "octvc1.cpp.module.global.stats.ulcppcmdoverflowcnt",
FT_UINT32,BASE_DEC, NULL, 0x0,
"ulCppCmdOverflowCnt",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP[7],
{ "ulTxPktQueueOverflowFlag", "octvc1.cpp.module.global.stats.ultxpktqueueoverflowflag",
FT_BOOLEAN, BASE_NONE, NULL, 0x0,
"ulTxPktQueueOverflowFlag",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP[8],
{ "ulTxPktQueueOverflowFifoPoolId", "octvc1.cpp.module.global.stats.ultxpktqueueoverflowfifopoolid",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulTxPktQueueOverflowFifoPoolId",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP[9],
{ "ulTxPktQueueOverflowFifoIndex", "octvc1.cpp.module.global.stats.ultxpktqueueoverflowfifoindex",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulTxPktQueueOverflowFifoIndex",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP[10],
{ "ulRxFifoResynchFlag", "octvc1.cpp.module.global.stats.ulrxfiforesynchflag",
FT_BOOLEAN, BASE_NONE, NULL, 0x0,
"ulRxFifoResynchFlag",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP[11],
{ "ulRxFifoResynchFifoPoolId", "octvc1.cpp.module.global.stats.ulrxfiforesynchfifopoolid",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulRxFifoResynchFifoPoolId",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP[12],
{ "ulRxFifoResynchFifoIndex", "octvc1.cpp.module.global.stats.ulrxfiforesynchfifoindex",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulRxFifoResynchFifoIndex",HFILL }
},
};
static gint* ett[] =
{
&ws_htOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP.ett
};
proto_register_field_array( proto_octvc1_ctrl, hf, array_length(hf) );
};
int ahf_tOCTVC1_CPP_MSG_MODULE_STATS_ETH_CMD[2];
tWS_ENTITY_HANDLE ws_htOCTVC1_CPP_MSG_MODULE_STATS_ETH_CMD;
void register_tOCTVC1_CPP_MSG_MODULE_STATS_ETH_CMD(void)
{
static hf_register_info hf[] =
{
{
&ahf_tOCTVC1_CPP_MSG_MODULE_STATS_ETH_CMD[0],
{ "ulEthPort", "octvc1.cpp.module.eth.stats.ulethport",
FT_UINT32,BASE_HEX, VALS(vals_tOCTVC1_ETH_PORT_ID_ENUM), 0x0,
"ulEthPort",HFILL }
},
};
static gint* ett[] =
{
&ws_htOCTVC1_CPP_MSG_MODULE_STATS_ETH_CMD.ett
};
proto_register_field_array( proto_octvc1_ctrl, hf, array_length(hf) );
};
int ahf_tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP[11];
tWS_ENTITY_HANDLE ws_htOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP;
void register_tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP(void)
{
static hf_register_info hf[] =
{
{
&ahf_tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP[0],
{ "ulEthPort", "octvc1.cpp.module.eth.stats.ulethport",
FT_UINT32,BASE_HEX, VALS(vals_tOCTVC1_ETH_PORT_ID_ENUM), 0x0,
"ulEthPort",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP[1],
{ "ulEthRxPktCnt", "octvc1.cpp.module.eth.stats.ulethrxpktcnt",
FT_UINT32,BASE_DEC, NULL, 0x0,
"ulEthRxPktCnt",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP[2],
{ "ulEthTxPktCnt", "octvc1.cpp.module.eth.stats.ulethtxpktcnt",
FT_UINT32,BASE_DEC, NULL, 0x0,
"ulEthTxPktCnt",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP[3],
{ "ulEthRxByteCnt", "octvc1.cpp.module.eth.stats.ulethrxbytecnt",
FT_UINT32,BASE_DEC, NULL, 0x0,
"ulEthRxByteCnt",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP[4],
{ "ulEthTxByteCnt", "octvc1.cpp.module.eth.stats.ulethtxbytecnt",
FT_UINT32,BASE_DEC, NULL, 0x0,
"ulEthTxByteCnt",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP[5],
{ "ulEthBadHdrCnt", "octvc1.cpp.module.eth.stats.ulethbadhdrcnt",
FT_UINT32,BASE_DEC, NULL, 0x0,
"ulEthBadHdrCnt",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP[6],
{ "ulEthBadHdrLenCnt", "octvc1.cpp.module.eth.stats.ulethbadhdrlencnt",
FT_UINT32,BASE_DEC, NULL, 0x0,
"ulEthBadHdrLenCnt",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP[7],
{ "ulEth8023BadLlcOuiCnt", "octvc1.cpp.module.eth.stats.uleth8023badllcouicnt",
FT_UINT32,BASE_DEC, NULL, 0x0,
"ulEth8023BadLlcOuiCnt",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP[8],
{ "ulRxFifoReSyncCnt", "octvc1.cpp.module.eth.stats.ulrxfiforesynccnt",
FT_UINT32,BASE_DEC, NULL, 0x0,
"ulRxFifoReSyncCnt",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP[9],
{ "ulTxPktQueueOverflowCnt", "octvc1.cpp.module.eth.stats.ultxpktqueueoverflowcnt",
FT_UINT32,BASE_DEC, NULL, 0x0,
"ulTxPktQueueOverflowCnt",HFILL }
},
};
static gint* ett[] =
{
&ws_htOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP.ett
};
proto_register_field_array( proto_octvc1_ctrl, hf, array_length(hf) );
};
int ahf_tOCTVC1_CPP_MSG_MODULE_GET_CONFIG_RSP[2];
tWS_ENTITY_HANDLE ws_htOCTVC1_CPP_MSG_MODULE_GET_CONFIG_RSP;
void register_tOCTVC1_CPP_MSG_MODULE_GET_CONFIG_RSP(void)
{
static hf_register_info hf[] =
{
{
&ahf_tOCTVC1_CPP_MSG_MODULE_GET_CONFIG_RSP[0],
{ "Static", "octvc1.cpp.module.config.get.static",
FT_NONE, BASE_NONE, NULL, 0x0,
"Static",HFILL }
},
};
static gint* ett[] =
{
&ws_htOCTVC1_CPP_MSG_MODULE_GET_CONFIG_RSP.ett
};
proto_register_field_array( proto_octvc1_ctrl, hf, array_length(hf) );
};
int ahf_tOCTVC1_CPP_MSG_FORWARD_OPEN_CMD[6];
tWS_ENTITY_HANDLE ws_htOCTVC1_CPP_MSG_FORWARD_OPEN_CMD;
void register_tOCTVC1_CPP_MSG_FORWARD_OPEN_CMD(void)
{
static hf_register_info hf[] =
{
{
&ahf_tOCTVC1_CPP_MSG_FORWARD_OPEN_CMD[0],
{ "hDestObj", "octvc1.cpp.forward.open.hdestobj",
FT_NONE, BASE_NONE, NULL, 0x0,
"hDestObj",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_FORWARD_OPEN_CMD[1],
{ "ulDestObjPort", "octvc1.cpp.forward.open.uldestobjport",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulDestObjPort",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_FORWARD_OPEN_CMD[2],
{ "ulDestObjFifoId", "octvc1.cpp.forward.open.uldestobjfifoid",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulDestObjFifoId",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_FORWARD_OPEN_CMD[3],
{ "DestMacAddress", "octvc1.cpp.forward.open.destmacaddress",
FT_STRING, BASE_NONE, NULL, 0x0,
"DestMacAddress",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_FORWARD_OPEN_CMD[4],
{ "SrcMacAddress", "octvc1.cpp.forward.open.srcmacaddress",
FT_STRING, BASE_NONE, NULL, 0x0,
"SrcMacAddress",HFILL }
},
};
static gint* ett[] =
{
&ws_htOCTVC1_CPP_MSG_FORWARD_OPEN_CMD.ett
};
proto_register_field_array( proto_octvc1_ctrl, hf, array_length(hf) );
};
int ahf_tOCTVC1_CPP_MSG_FORWARD_OPEN_RSP[3];
tWS_ENTITY_HANDLE ws_htOCTVC1_CPP_MSG_FORWARD_OPEN_RSP;
void register_tOCTVC1_CPP_MSG_FORWARD_OPEN_RSP(void)
{
static hf_register_info hf[] =
{
{
&ahf_tOCTVC1_CPP_MSG_FORWARD_OPEN_RSP[0],
{ "hForward", "octvc1.cpp.forward.open.hforward",
FT_NONE, BASE_NONE, NULL, 0x0,
"hForward",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_FORWARD_OPEN_RSP[1],
{ "ulFifoId", "octvc1.cpp.forward.open.ulfifoid",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulFifoId",HFILL }
},
};
static gint* ett[] =
{
&ws_htOCTVC1_CPP_MSG_FORWARD_OPEN_RSP.ett
};
proto_register_field_array( proto_octvc1_ctrl, hf, array_length(hf) );
};
int ahf_tOCTVC1_CPP_MSG_FORWARD_CLOSE_CMD[2];
tWS_ENTITY_HANDLE ws_htOCTVC1_CPP_MSG_FORWARD_CLOSE_CMD;
void register_tOCTVC1_CPP_MSG_FORWARD_CLOSE_CMD(void)
{
static hf_register_info hf[] =
{
{
&ahf_tOCTVC1_CPP_MSG_FORWARD_CLOSE_CMD[0],
{ "hForward", "octvc1.cpp.forward.close.hforward",
FT_NONE, BASE_NONE, NULL, 0x0,
"hForward",HFILL }
},
};
static gint* ett[] =
{
&ws_htOCTVC1_CPP_MSG_FORWARD_CLOSE_CMD.ett
};
proto_register_field_array( proto_octvc1_ctrl, hf, array_length(hf) );
};
int ahf_tOCTVC1_CPP_MSG_FORWARD_CLOSE_RSP[2];
tWS_ENTITY_HANDLE ws_htOCTVC1_CPP_MSG_FORWARD_CLOSE_RSP;
void register_tOCTVC1_CPP_MSG_FORWARD_CLOSE_RSP(void)
{
static hf_register_info hf[] =
{
{
&ahf_tOCTVC1_CPP_MSG_FORWARD_CLOSE_RSP[0],
{ "hForward", "octvc1.cpp.forward.close.hforward",
FT_NONE, BASE_NONE, NULL, 0x0,
"hForward",HFILL }
},
};
static gint* ett[] =
{
&ws_htOCTVC1_CPP_MSG_FORWARD_CLOSE_RSP.ett
};
proto_register_field_array( proto_octvc1_ctrl, hf, array_length(hf) );
};
int ahf_tOCTVC1_CPP_MSG_FORWARD_STATS_CMD[3];
tWS_ENTITY_HANDLE ws_htOCTVC1_CPP_MSG_FORWARD_STATS_CMD;
void register_tOCTVC1_CPP_MSG_FORWARD_STATS_CMD(void)
{
static hf_register_info hf[] =
{
{
&ahf_tOCTVC1_CPP_MSG_FORWARD_STATS_CMD[0],
{ "ObjectGet", "octvc1.cpp.forward.stats.objectget",
FT_NONE, BASE_NONE, NULL, 0x0,
"ObjectGet",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_FORWARD_STATS_CMD[1],
{ "ulResetStatsFlag", "octvc1.cpp.forward.stats.ulresetstatsflag",
FT_BOOLEAN, BASE_NONE, NULL, 0x0,
"ulResetStatsFlag",HFILL }
},
};
static gint* ett[] =
{
&ws_htOCTVC1_CPP_MSG_FORWARD_STATS_CMD.ett
};
proto_register_field_array( proto_octvc1_ctrl, hf, array_length(hf) );
};
int ahf_tOCTVC1_CPP_MSG_FORWARD_STATS_RSP[2];
tWS_ENTITY_HANDLE ws_htOCTVC1_CPP_MSG_FORWARD_STATS_RSP;
void register_tOCTVC1_CPP_MSG_FORWARD_STATS_RSP(void)
{
static hf_register_info hf[] =
{
{
&ahf_tOCTVC1_CPP_MSG_FORWARD_STATS_RSP[0],
{ "ObjectGet", "octvc1.cpp.forward.stats.objectget",
FT_NONE, BASE_NONE, NULL, 0x0,
"ObjectGet",HFILL }
},
};
static gint* ett[] =
{
&ws_htOCTVC1_CPP_MSG_FORWARD_STATS_RSP.ett
};
proto_register_field_array( proto_octvc1_ctrl, hf, array_length(hf) );
};
int ahf_tOCTVC1_CPP_MSG_FORWARD_INFO_CMD[7];
tWS_ENTITY_HANDLE ws_htOCTVC1_CPP_MSG_FORWARD_INFO_CMD;
void register_tOCTVC1_CPP_MSG_FORWARD_INFO_CMD(void)
{
static hf_register_info hf[] =
{
{
&ahf_tOCTVC1_CPP_MSG_FORWARD_INFO_CMD[0],
{ "ObjectGet", "octvc1.cpp.forward.info.objectget",
FT_NONE, BASE_NONE, NULL, 0x0,
"ObjectGet",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_FORWARD_INFO_CMD[1],
{ "ulGetType", "octvc1.cpp.forward.info.ulgettype",
FT_UINT32,BASE_HEX, VALS(vals_tOCTVC1_CPP_DEST_INFO_ENUM), 0x0,
"ulGetType",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_FORWARD_INFO_CMD[2],
{ "hDestObj", "octvc1.cpp.forward.info.hdestobj",
FT_NONE, BASE_NONE, NULL, 0x0,
"hDestObj",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_FORWARD_INFO_CMD[3],
{ "ulDestObjPort", "octvc1.cpp.forward.info.uldestobjport",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulDestObjPort",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_FORWARD_INFO_CMD[4],
{ "ulDestObjFifoId", "octvc1.cpp.forward.info.uldestobjfifoid",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulDestObjFifoId",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_FORWARD_INFO_CMD[5],
{ "DestMacAddress", "octvc1.cpp.forward.info.destmacaddress",
FT_STRING, BASE_NONE, NULL, 0x0,
"DestMacAddress",HFILL }
},
};
static gint* ett[] =
{
&ws_htOCTVC1_CPP_MSG_FORWARD_INFO_CMD.ett
};
proto_register_field_array( proto_octvc1_ctrl, hf, array_length(hf) );
};
int ahf_tOCTVC1_CPP_MSG_FORWARD_INFO_RSP[6];
tWS_ENTITY_HANDLE ws_htOCTVC1_CPP_MSG_FORWARD_INFO_RSP;
void register_tOCTVC1_CPP_MSG_FORWARD_INFO_RSP(void)
{
static hf_register_info hf[] =
{
{
&ahf_tOCTVC1_CPP_MSG_FORWARD_INFO_RSP[0],
{ "ObjectGet", "octvc1.cpp.forward.info.objectget",
FT_NONE, BASE_NONE, NULL, 0x0,
"ObjectGet",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_FORWARD_INFO_RSP[1],
{ "ulFifoId", "octvc1.cpp.forward.info.ulfifoid",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulFifoId",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_FORWARD_INFO_RSP[2],
{ "ulMoreFlag", "octvc1.cpp.forward.info.ulmoreflag",
FT_BOOLEAN, BASE_NONE, NULL, 0x0,
"ulMoreFlag",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_FORWARD_INFO_RSP[3],
{ "ulNumDestEntry", "octvc1.cpp.forward.info.ulnumdestentry",
FT_UINT32,BASE_HEX, NULL, 0x0,
"ulNumDestEntry",HFILL }
},
{
&ahf_tOCTVC1_CPP_MSG_FORWARD_INFO_RSP[4],
{ "aDestEntry", "octvc1.cpp.forward.info.adestentry",
FT_NONE, BASE_NONE, NULL, 0x0,
"aDestEntry",HFILL }
},
};
static gint* ett[] =
{
&ws_htOCTVC1_CPP_MSG_FORWARD_INFO_RSP.ett
};
proto_register_field_array( proto_octvc1_ctrl, hf, array_length(hf) );
};
/****************************************************************************
COMMON dissectors
****************************************************************************/
unsigned int dissect_tOCTVC1_CPP_CONFIG_STATIC(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, unsigned int offset, tWS_EXTRA_VALUE *pExtValue )
{
proto_tree *field_tree = tree;
unsigned int offset_0 = offset;
gint bytes = tvb_length_remaining(tvb, offset);
if (bytes < (gint)(sizeof(tOCTVC1_CPP_CONFIG_STATIC)))
{
proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_CONFIG_STATIC (%d byte%s) - Malformated packet...expected(%ld)",
bytes, plurality(bytes, "", "s"),
sizeof(tOCTVC1_CPP_CONFIG_STATIC));
return 1;
}
else
{
int temp_data = 0;
proto_item *ti;
bytes = sizeof(tOCTVC1_CPP_CONFIG_STATIC);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_CONFIG_STATIC[0], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_CONFIG_STATIC, ulMaxDestination), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_CONFIG_STATIC[0], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_CONFIG_STATIC, ulMaxDestination);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_CONFIG_STATIC[1], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_CONFIG_STATIC, ulMaxRxUdpPort), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_CONFIG_STATIC[1], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_CONFIG_STATIC, ulMaxRxUdpPort);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_CONFIG_STATIC[2], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_CONFIG_STATIC, ulMaxRxUdpCnct), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_CONFIG_STATIC[2], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_CONFIG_STATIC, ulMaxRxUdpCnct);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_CONFIG_STATIC[3], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_CONFIG_STATIC, ulMaxTxUdpCnct), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_CONFIG_STATIC[3], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_CONFIG_STATIC, ulMaxTxUdpCnct);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_CONFIG_STATIC[4], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_CONFIG_STATIC, ulMaxRxRtpPort), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_CONFIG_STATIC[4], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_CONFIG_STATIC, ulMaxRxRtpPort);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_CONFIG_STATIC[5], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_CONFIG_STATIC, ulMaxRxRtpCnct), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_CONFIG_STATIC[5], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_CONFIG_STATIC, ulMaxRxRtpCnct);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_CONFIG_STATIC[6], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_CONFIG_STATIC, ulMaxTxRtpCnct), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_CONFIG_STATIC[6], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_CONFIG_STATIC, ulMaxTxRtpCnct);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_CONFIG_STATIC[7], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_CONFIG_STATIC, ulMaxRxTcpPort), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_CONFIG_STATIC[7], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_CONFIG_STATIC, ulMaxRxTcpPort);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_CONFIG_STATIC[8], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_CONFIG_STATIC, ulMaxRxTcpCnct), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_CONFIG_STATIC[8], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_CONFIG_STATIC, ulMaxRxTcpCnct);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_CONFIG_STATIC[9], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_CONFIG_STATIC, ulMaxRxIpPort), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_CONFIG_STATIC[9], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_CONFIG_STATIC, ulMaxRxIpPort);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_CONFIG_STATIC[10], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_CONFIG_STATIC, ulMaxForwardObj), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_CONFIG_STATIC[10], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_CONFIG_STATIC, ulMaxForwardObj);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_CONFIG_STATIC[11], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_CONFIG_STATIC, ulIpFragmentIdMask), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_CONFIG_STATIC[11], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_CONFIG_STATIC, ulIpFragmentIdMask);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_CONFIG_STATIC[12], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_CONFIG_STATIC, ulIpFragmentIdMatch), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_CONFIG_STATIC[12], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_CONFIG_STATIC, ulIpFragmentIdMatch);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_CONFIG_STATIC[13], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_CONFIG_STATIC, ulMaxNonEthernetBandwidth), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_CONFIG_STATIC[13], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_CONFIG_STATIC, ulMaxNonEthernetBandwidth);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_CONFIG_STATIC[14], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_CONFIG_STATIC, ulMaxNonUdpBandwidth), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_CONFIG_STATIC[14], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_CONFIG_STATIC, ulMaxNonUdpBandwidth);
}
return offset;
};
unsigned int dissect_tOCTVC1_CPP_RX_RTP_PROFILE_ENTRY(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, unsigned int offset, tWS_EXTRA_VALUE *pExtValue )
{
proto_tree *field_tree = tree;
unsigned int offset_0 = offset;
gint bytes = tvb_length_remaining(tvb, offset);
if (bytes < (gint)(sizeof(tOCTVC1_CPP_RX_RTP_PROFILE_ENTRY)))
{
proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_RX_RTP_PROFILE_ENTRY (%d byte%s) - Malformated packet...expected(%ld)",
bytes, plurality(bytes, "", "s"),
sizeof(tOCTVC1_CPP_RX_RTP_PROFILE_ENTRY));
return 1;
}
else
{
int temp_data = 0;
proto_item *ti;
bytes = sizeof(tOCTVC1_CPP_RX_RTP_PROFILE_ENTRY);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_RX_RTP_PROFILE_ENTRY[0], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_RX_RTP_PROFILE_ENTRY, ulPacketEncodeType), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_RX_RTP_PROFILE_ENTRY[0], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_RX_RTP_PROFILE_ENTRY, ulPacketEncodeType);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_RX_RTP_PROFILE_ENTRY[1], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_RX_RTP_PROFILE_ENTRY, ulRtpPayloadType), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_RX_RTP_PROFILE_ENTRY[1], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_RX_RTP_PROFILE_ENTRY, ulRtpPayloadType);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_RX_RTP_PROFILE_ENTRY[2], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_RX_RTP_PROFILE_ENTRY, ulPktPortIndex), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_RX_RTP_PROFILE_ENTRY[2], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_RX_RTP_PROFILE_ENTRY, ulPktPortIndex);
}
return offset;
};
unsigned int dissect_tOCTVC1_CPP_TX_RTP_PROFILE_ENTRY(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, unsigned int offset, tWS_EXTRA_VALUE *pExtValue )
{
proto_tree *field_tree = tree;
unsigned int offset_0 = offset;
gint bytes = tvb_length_remaining(tvb, offset);
if (bytes < (gint)(sizeof(tOCTVC1_CPP_TX_RTP_PROFILE_ENTRY)))
{
proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_TX_RTP_PROFILE_ENTRY (%d byte%s) - Malformated packet...expected(%ld)",
bytes, plurality(bytes, "", "s"),
sizeof(tOCTVC1_CPP_TX_RTP_PROFILE_ENTRY));
return 1;
}
else
{
int temp_data = 0;
proto_item *ti;
bytes = sizeof(tOCTVC1_CPP_TX_RTP_PROFILE_ENTRY);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_TX_RTP_PROFILE_ENTRY[0], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_RTP_PROFILE_ENTRY, ulPacketEncodeType), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_TX_RTP_PROFILE_ENTRY[0], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_TX_RTP_PROFILE_ENTRY, ulPacketEncodeType);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_TX_RTP_PROFILE_ENTRY[1], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_RTP_PROFILE_ENTRY, ulRtpPayloadType), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_TX_RTP_PROFILE_ENTRY[1], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_TX_RTP_PROFILE_ENTRY, ulRtpPayloadType);
}
return offset;
};
unsigned int dissect_tOCTVC1_CPP_DEST_ENTRY(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, unsigned int offset, tWS_EXTRA_VALUE *pExtValue )
{
proto_tree *field_tree = tree;
unsigned int offset_0 = offset;
gint bytes = tvb_length_remaining(tvb, offset);
if (bytes < (gint)(sizeof(tOCTVC1_CPP_DEST_ENTRY)))
{
proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_DEST_ENTRY (%d byte%s) - Malformated packet...expected(%ld)",
bytes, plurality(bytes, "", "s"),
sizeof(tOCTVC1_CPP_DEST_ENTRY));
return 1;
}
else
{
int temp_data = 0;
proto_item *ti;
bytes = sizeof(tOCTVC1_CPP_DEST_ENTRY);
ti = proto_tree_add_text(field_tree, tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_DEST_ENTRY, hCppObj), "hCppObj:tOCTVC1_HANDLE");
{
proto_tree* sub_tree2;
sub_tree2 = proto_item_add_subtree(ti, ett_octvc1_msg_type);
offset = dissect_tOCTVC1_HANDLE( tvb, pinfo, sub_tree2, offset, pExtValue );
}
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_DEST_ENTRY[1], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_DEST_ENTRY, ulCppObjPort), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_DEST_ENTRY[1], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_DEST_ENTRY, ulCppObjPort);
ti = proto_tree_add_text(field_tree, tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_DEST_ENTRY, hDestObj), "hDestObj:tOCTVC1_HANDLE");
{
proto_tree* sub_tree2;
sub_tree2 = proto_item_add_subtree(ti, ett_octvc1_msg_type);
offset = dissect_tOCTVC1_HANDLE( tvb, pinfo, sub_tree2, offset, pExtValue );
}
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_DEST_ENTRY[3], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_DEST_ENTRY, ulDestObjPort), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_DEST_ENTRY[3], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_DEST_ENTRY, ulDestObjPort);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_DEST_ENTRY[4], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_DEST_ENTRY, ulDestObjFifoId), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_DEST_ENTRY[4], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_DEST_ENTRY, ulDestObjFifoId);
{
int ulMac0, ulMac1;
unsigned int offs = offset;
ulMac0 = tvb_get_ntohl( tvb, offs );
offs += 4;
ulMac1 = tvb_get_ntohl( tvb, offs );
ti = proto_tree_add_string_format(field_tree, ahf_tOCTVC1_CPP_DEST_ENTRY[5], tvb, offset,
sizeof(tOCTVC1_MAC_ADDRESS), "","DestMacAddress: %02x:%02x:%02x:%02x:%02x:%02x",
(( ulMac0 & 0x0000FF00 ) >> 8 ),
( ulMac0 & 0x000000FF ),
(( ulMac1 & 0xFF000000 ) >> 24 ),
(( ulMac1 & 0x00FF0000 ) >> 16 ),
(( ulMac1 & 0x0000FF00 ) >> 8 ),
( ulMac1 & 0x000000FF ) );
}
offset += sizeof(tOCTVC1_MAC_ADDRESS);
{
int ulMac0, ulMac1;
unsigned int offs = offset;
ulMac0 = tvb_get_ntohl( tvb, offs );
offs += 4;
ulMac1 = tvb_get_ntohl( tvb, offs );
ti = proto_tree_add_string_format(field_tree, ahf_tOCTVC1_CPP_DEST_ENTRY[6], tvb, offset,
sizeof(tOCTVC1_MAC_ADDRESS), "","BridgeMacAddress: %02x:%02x:%02x:%02x:%02x:%02x",
(( ulMac0 & 0x0000FF00 ) >> 8 ),
( ulMac0 & 0x000000FF ),
(( ulMac1 & 0xFF000000 ) >> 24 ),
(( ulMac1 & 0x00FF0000 ) >> 16 ),
(( ulMac1 & 0x0000FF00 ) >> 8 ),
( ulMac1 & 0x000000FF ) );
}
offset += sizeof(tOCTVC1_MAC_ADDRESS);
}
return offset;
};
unsigned int dissect_tOCTVC1_CPP_TX_HDR_COMMON(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, unsigned int offset, tWS_EXTRA_VALUE *pExtValue )
{
proto_tree *field_tree = tree;
unsigned int offset_0 = offset;
gint bytes = tvb_length_remaining(tvb, offset);
if (bytes < (gint)(sizeof(tOCTVC1_CPP_TX_HDR_COMMON)))
{
proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_TX_HDR_COMMON (%d byte%s) - Malformated packet...expected(%ld)",
bytes, plurality(bytes, "", "s"),
sizeof(tOCTVC1_CPP_TX_HDR_COMMON));
return 1;
}
else
{
int temp_data = 0;
proto_item *ti;
bytes = sizeof(tOCTVC1_CPP_TX_HDR_COMMON);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_TX_HDR_COMMON[0], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_COMMON, ulHeaderType), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_TX_HDR_COMMON[0], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_COMMON, ulHeaderType);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_TX_HDR_COMMON[1], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_COMMON, ulHeaderLength), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_TX_HDR_COMMON[1], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_COMMON, ulHeaderLength);
}
return offset;
};
unsigned int dissect_tOCTVC1_CPP_TX_HDR_ETHERNET(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, unsigned int offset, tWS_EXTRA_VALUE *pExtValue )
{
proto_tree *field_tree = tree;
unsigned int offset_0 = offset;
gint bytes = tvb_length_remaining(tvb, offset);
if (bytes < (gint)(sizeof(tOCTVC1_CPP_TX_HDR_ETHERNET)))
{
proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_TX_HDR_ETHERNET (%d byte%s) - Malformated packet...expected(%ld)",
bytes, plurality(bytes, "", "s"),
sizeof(tOCTVC1_CPP_TX_HDR_ETHERNET));
return 1;
}
else
{
int temp_data = 0;
proto_item *ti;
bytes = sizeof(tOCTVC1_CPP_TX_HDR_ETHERNET);
ti = proto_tree_add_text(field_tree, tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_ETHERNET, CommonHeader), "CommonHeader:tOCTVC1_CPP_TX_HDR_COMMON");
{
proto_tree* sub_tree2;
sub_tree2 = proto_item_add_subtree(ti, ett_octvc1_msg_type);
offset = dissect_tOCTVC1_CPP_TX_HDR_COMMON( tvb, pinfo, sub_tree2, offset, pExtValue );
}
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_TX_HDR_ETHERNET[1], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_ETHERNET, ulEthertypeEncoding), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_TX_HDR_ETHERNET[1], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_ETHERNET, ulEthertypeEncoding);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_TX_HDR_ETHERNET[2], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_ETHERNET, ulEthertype), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_TX_HDR_ETHERNET[2], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_ETHERNET, ulEthertype);
{
int ulMac0, ulMac1;
unsigned int offs = offset;
ulMac0 = tvb_get_ntohl( tvb, offs );
offs += 4;
ulMac1 = tvb_get_ntohl( tvb, offs );
ti = proto_tree_add_string_format(field_tree, ahf_tOCTVC1_CPP_TX_HDR_ETHERNET[3], tvb, offset,
sizeof(tOCTVC1_MAC_ADDRESS), "","SourceMacAddr: %02x:%02x:%02x:%02x:%02x:%02x",
(( ulMac0 & 0x0000FF00 ) >> 8 ),
( ulMac0 & 0x000000FF ),
(( ulMac1 & 0xFF000000 ) >> 24 ),
(( ulMac1 & 0x00FF0000 ) >> 16 ),
(( ulMac1 & 0x0000FF00 ) >> 8 ),
( ulMac1 & 0x000000FF ) );
}
offset += sizeof(tOCTVC1_MAC_ADDRESS);
{
int ulMac0, ulMac1;
unsigned int offs = offset;
ulMac0 = tvb_get_ntohl( tvb, offs );
offs += 4;
ulMac1 = tvb_get_ntohl( tvb, offs );
ti = proto_tree_add_string_format(field_tree, ahf_tOCTVC1_CPP_TX_HDR_ETHERNET[4], tvb, offset,
sizeof(tOCTVC1_MAC_ADDRESS), "","DestinationMacAddr: %02x:%02x:%02x:%02x:%02x:%02x",
(( ulMac0 & 0x0000FF00 ) >> 8 ),
( ulMac0 & 0x000000FF ),
(( ulMac1 & 0xFF000000 ) >> 24 ),
(( ulMac1 & 0x00FF0000 ) >> 16 ),
(( ulMac1 & 0x0000FF00 ) >> 8 ),
( ulMac1 & 0x000000FF ) );
}
offset += sizeof(tOCTVC1_MAC_ADDRESS);
}
return offset;
};
unsigned int dissect_tOCTVC1_CPP_TX_HDR_ETH_PQ(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, unsigned int offset, tWS_EXTRA_VALUE *pExtValue )
{
proto_tree *field_tree = tree;
unsigned int offset_0 = offset;
gint bytes = tvb_length_remaining(tvb, offset);
if (bytes < (gint)(sizeof(tOCTVC1_CPP_TX_HDR_ETH_PQ)))
{
proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_TX_HDR_ETH_PQ (%d byte%s) - Malformated packet...expected(%ld)",
bytes, plurality(bytes, "", "s"),
sizeof(tOCTVC1_CPP_TX_HDR_ETH_PQ));
return 1;
}
else
{
int temp_data = 0;
proto_item *ti;
bytes = sizeof(tOCTVC1_CPP_TX_HDR_ETH_PQ);
ti = proto_tree_add_text(field_tree, tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_ETH_PQ, CommonHeader), "CommonHeader:tOCTVC1_CPP_TX_HDR_COMMON");
{
proto_tree* sub_tree2;
sub_tree2 = proto_item_add_subtree(ti, ett_octvc1_msg_type);
offset = dissect_tOCTVC1_CPP_TX_HDR_COMMON( tvb, pinfo, sub_tree2, offset, pExtValue );
}
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_TX_HDR_ETH_PQ[1], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_ETH_PQ, ulEthertypeEncoding), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_TX_HDR_ETH_PQ[1], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_ETH_PQ, ulEthertypeEncoding);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_TX_HDR_ETH_PQ[2], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_ETH_PQ, ulEthertype), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_TX_HDR_ETH_PQ[2], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_ETH_PQ, ulEthertype);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_TX_HDR_ETH_PQ[3], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_ETH_PQ, ulTci), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_TX_HDR_ETH_PQ[3], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_ETH_PQ, ulTci);
{
int ulMac0, ulMac1;
unsigned int offs = offset;
ulMac0 = tvb_get_ntohl( tvb, offs );
offs += 4;
ulMac1 = tvb_get_ntohl( tvb, offs );
ti = proto_tree_add_string_format(field_tree, ahf_tOCTVC1_CPP_TX_HDR_ETH_PQ[4], tvb, offset,
sizeof(tOCTVC1_MAC_ADDRESS), "","SourceMacAddr: %02x:%02x:%02x:%02x:%02x:%02x",
(( ulMac0 & 0x0000FF00 ) >> 8 ),
( ulMac0 & 0x000000FF ),
(( ulMac1 & 0xFF000000 ) >> 24 ),
(( ulMac1 & 0x00FF0000 ) >> 16 ),
(( ulMac1 & 0x0000FF00 ) >> 8 ),
( ulMac1 & 0x000000FF ) );
}
offset += sizeof(tOCTVC1_MAC_ADDRESS);
{
int ulMac0, ulMac1;
unsigned int offs = offset;
ulMac0 = tvb_get_ntohl( tvb, offs );
offs += 4;
ulMac1 = tvb_get_ntohl( tvb, offs );
ti = proto_tree_add_string_format(field_tree, ahf_tOCTVC1_CPP_TX_HDR_ETH_PQ[5], tvb, offset,
sizeof(tOCTVC1_MAC_ADDRESS), "","DestinationMacAddr: %02x:%02x:%02x:%02x:%02x:%02x",
(( ulMac0 & 0x0000FF00 ) >> 8 ),
( ulMac0 & 0x000000FF ),
(( ulMac1 & 0xFF000000 ) >> 24 ),
(( ulMac1 & 0x00FF0000 ) >> 16 ),
(( ulMac1 & 0x0000FF00 ) >> 8 ),
( ulMac1 & 0x000000FF ) );
}
offset += sizeof(tOCTVC1_MAC_ADDRESS);
}
return offset;
};
unsigned int dissect_tOCTVC1_CPP_TX_HDR_LLC(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, unsigned int offset, tWS_EXTRA_VALUE *pExtValue )
{
proto_tree *field_tree = tree;
unsigned int offset_0 = offset;
gint bytes = tvb_length_remaining(tvb, offset);
if (bytes < (gint)(sizeof(tOCTVC1_CPP_TX_HDR_LLC)))
{
proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_TX_HDR_LLC (%d byte%s) - Malformated packet...expected(%ld)",
bytes, plurality(bytes, "", "s"),
sizeof(tOCTVC1_CPP_TX_HDR_LLC));
return 1;
}
else
{
int temp_data = 0;
proto_item *ti;
bytes = sizeof(tOCTVC1_CPP_TX_HDR_LLC);
ti = proto_tree_add_text(field_tree, tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_LLC, CommonHeader), "CommonHeader:tOCTVC1_CPP_TX_HDR_COMMON");
{
proto_tree* sub_tree2;
sub_tree2 = proto_item_add_subtree(ti, ett_octvc1_msg_type);
offset = dissect_tOCTVC1_CPP_TX_HDR_COMMON( tvb, pinfo, sub_tree2, offset, pExtValue );
}
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_TX_HDR_LLC[1], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_LLC, ulLlcValue), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_TX_HDR_LLC[1], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_LLC, ulLlcValue);
}
return offset;
};
unsigned int dissect_tOCTVC1_CPP_TX_HDR_NLPID(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, unsigned int offset, tWS_EXTRA_VALUE *pExtValue )
{
proto_tree *field_tree = tree;
unsigned int offset_0 = offset;
gint bytes = tvb_length_remaining(tvb, offset);
if (bytes < (gint)(sizeof(tOCTVC1_CPP_TX_HDR_NLPID)))
{
proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_TX_HDR_NLPID (%d byte%s) - Malformated packet...expected(%ld)",
bytes, plurality(bytes, "", "s"),
sizeof(tOCTVC1_CPP_TX_HDR_NLPID));
return 1;
}
else
{
int temp_data = 0;
proto_item *ti;
bytes = sizeof(tOCTVC1_CPP_TX_HDR_NLPID);
ti = proto_tree_add_text(field_tree, tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_NLPID, CommonHeader), "CommonHeader:tOCTVC1_CPP_TX_HDR_COMMON");
{
proto_tree* sub_tree2;
sub_tree2 = proto_item_add_subtree(ti, ett_octvc1_msg_type);
offset = dissect_tOCTVC1_CPP_TX_HDR_COMMON( tvb, pinfo, sub_tree2, offset, pExtValue );
}
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_TX_HDR_NLPID[1], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_NLPID, ulNlpidValue), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_TX_HDR_NLPID[1], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_NLPID, ulNlpidValue);
}
return offset;
};
unsigned int dissect_tOCTVC1_CPP_TX_HDR_SNAP(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, unsigned int offset, tWS_EXTRA_VALUE *pExtValue )
{
proto_tree *field_tree = tree;
unsigned int offset_0 = offset;
gint bytes = tvb_length_remaining(tvb, offset);
if (bytes < (gint)(sizeof(tOCTVC1_CPP_TX_HDR_SNAP)))
{
proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_TX_HDR_SNAP (%d byte%s) - Malformated packet...expected(%ld)",
bytes, plurality(bytes, "", "s"),
sizeof(tOCTVC1_CPP_TX_HDR_SNAP));
return 1;
}
else
{
int temp_data = 0;
proto_item *ti;
bytes = sizeof(tOCTVC1_CPP_TX_HDR_SNAP);
ti = proto_tree_add_text(field_tree, tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_SNAP, CommonHeader), "CommonHeader:tOCTVC1_CPP_TX_HDR_COMMON");
{
proto_tree* sub_tree2;
sub_tree2 = proto_item_add_subtree(ti, ett_octvc1_msg_type);
offset = dissect_tOCTVC1_CPP_TX_HDR_COMMON( tvb, pinfo, sub_tree2, offset, pExtValue );
}
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_TX_HDR_SNAP[1], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_SNAP, ulOuiValue), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_TX_HDR_SNAP[1], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_SNAP, ulOuiValue);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_TX_HDR_SNAP[2], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_SNAP, ulPidValue), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_TX_HDR_SNAP[2], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_SNAP, ulPidValue);
}
return offset;
};
unsigned int dissect_tOCTVC1_CPP_TX_HDR_IPV4(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, unsigned int offset, tWS_EXTRA_VALUE *pExtValue )
{
proto_tree *field_tree = tree;
unsigned int offset_0 = offset;
gint bytes = tvb_length_remaining(tvb, offset);
if (bytes < (gint)(sizeof(tOCTVC1_CPP_TX_HDR_IPV4)))
{
proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_TX_HDR_IPV4 (%d byte%s) - Malformated packet...expected(%ld)",
bytes, plurality(bytes, "", "s"),
sizeof(tOCTVC1_CPP_TX_HDR_IPV4));
return 1;
}
else
{
int temp_data = 0;
proto_item *ti;
bytes = sizeof(tOCTVC1_CPP_TX_HDR_IPV4);
ti = proto_tree_add_text(field_tree, tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_IPV4, CommonHeader), "CommonHeader:tOCTVC1_CPP_TX_HDR_COMMON");
{
proto_tree* sub_tree2;
sub_tree2 = proto_item_add_subtree(ti, ett_octvc1_msg_type);
offset = dissect_tOCTVC1_CPP_TX_HDR_COMMON( tvb, pinfo, sub_tree2, offset, pExtValue );
}
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_TX_HDR_IPV4[1], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_IPV4, ulTypeOfService), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_TX_HDR_IPV4[1], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_IPV4, ulTypeOfService);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_TX_HDR_IPV4[2], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_IPV4, ulTimeToLive), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_TX_HDR_IPV4[2], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_IPV4, ulTimeToLive);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_TX_HDR_IPV4[3], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_IPV4, ulProtocol), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_TX_HDR_IPV4[3], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_IPV4, ulProtocol);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_TX_HDR_IPV4[4], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_IPV4, ulFlags), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_TX_HDR_IPV4[4], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_IPV4, ulFlags);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_TX_HDR_IPV4[5], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_IPV4, ulSourceAddr), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_TX_HDR_IPV4[5], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_IPV4, ulSourceAddr);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_TX_HDR_IPV4[6], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_IPV4, ulDestinationAddr), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_TX_HDR_IPV4[6], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_IPV4, ulDestinationAddr);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_TX_HDR_IPV4[7], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_IPV4, ulUdpChecksumAddr), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_TX_HDR_IPV4[7], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_IPV4, ulUdpChecksumAddr);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_TX_HDR_IPV4[8], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_IPV4, ulOptionsLength), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_TX_HDR_IPV4[8], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_IPV4, ulOptionsLength);
ti = proto_tree_add_text(field_tree, tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_IPV4, aulOptions), "aulOptions");
{
int i, ofs=offset;
proto_tree* sub_tree = proto_item_add_subtree(ti, ett_octvc1_msg_type);
for( i=0; i<1; i++ )
{
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(sub_tree, ahf_tOCTVC1_CPP_TX_HDR_IPV4[9], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_IPV4, aulOptions), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint_format(sub_tree, ahf_tOCTVC1_CPP_TX_HDR_IPV4[9], tvb, offset,
4, temp_data, "[%d]: 0x%08x", i, temp_data );
}
offset+=4;
}
}
}
return offset;
};
unsigned int dissect_tOCTVC1_CPP_TX_HDR_IPV6(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, unsigned int offset, tWS_EXTRA_VALUE *pExtValue )
{
proto_tree *field_tree = tree;
unsigned int offset_0 = offset;
gint bytes = tvb_length_remaining(tvb, offset);
if (bytes < (gint)(sizeof(tOCTVC1_CPP_TX_HDR_IPV6)))
{
proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_TX_HDR_IPV6 (%d byte%s) - Malformated packet...expected(%ld)",
bytes, plurality(bytes, "", "s"),
sizeof(tOCTVC1_CPP_TX_HDR_IPV6));
return 1;
}
else
{
int temp_data = 0;
proto_item *ti;
bytes = sizeof(tOCTVC1_CPP_TX_HDR_IPV6);
ti = proto_tree_add_text(field_tree, tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_IPV6, CommonHeader), "CommonHeader:tOCTVC1_CPP_TX_HDR_COMMON");
{
proto_tree* sub_tree2;
sub_tree2 = proto_item_add_subtree(ti, ett_octvc1_msg_type);
offset = dissect_tOCTVC1_CPP_TX_HDR_COMMON( tvb, pinfo, sub_tree2, offset, pExtValue );
}
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_TX_HDR_IPV6[1], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_IPV6, ulTrafficClass), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_TX_HDR_IPV6[1], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_IPV6, ulTrafficClass);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_TX_HDR_IPV6[2], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_IPV6, ulFlowLabel), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_TX_HDR_IPV6[2], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_IPV6, ulFlowLabel);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_TX_HDR_IPV6[3], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_IPV6, ulHopLimit), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_TX_HDR_IPV6[3], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_IPV6, ulHopLimit);
ti = proto_tree_add_text(field_tree, tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_IPV6, aulSourceAddr), "aulSourceAddr");
{
int i, ofs=offset;
proto_tree* sub_tree = proto_item_add_subtree(ti, ett_octvc1_msg_type);
for( i=0; i<4; i++ )
{
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(sub_tree, ahf_tOCTVC1_CPP_TX_HDR_IPV6[4], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_IPV6, aulSourceAddr), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint_format(sub_tree, ahf_tOCTVC1_CPP_TX_HDR_IPV6[4], tvb, offset,
4, temp_data, "[%d]: 0x%08x", i, temp_data );
}
offset+=4;
}
}
ti = proto_tree_add_text(field_tree, tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_IPV6, aulDestinationAddr), "aulDestinationAddr");
{
int i, ofs=offset;
proto_tree* sub_tree = proto_item_add_subtree(ti, ett_octvc1_msg_type);
for( i=0; i<4; i++ )
{
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(sub_tree, ahf_tOCTVC1_CPP_TX_HDR_IPV6[5], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_IPV6, aulDestinationAddr), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint_format(sub_tree, ahf_tOCTVC1_CPP_TX_HDR_IPV6[5], tvb, offset,
4, temp_data, "[%d]: 0x%08x", i, temp_data );
}
offset+=4;
}
}
ti = proto_tree_add_text(field_tree, tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_IPV6, aulUdpChecksumAddr), "aulUdpChecksumAddr");
{
int i, ofs=offset;
proto_tree* sub_tree = proto_item_add_subtree(ti, ett_octvc1_msg_type);
for( i=0; i<4; i++ )
{
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(sub_tree, ahf_tOCTVC1_CPP_TX_HDR_IPV6[6], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_IPV6, aulUdpChecksumAddr), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint_format(sub_tree, ahf_tOCTVC1_CPP_TX_HDR_IPV6[6], tvb, offset,
4, temp_data, "[%d]: 0x%08x", i, temp_data );
}
offset+=4;
}
}
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_TX_HDR_IPV6[7], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_IPV6, ulNextHeader), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_TX_HDR_IPV6[7], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_IPV6, ulNextHeader);
}
return offset;
};
unsigned int dissect_tOCTVC1_CPP_TX_HDR_UDP(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, unsigned int offset, tWS_EXTRA_VALUE *pExtValue )
{
proto_tree *field_tree = tree;
unsigned int offset_0 = offset;
gint bytes = tvb_length_remaining(tvb, offset);
if (bytes < (gint)(sizeof(tOCTVC1_CPP_TX_HDR_UDP)))
{
proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_TX_HDR_UDP (%d byte%s) - Malformated packet...expected(%ld)",
bytes, plurality(bytes, "", "s"),
sizeof(tOCTVC1_CPP_TX_HDR_UDP));
return 1;
}
else
{
int temp_data = 0;
proto_item *ti;
bytes = sizeof(tOCTVC1_CPP_TX_HDR_UDP);
ti = proto_tree_add_text(field_tree, tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_UDP, CommonHeader), "CommonHeader:tOCTVC1_CPP_TX_HDR_COMMON");
{
proto_tree* sub_tree2;
sub_tree2 = proto_item_add_subtree(ti, ett_octvc1_msg_type);
offset = dissect_tOCTVC1_CPP_TX_HDR_COMMON( tvb, pinfo, sub_tree2, offset, pExtValue );
}
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_TX_HDR_UDP[1], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_UDP, ulSourcePort), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_TX_HDR_UDP[1], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_UDP, ulSourcePort);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_TX_HDR_UDP[2], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_UDP, ulDestinationPort), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_TX_HDR_UDP[2], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_UDP, ulDestinationPort);
}
return offset;
};
unsigned int dissect_tOCTVC1_CPP_TX_HDR_RTP(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, unsigned int offset, tWS_EXTRA_VALUE *pExtValue )
{
proto_tree *field_tree = tree;
unsigned int offset_0 = offset;
gint bytes = tvb_length_remaining(tvb, offset);
if (bytes < (gint)(sizeof(tOCTVC1_CPP_TX_HDR_RTP)))
{
proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_TX_HDR_RTP (%d byte%s) - Malformated packet...expected(%ld)",
bytes, plurality(bytes, "", "s"),
sizeof(tOCTVC1_CPP_TX_HDR_RTP));
return 1;
}
else
{
int temp_data = 0;
proto_item *ti;
bytes = sizeof(tOCTVC1_CPP_TX_HDR_RTP);
ti = proto_tree_add_text(field_tree, tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_RTP, CommonHeader), "CommonHeader:tOCTVC1_CPP_TX_HDR_COMMON");
{
proto_tree* sub_tree2;
sub_tree2 = proto_item_add_subtree(ti, ett_octvc1_msg_type);
offset = dissect_tOCTVC1_CPP_TX_HDR_COMMON( tvb, pinfo, sub_tree2, offset, pExtValue );
}
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_TX_HDR_RTP[1], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_RTP, ulNumContributingSources), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_TX_HDR_RTP[1], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_RTP, ulNumContributingSources);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_TX_HDR_RTP[2], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_RTP, ulSynchronizationSource), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_TX_HDR_RTP[2], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_RTP, ulSynchronizationSource);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_boolean_format_value(field_tree, ahf_tOCTVC1_CPP_TX_HDR_RTP[3], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_RTP, ulExtensionFlag), temp_data, "%s (0x%x)", pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_boolean(field_tree, ahf_tOCTVC1_CPP_TX_HDR_RTP[3], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_RTP, ulExtensionFlag), temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_RTP, ulExtensionFlag);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_TX_HDR_RTP[4], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_RTP, ulExtensionType), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_TX_HDR_RTP[4], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_RTP, ulExtensionType);
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_TX_HDR_RTP[5], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_RTP, ulExtensionLength), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_TX_HDR_RTP[5], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_RTP, ulExtensionLength);
ti = proto_tree_add_text(field_tree, tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_RTP, aulCsrcs), "aulCsrcs");
{
int i, ofs=offset;
proto_tree* sub_tree = proto_item_add_subtree(ti, ett_octvc1_msg_type);
for( i=0; i<15; i++ )
{
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(sub_tree, ahf_tOCTVC1_CPP_TX_HDR_RTP[6], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_RTP, aulCsrcs), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint_format(sub_tree, ahf_tOCTVC1_CPP_TX_HDR_RTP[6], tvb, offset,
4, temp_data, "[%d]: 0x%08x", i, temp_data );
}
offset+=4;
}
}
ti = proto_tree_add_text(field_tree, tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_RTP, aulExtensions), "aulExtensions");
{
int i, ofs=offset;
proto_tree* sub_tree = proto_item_add_subtree(ti, ett_octvc1_msg_type);
for( i=0; i<1; i++ )
{
temp_data = tvb_get_ntohl( tvb, offset );
if( pExtValue && (pExtValue->lValue == temp_data ) )
{
ti = proto_tree_add_uint_format_value(sub_tree, ahf_tOCTVC1_CPP_TX_HDR_RTP[7], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_TX_HDR_RTP, aulExtensions), temp_data, "%s (0x%x)",pExtValue->pszValue, temp_data );
}else
{
ti = proto_tree_add_uint_format(sub_tree, ahf_tOCTVC1_CPP_TX_HDR_RTP[7], tvb, offset,
4, temp_data, "[%d]: 0x%08x", i, temp_data );
}
offset+=4;
}
}
}
return offset;
};
/****************************************************************************
CMD/RSP dissectors
****************************************************************************/
unsigned int dissect_tOCTVC1_CPP_MSG_MODULE_ADD_DEST_CMD(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, unsigned int offset )
{
proto_tree *field_tree = tree;
unsigned int offset_0 = offset;
gint bytes = tvb_length_remaining(tvb, offset);
if (bytes < (gint)(sizeof(tOCTVC1_CPP_MSG_MODULE_ADD_DEST_CMD)-sizeof(tOCTVC1_MSG_HEADER)))
{
proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_MSG_MODULE_ADD_DEST_CMD (%d byte%s) - Malformated packet...expected(%ld)",
bytes, plurality(bytes, "", "s"),
sizeof(tOCTVC1_CPP_MSG_MODULE_ADD_DEST_CMD)-sizeof(tOCTVC1_MSG_HEADER));
return 1;
}
else
{
int temp_data = 0;
proto_item *ti;
ti = proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_MSG_MODULE_ADD_DEST_CMD (%d byte%s)", bytes, plurality(bytes, "", "s"));
field_tree = proto_item_add_subtree(ti, ett_octvc1_msg_type);
ti = proto_tree_add_text(field_tree, tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_ADD_DEST_CMD, hCppObj), "hCppObj:tOCTVC1_HANDLE");
{
proto_tree* sub_tree2;
sub_tree2 = proto_item_add_subtree(ti, ett_octvc1_msg_type);
offset = dissect_tOCTVC1_HANDLE( tvb, pinfo, sub_tree2, offset, NULL );
}
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_ADD_DEST_CMD[1], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_ADD_DEST_CMD, ulCppObjPort);
ti = proto_tree_add_text(field_tree, tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_ADD_DEST_CMD, hDestObj), "hDestObj:tOCTVC1_HANDLE");
{
proto_tree* sub_tree2;
sub_tree2 = proto_item_add_subtree(ti, ett_octvc1_msg_type);
offset = dissect_tOCTVC1_HANDLE( tvb, pinfo, sub_tree2, offset, NULL );
}
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_ADD_DEST_CMD[3], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_ADD_DEST_CMD, ulDestObjPort);
temp_data = tvb_get_ntohl( tvb, offset );
if( temp_data == cOCTVC1_FIFO_ID_INVALID)
{ ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_ADD_DEST_CMD[4], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_ADD_DEST_CMD, ulDestObjFifoId),temp_data, "cOCTVC1_FIFO_ID_INVALID (0x%08x)",temp_data);
}else {
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_ADD_DEST_CMD[4], tvb, offset,
4, temp_data);
}
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_ADD_DEST_CMD, ulDestObjFifoId);
{
int ulMac0, ulMac1;
unsigned int offs = offset;
ulMac0 = tvb_get_ntohl( tvb, offs );
offs += 4;
ulMac1 = tvb_get_ntohl( tvb, offs );
ti = proto_tree_add_string_format(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_ADD_DEST_CMD[5], tvb, offset,
sizeof(tOCTVC1_MAC_ADDRESS), "","DestMacAddress: %02x:%02x:%02x:%02x:%02x:%02x",
(( ulMac0 & 0x0000FF00 ) >> 8 ),
( ulMac0 & 0x000000FF ),
(( ulMac1 & 0xFF000000 ) >> 24 ),
(( ulMac1 & 0x00FF0000 ) >> 16 ),
(( ulMac1 & 0x0000FF00 ) >> 8 ),
( ulMac1 & 0x000000FF ) );
}
offset += sizeof(tOCTVC1_MAC_ADDRESS);
{
int ulMac0, ulMac1;
unsigned int offs = offset;
ulMac0 = tvb_get_ntohl( tvb, offs );
offs += 4;
ulMac1 = tvb_get_ntohl( tvb, offs );
ti = proto_tree_add_string_format(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_ADD_DEST_CMD[6], tvb, offset,
sizeof(tOCTVC1_MAC_ADDRESS), "","SrcMacAddress: %02x:%02x:%02x:%02x:%02x:%02x",
(( ulMac0 & 0x0000FF00 ) >> 8 ),
( ulMac0 & 0x000000FF ),
(( ulMac1 & 0xFF000000 ) >> 24 ),
(( ulMac1 & 0x00FF0000 ) >> 16 ),
(( ulMac1 & 0x0000FF00 ) >> 8 ),
( ulMac1 & 0x000000FF ) );
}
offset += sizeof(tOCTVC1_MAC_ADDRESS);
{
int ulMac0, ulMac1;
unsigned int offs = offset;
ulMac0 = tvb_get_ntohl( tvb, offs );
offs += 4;
ulMac1 = tvb_get_ntohl( tvb, offs );
ti = proto_tree_add_string_format(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_ADD_DEST_CMD[7], tvb, offset,
sizeof(tOCTVC1_MAC_ADDRESS), "","BridgeMacAddress: %02x:%02x:%02x:%02x:%02x:%02x",
(( ulMac0 & 0x0000FF00 ) >> 8 ),
( ulMac0 & 0x000000FF ),
(( ulMac1 & 0xFF000000 ) >> 24 ),
(( ulMac1 & 0x00FF0000 ) >> 16 ),
(( ulMac1 & 0x0000FF00 ) >> 8 ),
( ulMac1 & 0x000000FF ) );
}
offset += sizeof(tOCTVC1_MAC_ADDRESS);
}
return 0;
};
unsigned int dissect_tOCTVC1_CPP_MSG_MODULE_ADD_DEST_RSP(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, unsigned int offset )
{
proto_tree *field_tree = tree;
unsigned int offset_0 = offset;
gint bytes = tvb_length_remaining(tvb, offset);
if (bytes < (gint)(sizeof(tOCTVC1_CPP_MSG_MODULE_ADD_DEST_RSP)-sizeof(tOCTVC1_MSG_HEADER)))
{
proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_MSG_MODULE_ADD_DEST_RSP (%d byte%s) - Malformated packet...expected(%ld)",
bytes, plurality(bytes, "", "s"),
sizeof(tOCTVC1_CPP_MSG_MODULE_ADD_DEST_RSP)-sizeof(tOCTVC1_MSG_HEADER));
return 1;
}
else
{
int temp_data = 0;
proto_item *ti;
ti = proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_MSG_MODULE_ADD_DEST_RSP (%d byte%s)", bytes, plurality(bytes, "", "s"));
field_tree = proto_item_add_subtree(ti, ett_octvc1_msg_type);
ti = proto_tree_add_text(field_tree, tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_ADD_DEST_RSP, hCppObj), "hCppObj:tOCTVC1_HANDLE");
{
proto_tree* sub_tree2;
sub_tree2 = proto_item_add_subtree(ti, ett_octvc1_msg_type);
offset = dissect_tOCTVC1_HANDLE( tvb, pinfo, sub_tree2, offset, NULL );
}
}
return 0;
};
unsigned int dissect_tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_CMD(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, unsigned int offset )
{
proto_tree *field_tree = tree;
unsigned int offset_0 = offset;
gint bytes = tvb_length_remaining(tvb, offset);
if (bytes < (gint)(sizeof(tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_CMD)-sizeof(tOCTVC1_MSG_HEADER)))
{
proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_CMD (%d byte%s) - Malformated packet...expected(%ld)",
bytes, plurality(bytes, "", "s"),
sizeof(tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_CMD)-sizeof(tOCTVC1_MSG_HEADER));
return 1;
}
else
{
int temp_data = 0;
proto_item *ti;
ti = proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_CMD (%d byte%s)", bytes, plurality(bytes, "", "s"));
field_tree = proto_item_add_subtree(ti, ett_octvc1_msg_type);
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_CMD[0], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_CMD, ulRemoveMode);
ti = proto_tree_add_text(field_tree, tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_CMD, hCppObj), "hCppObj:tOCTVC1_HANDLE");
{
proto_tree* sub_tree2;
sub_tree2 = proto_item_add_subtree(ti, ett_octvc1_msg_type);
offset = dissect_tOCTVC1_HANDLE( tvb, pinfo, sub_tree2, offset, NULL );
}
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_CMD[2], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_CMD, ulCppObjPort);
ti = proto_tree_add_text(field_tree, tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_CMD, hDestObj), "hDestObj:tOCTVC1_HANDLE");
{
proto_tree* sub_tree2;
sub_tree2 = proto_item_add_subtree(ti, ett_octvc1_msg_type);
offset = dissect_tOCTVC1_HANDLE( tvb, pinfo, sub_tree2, offset, NULL );
}
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_CMD[4], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_CMD, ulDestObjPort);
temp_data = tvb_get_ntohl( tvb, offset );
if( temp_data == cOCTVC1_FIFO_ID_INVALID)
{ ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_CMD[5], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_CMD, ulDestObjFifoId),temp_data, "cOCTVC1_FIFO_ID_INVALID (0x%08x)",temp_data);
}else {
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_CMD[5], tvb, offset,
4, temp_data);
}
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_CMD, ulDestObjFifoId);
{
int ulMac0, ulMac1;
unsigned int offs = offset;
ulMac0 = tvb_get_ntohl( tvb, offs );
offs += 4;
ulMac1 = tvb_get_ntohl( tvb, offs );
ti = proto_tree_add_string_format(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_CMD[6], tvb, offset,
sizeof(tOCTVC1_MAC_ADDRESS), "","DestMacAddress: %02x:%02x:%02x:%02x:%02x:%02x",
(( ulMac0 & 0x0000FF00 ) >> 8 ),
( ulMac0 & 0x000000FF ),
(( ulMac1 & 0xFF000000 ) >> 24 ),
(( ulMac1 & 0x00FF0000 ) >> 16 ),
(( ulMac1 & 0x0000FF00 ) >> 8 ),
( ulMac1 & 0x000000FF ) );
}
offset += sizeof(tOCTVC1_MAC_ADDRESS);
}
return 0;
};
unsigned int dissect_tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_RSP(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, unsigned int offset )
{
proto_tree *field_tree = tree;
unsigned int offset_0 = offset;
gint bytes = tvb_length_remaining(tvb, offset);
if (bytes < (gint)(sizeof(tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_RSP)-sizeof(tOCTVC1_MSG_HEADER)))
{
proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_RSP (%d byte%s) - Malformated packet...expected(%ld)",
bytes, plurality(bytes, "", "s"),
sizeof(tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_RSP)-sizeof(tOCTVC1_MSG_HEADER));
return 1;
}
else
{
int temp_data = 0;
proto_item *ti;
ti = proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_RSP (%d byte%s)", bytes, plurality(bytes, "", "s"));
field_tree = proto_item_add_subtree(ti, ett_octvc1_msg_type);
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_RSP[0], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_RSP, ulNumDestRemoved);
}
return 0;
};
unsigned int dissect_tOCTVC1_CPP_MSG_MODULE_INFO_DEST_CMD(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, unsigned int offset )
{
proto_tree *field_tree = tree;
unsigned int offset_0 = offset;
gint bytes = tvb_length_remaining(tvb, offset);
if (bytes < (gint)(sizeof(tOCTVC1_CPP_MSG_MODULE_INFO_DEST_CMD)-sizeof(tOCTVC1_MSG_HEADER)))
{
proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_MSG_MODULE_INFO_DEST_CMD (%d byte%s) - Malformated packet...expected(%ld)",
bytes, plurality(bytes, "", "s"),
sizeof(tOCTVC1_CPP_MSG_MODULE_INFO_DEST_CMD)-sizeof(tOCTVC1_MSG_HEADER));
return 1;
}
else
{
int temp_data = 0;
proto_item *ti;
ti = proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_MSG_MODULE_INFO_DEST_CMD (%d byte%s)", bytes, plurality(bytes, "", "s"));
field_tree = proto_item_add_subtree(ti, ett_octvc1_msg_type);
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_INFO_DEST_CMD[0], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_INFO_DEST_CMD, ulGetType);
ti = proto_tree_add_text(field_tree, tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_INFO_DEST_CMD, hCppObj), "hCppObj:tOCTVC1_HANDLE");
{
proto_tree* sub_tree2;
sub_tree2 = proto_item_add_subtree(ti, ett_octvc1_msg_type);
offset = dissect_tOCTVC1_HANDLE( tvb, pinfo, sub_tree2, offset, NULL );
}
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_INFO_DEST_CMD[2], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_INFO_DEST_CMD, ulCppObjPort);
ti = proto_tree_add_text(field_tree, tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_INFO_DEST_CMD, hDestObj), "hDestObj:tOCTVC1_HANDLE");
{
proto_tree* sub_tree2;
sub_tree2 = proto_item_add_subtree(ti, ett_octvc1_msg_type);
offset = dissect_tOCTVC1_HANDLE( tvb, pinfo, sub_tree2, offset, NULL );
}
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_INFO_DEST_CMD[4], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_INFO_DEST_CMD, ulDestObjPort);
temp_data = tvb_get_ntohl( tvb, offset );
if( temp_data == cOCTVC1_FIFO_ID_INVALID)
{ ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_INFO_DEST_CMD[5], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_INFO_DEST_CMD, ulDestObjFifoId),temp_data, "cOCTVC1_FIFO_ID_INVALID (0x%08x)",temp_data);
}else {
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_INFO_DEST_CMD[5], tvb, offset,
4, temp_data);
}
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_INFO_DEST_CMD, ulDestObjFifoId);
{
int ulMac0, ulMac1;
unsigned int offs = offset;
ulMac0 = tvb_get_ntohl( tvb, offs );
offs += 4;
ulMac1 = tvb_get_ntohl( tvb, offs );
ti = proto_tree_add_string_format(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_INFO_DEST_CMD[6], tvb, offset,
sizeof(tOCTVC1_MAC_ADDRESS), "","DestMacAddress: %02x:%02x:%02x:%02x:%02x:%02x",
(( ulMac0 & 0x0000FF00 ) >> 8 ),
( ulMac0 & 0x000000FF ),
(( ulMac1 & 0xFF000000 ) >> 24 ),
(( ulMac1 & 0x00FF0000 ) >> 16 ),
(( ulMac1 & 0x0000FF00 ) >> 8 ),
( ulMac1 & 0x000000FF ) );
}
offset += sizeof(tOCTVC1_MAC_ADDRESS);
}
return 0;
};
unsigned int dissect_tOCTVC1_CPP_MSG_MODULE_INFO_DEST_RSP(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, unsigned int offset )
{
proto_tree *field_tree = tree;
unsigned int offset_0 = offset;
gint bytes = tvb_length_remaining(tvb, offset);
if (bytes < (gint)(sizeof(tOCTVC1_CPP_MSG_MODULE_INFO_DEST_RSP)-sizeof(tOCTVC1_MSG_HEADER)))
{
proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_MSG_MODULE_INFO_DEST_RSP (%d byte%s) - Malformated packet...expected(%ld)",
bytes, plurality(bytes, "", "s"),
sizeof(tOCTVC1_CPP_MSG_MODULE_INFO_DEST_RSP)-sizeof(tOCTVC1_MSG_HEADER));
return 1;
}
else
{
int temp_data = 0;
proto_item *ti;
ti = proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_MSG_MODULE_INFO_DEST_RSP (%d byte%s)", bytes, plurality(bytes, "", "s"));
field_tree = proto_item_add_subtree(ti, ett_octvc1_msg_type);
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_boolean(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_INFO_DEST_RSP[0], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_INFO_DEST_RSP, ulMoreFlag), temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_INFO_DEST_RSP, ulMoreFlag);
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_INFO_DEST_RSP[1], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_INFO_DEST_RSP, ulNumDestEntry);
ti = proto_tree_add_text(field_tree, tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_INFO_DEST_RSP, aDestEntry), "aDestEntry:tOCTVC1_CPP_DEST_ENTRY");
{
int i, ofs=offset;
proto_tree* sub_tree = proto_item_add_subtree(ti, ett_octvc1_msg_type);
for( i=0; i<4; i++ )
{
{
proto_tree* sub_tree2;
ti = proto_tree_add_text(sub_tree, tvb, offset,
sizeof(tOCTVC1_CPP_DEST_ENTRY), "[%d]:", i);
sub_tree2 = proto_item_add_subtree(ti, ett_octvc1_msg_type);
offset = dissect_tOCTVC1_CPP_DEST_ENTRY( tvb, pinfo, sub_tree2, offset, NULL );
}
}
}
}
return 0;
};
unsigned int dissect_tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_CMD(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, unsigned int offset )
{
proto_tree *field_tree = tree;
unsigned int offset_0 = offset;
gint bytes = tvb_length_remaining(tvb, offset);
if (bytes < (gint)(sizeof(tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_CMD)-sizeof(tOCTVC1_MSG_HEADER)))
{
proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_CMD (%d byte%s) - Malformated packet...expected(%ld)",
bytes, plurality(bytes, "", "s"),
sizeof(tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_CMD)-sizeof(tOCTVC1_MSG_HEADER));
return 1;
}
else
{
int temp_data = 0;
proto_item *ti;
ti = proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_CMD (%d byte%s)", bytes, plurality(bytes, "", "s"));
field_tree = proto_item_add_subtree(ti, ett_octvc1_msg_type);
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_boolean(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_CMD[0], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_CMD, ulResetStatsFlag), temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_CMD, ulResetStatsFlag);
}
return 0;
};
unsigned int dissect_tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, unsigned int offset )
{
proto_tree *field_tree = tree;
unsigned int offset_0 = offset;
gint bytes = tvb_length_remaining(tvb, offset);
if (bytes < (gint)(sizeof(tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP)-sizeof(tOCTVC1_MSG_HEADER)))
{
proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP (%d byte%s) - Malformated packet...expected(%ld)",
bytes, plurality(bytes, "", "s"),
sizeof(tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP)-sizeof(tOCTVC1_MSG_HEADER));
return 1;
}
else
{
int temp_data = 0;
proto_item *ti;
ti = proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP (%d byte%s)", bytes, plurality(bytes, "", "s"));
field_tree = proto_item_add_subtree(ti, ett_octvc1_msg_type);
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP[0], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP, ulControlRxPktCnt);
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP[1], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP, ulDataRxPktCnt);
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP[2], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP, ulControlBadHdrLenCnt);
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP[3], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP, ulDataBadHdrLenCnt);
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP[4], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP, ulInvalidPktFormatCnt);
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP[5], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP, ulNoFwdPktCnt);
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP[6], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP, ulCppCmdOverflowCnt);
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_boolean(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP[7], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP, ulTxPktQueueOverflowFlag), temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP, ulTxPktQueueOverflowFlag);
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP[8], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP, ulTxPktQueueOverflowFifoPoolId);
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP[9], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP, ulTxPktQueueOverflowFifoIndex);
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_boolean(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP[10], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP, ulRxFifoResynchFlag), temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP, ulRxFifoResynchFlag);
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP[11], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP, ulRxFifoResynchFifoPoolId);
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP[12], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP, ulRxFifoResynchFifoIndex);
}
return 0;
};
unsigned int dissect_tOCTVC1_CPP_MSG_MODULE_STATS_ETH_CMD(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, unsigned int offset )
{
proto_tree *field_tree = tree;
unsigned int offset_0 = offset;
gint bytes = tvb_length_remaining(tvb, offset);
if (bytes < (gint)(sizeof(tOCTVC1_CPP_MSG_MODULE_STATS_ETH_CMD)-sizeof(tOCTVC1_MSG_HEADER)))
{
proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_MSG_MODULE_STATS_ETH_CMD (%d byte%s) - Malformated packet...expected(%ld)",
bytes, plurality(bytes, "", "s"),
sizeof(tOCTVC1_CPP_MSG_MODULE_STATS_ETH_CMD)-sizeof(tOCTVC1_MSG_HEADER));
return 1;
}
else
{
int temp_data = 0;
proto_item *ti;
ti = proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_MSG_MODULE_STATS_ETH_CMD (%d byte%s)", bytes, plurality(bytes, "", "s"));
field_tree = proto_item_add_subtree(ti, ett_octvc1_msg_type);
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_STATS_ETH_CMD[0], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_STATS_ETH_CMD, ulEthPort);
}
return 0;
};
unsigned int dissect_tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, unsigned int offset )
{
proto_tree *field_tree = tree;
unsigned int offset_0 = offset;
gint bytes = tvb_length_remaining(tvb, offset);
if (bytes < (gint)(sizeof(tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP)-sizeof(tOCTVC1_MSG_HEADER)))
{
proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP (%d byte%s) - Malformated packet...expected(%ld)",
bytes, plurality(bytes, "", "s"),
sizeof(tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP)-sizeof(tOCTVC1_MSG_HEADER));
return 1;
}
else
{
int temp_data = 0;
proto_item *ti;
ti = proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP (%d byte%s)", bytes, plurality(bytes, "", "s"));
field_tree = proto_item_add_subtree(ti, ett_octvc1_msg_type);
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP[0], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP, ulEthPort);
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP[1], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP, ulEthRxPktCnt);
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP[2], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP, ulEthTxPktCnt);
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP[3], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP, ulEthRxByteCnt);
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP[4], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP, ulEthTxByteCnt);
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP[5], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP, ulEthBadHdrCnt);
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP[6], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP, ulEthBadHdrLenCnt);
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP[7], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP, ulEth8023BadLlcOuiCnt);
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP[8], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP, ulRxFifoReSyncCnt);
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP[9], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP, ulTxPktQueueOverflowCnt);
}
return 0;
};
unsigned int dissect_tOCTVC1_CPP_MSG_MODULE_GET_CONFIG_RSP(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, unsigned int offset )
{
proto_tree *field_tree = tree;
unsigned int offset_0 = offset;
gint bytes = tvb_length_remaining(tvb, offset);
if (bytes < (gint)(sizeof(tOCTVC1_CPP_MSG_MODULE_GET_CONFIG_RSP)-sizeof(tOCTVC1_MSG_HEADER)))
{
proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_MSG_MODULE_GET_CONFIG_RSP (%d byte%s) - Malformated packet...expected(%ld)",
bytes, plurality(bytes, "", "s"),
sizeof(tOCTVC1_CPP_MSG_MODULE_GET_CONFIG_RSP)-sizeof(tOCTVC1_MSG_HEADER));
return 1;
}
else
{
int temp_data = 0;
proto_item *ti;
ti = proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_MSG_MODULE_GET_CONFIG_RSP (%d byte%s)", bytes, plurality(bytes, "", "s"));
field_tree = proto_item_add_subtree(ti, ett_octvc1_msg_type);
ti = proto_tree_add_text(field_tree, tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_MSG_MODULE_GET_CONFIG_RSP, Static), "Static:tOCTVC1_CPP_CONFIG_STATIC");
{
proto_tree* sub_tree2;
sub_tree2 = proto_item_add_subtree(ti, ett_octvc1_msg_type);
offset = dissect_tOCTVC1_CPP_CONFIG_STATIC( tvb, pinfo, sub_tree2, offset, NULL );
}
}
return 0;
};
unsigned int dissect_tOCTVC1_CPP_MSG_FORWARD_OPEN_CMD(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, unsigned int offset )
{
proto_tree *field_tree = tree;
unsigned int offset_0 = offset;
gint bytes = tvb_length_remaining(tvb, offset);
if (bytes < (gint)(sizeof(tOCTVC1_CPP_MSG_FORWARD_OPEN_CMD)-sizeof(tOCTVC1_MSG_HEADER)))
{
proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_MSG_FORWARD_OPEN_CMD (%d byte%s) - Malformated packet...expected(%ld)",
bytes, plurality(bytes, "", "s"),
sizeof(tOCTVC1_CPP_MSG_FORWARD_OPEN_CMD)-sizeof(tOCTVC1_MSG_HEADER));
return 1;
}
else
{
int temp_data = 0;
proto_item *ti;
ti = proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_MSG_FORWARD_OPEN_CMD (%d byte%s)", bytes, plurality(bytes, "", "s"));
field_tree = proto_item_add_subtree(ti, ett_octvc1_msg_type);
ti = proto_tree_add_text(field_tree, tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_MSG_FORWARD_OPEN_CMD, hDestObj), "hDestObj:tOCTVC1_HANDLE");
{
proto_tree* sub_tree2;
sub_tree2 = proto_item_add_subtree(ti, ett_octvc1_msg_type);
offset = dissect_tOCTVC1_HANDLE( tvb, pinfo, sub_tree2, offset, NULL );
}
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_FORWARD_OPEN_CMD[1], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_FORWARD_OPEN_CMD, ulDestObjPort);
temp_data = tvb_get_ntohl( tvb, offset );
if( temp_data == cOCTVC1_FIFO_ID_INVALID)
{ ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_MSG_FORWARD_OPEN_CMD[2], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_MSG_FORWARD_OPEN_CMD, ulDestObjFifoId),temp_data, "cOCTVC1_FIFO_ID_INVALID (0x%08x)",temp_data);
}else {
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_FORWARD_OPEN_CMD[2], tvb, offset,
4, temp_data);
}
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_FORWARD_OPEN_CMD, ulDestObjFifoId);
{
int ulMac0, ulMac1;
unsigned int offs = offset;
ulMac0 = tvb_get_ntohl( tvb, offs );
offs += 4;
ulMac1 = tvb_get_ntohl( tvb, offs );
ti = proto_tree_add_string_format(field_tree, ahf_tOCTVC1_CPP_MSG_FORWARD_OPEN_CMD[3], tvb, offset,
sizeof(tOCTVC1_MAC_ADDRESS), "","DestMacAddress: %02x:%02x:%02x:%02x:%02x:%02x",
(( ulMac0 & 0x0000FF00 ) >> 8 ),
( ulMac0 & 0x000000FF ),
(( ulMac1 & 0xFF000000 ) >> 24 ),
(( ulMac1 & 0x00FF0000 ) >> 16 ),
(( ulMac1 & 0x0000FF00 ) >> 8 ),
( ulMac1 & 0x000000FF ) );
}
offset += sizeof(tOCTVC1_MAC_ADDRESS);
{
int ulMac0, ulMac1;
unsigned int offs = offset;
ulMac0 = tvb_get_ntohl( tvb, offs );
offs += 4;
ulMac1 = tvb_get_ntohl( tvb, offs );
ti = proto_tree_add_string_format(field_tree, ahf_tOCTVC1_CPP_MSG_FORWARD_OPEN_CMD[4], tvb, offset,
sizeof(tOCTVC1_MAC_ADDRESS), "","SrcMacAddress: %02x:%02x:%02x:%02x:%02x:%02x",
(( ulMac0 & 0x0000FF00 ) >> 8 ),
( ulMac0 & 0x000000FF ),
(( ulMac1 & 0xFF000000 ) >> 24 ),
(( ulMac1 & 0x00FF0000 ) >> 16 ),
(( ulMac1 & 0x0000FF00 ) >> 8 ),
( ulMac1 & 0x000000FF ) );
}
offset += sizeof(tOCTVC1_MAC_ADDRESS);
}
return 0;
};
unsigned int dissect_tOCTVC1_CPP_MSG_FORWARD_OPEN_RSP(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, unsigned int offset )
{
proto_tree *field_tree = tree;
unsigned int offset_0 = offset;
gint bytes = tvb_length_remaining(tvb, offset);
if (bytes < (gint)(sizeof(tOCTVC1_CPP_MSG_FORWARD_OPEN_RSP)-sizeof(tOCTVC1_MSG_HEADER)))
{
proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_MSG_FORWARD_OPEN_RSP (%d byte%s) - Malformated packet...expected(%ld)",
bytes, plurality(bytes, "", "s"),
sizeof(tOCTVC1_CPP_MSG_FORWARD_OPEN_RSP)-sizeof(tOCTVC1_MSG_HEADER));
return 1;
}
else
{
int temp_data = 0;
proto_item *ti;
ti = proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_MSG_FORWARD_OPEN_RSP (%d byte%s)", bytes, plurality(bytes, "", "s"));
field_tree = proto_item_add_subtree(ti, ett_octvc1_msg_type);
ti = proto_tree_add_text(field_tree, tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_MSG_FORWARD_OPEN_RSP, hForward), "hForward:tOCTVC1_HANDLE");
{
proto_tree* sub_tree2;
sub_tree2 = proto_item_add_subtree(ti, ett_octvc1_msg_type);
offset = dissect_tOCTVC1_HANDLE( tvb, pinfo, sub_tree2, offset, NULL );
}
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_FORWARD_OPEN_RSP[1], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_FORWARD_OPEN_RSP, ulFifoId);
}
return 0;
};
unsigned int dissect_tOCTVC1_CPP_MSG_FORWARD_CLOSE_CMD(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, unsigned int offset )
{
proto_tree *field_tree = tree;
unsigned int offset_0 = offset;
gint bytes = tvb_length_remaining(tvb, offset);
if (bytes < (gint)(sizeof(tOCTVC1_CPP_MSG_FORWARD_CLOSE_CMD)-sizeof(tOCTVC1_MSG_HEADER)))
{
proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_MSG_FORWARD_CLOSE_CMD (%d byte%s) - Malformated packet...expected(%ld)",
bytes, plurality(bytes, "", "s"),
sizeof(tOCTVC1_CPP_MSG_FORWARD_CLOSE_CMD)-sizeof(tOCTVC1_MSG_HEADER));
return 1;
}
else
{
int temp_data = 0;
proto_item *ti;
ti = proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_MSG_FORWARD_CLOSE_CMD (%d byte%s)", bytes, plurality(bytes, "", "s"));
field_tree = proto_item_add_subtree(ti, ett_octvc1_msg_type);
ti = proto_tree_add_text(field_tree, tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_MSG_FORWARD_CLOSE_CMD, hForward), "hForward:tOCTVC1_HANDLE");
{
proto_tree* sub_tree2;
sub_tree2 = proto_item_add_subtree(ti, ett_octvc1_msg_type);
offset = dissect_tOCTVC1_HANDLE( tvb, pinfo, sub_tree2, offset, NULL );
}
}
return 0;
};
unsigned int dissect_tOCTVC1_CPP_MSG_FORWARD_CLOSE_RSP(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, unsigned int offset )
{
proto_tree *field_tree = tree;
unsigned int offset_0 = offset;
gint bytes = tvb_length_remaining(tvb, offset);
if (bytes < (gint)(sizeof(tOCTVC1_CPP_MSG_FORWARD_CLOSE_RSP)-sizeof(tOCTVC1_MSG_HEADER)))
{
proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_MSG_FORWARD_CLOSE_RSP (%d byte%s) - Malformated packet...expected(%ld)",
bytes, plurality(bytes, "", "s"),
sizeof(tOCTVC1_CPP_MSG_FORWARD_CLOSE_RSP)-sizeof(tOCTVC1_MSG_HEADER));
return 1;
}
else
{
int temp_data = 0;
proto_item *ti;
ti = proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_MSG_FORWARD_CLOSE_RSP (%d byte%s)", bytes, plurality(bytes, "", "s"));
field_tree = proto_item_add_subtree(ti, ett_octvc1_msg_type);
ti = proto_tree_add_text(field_tree, tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_MSG_FORWARD_CLOSE_RSP, hForward), "hForward:tOCTVC1_HANDLE");
{
proto_tree* sub_tree2;
sub_tree2 = proto_item_add_subtree(ti, ett_octvc1_msg_type);
offset = dissect_tOCTVC1_HANDLE( tvb, pinfo, sub_tree2, offset, NULL );
}
}
return 0;
};
unsigned int dissect_tOCTVC1_CPP_MSG_FORWARD_STATS_CMD(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, unsigned int offset )
{
proto_tree *field_tree = tree;
unsigned int offset_0 = offset;
gint bytes = tvb_length_remaining(tvb, offset);
if (bytes < (gint)(sizeof(tOCTVC1_CPP_MSG_FORWARD_STATS_CMD)-sizeof(tOCTVC1_MSG_HEADER)))
{
proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_MSG_FORWARD_STATS_CMD (%d byte%s) - Malformated packet...expected(%ld)",
bytes, plurality(bytes, "", "s"),
sizeof(tOCTVC1_CPP_MSG_FORWARD_STATS_CMD)-sizeof(tOCTVC1_MSG_HEADER));
return 1;
}
else
{
int temp_data = 0;
proto_item *ti;
ti = proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_MSG_FORWARD_STATS_CMD (%d byte%s)", bytes, plurality(bytes, "", "s"));
field_tree = proto_item_add_subtree(ti, ett_octvc1_msg_type);
ti = proto_tree_add_text(field_tree, tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_MSG_FORWARD_STATS_CMD, ObjectGet), "ObjectGet:tOCTVC1_CURSOR_HANDLE_GET");
{
proto_tree* sub_tree2;
sub_tree2 = proto_item_add_subtree(ti, ett_octvc1_msg_type);
offset = dissect_tOCTVC1_CURSOR_HANDLE_GET( tvb, pinfo, sub_tree2, offset, NULL );
}
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_boolean(field_tree, ahf_tOCTVC1_CPP_MSG_FORWARD_STATS_CMD[1], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_MSG_FORWARD_STATS_CMD, ulResetStatsFlag), temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_FORWARD_STATS_CMD, ulResetStatsFlag);
}
return 0;
};
unsigned int dissect_tOCTVC1_CPP_MSG_FORWARD_STATS_RSP(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, unsigned int offset )
{
proto_tree *field_tree = tree;
unsigned int offset_0 = offset;
gint bytes = tvb_length_remaining(tvb, offset);
if (bytes < (gint)(sizeof(tOCTVC1_CPP_MSG_FORWARD_STATS_RSP)-sizeof(tOCTVC1_MSG_HEADER)))
{
proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_MSG_FORWARD_STATS_RSP (%d byte%s) - Malformated packet...expected(%ld)",
bytes, plurality(bytes, "", "s"),
sizeof(tOCTVC1_CPP_MSG_FORWARD_STATS_RSP)-sizeof(tOCTVC1_MSG_HEADER));
return 1;
}
else
{
int temp_data = 0;
proto_item *ti;
ti = proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_MSG_FORWARD_STATS_RSP (%d byte%s)", bytes, plurality(bytes, "", "s"));
field_tree = proto_item_add_subtree(ti, ett_octvc1_msg_type);
ti = proto_tree_add_text(field_tree, tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_MSG_FORWARD_STATS_RSP, ObjectGet), "ObjectGet:tOCTVC1_CURSOR_HANDLE_GET");
{
proto_tree* sub_tree2;
sub_tree2 = proto_item_add_subtree(ti, ett_octvc1_msg_type);
offset = dissect_tOCTVC1_CURSOR_HANDLE_GET( tvb, pinfo, sub_tree2, offset, NULL );
}
}
return 0;
};
unsigned int dissect_tOCTVC1_CPP_MSG_FORWARD_INFO_CMD(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, unsigned int offset )
{
proto_tree *field_tree = tree;
unsigned int offset_0 = offset;
gint bytes = tvb_length_remaining(tvb, offset);
if (bytes < (gint)(sizeof(tOCTVC1_CPP_MSG_FORWARD_INFO_CMD)-sizeof(tOCTVC1_MSG_HEADER)))
{
proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_MSG_FORWARD_INFO_CMD (%d byte%s) - Malformated packet...expected(%ld)",
bytes, plurality(bytes, "", "s"),
sizeof(tOCTVC1_CPP_MSG_FORWARD_INFO_CMD)-sizeof(tOCTVC1_MSG_HEADER));
return 1;
}
else
{
int temp_data = 0;
proto_item *ti;
ti = proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_MSG_FORWARD_INFO_CMD (%d byte%s)", bytes, plurality(bytes, "", "s"));
field_tree = proto_item_add_subtree(ti, ett_octvc1_msg_type);
ti = proto_tree_add_text(field_tree, tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_MSG_FORWARD_INFO_CMD, ObjectGet), "ObjectGet:tOCTVC1_CURSOR_HANDLE_GET");
{
proto_tree* sub_tree2;
sub_tree2 = proto_item_add_subtree(ti, ett_octvc1_msg_type);
offset = dissect_tOCTVC1_CURSOR_HANDLE_GET( tvb, pinfo, sub_tree2, offset, NULL );
}
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_FORWARD_INFO_CMD[1], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_FORWARD_INFO_CMD, ulGetType);
ti = proto_tree_add_text(field_tree, tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_MSG_FORWARD_INFO_CMD, hDestObj), "hDestObj:tOCTVC1_HANDLE");
{
proto_tree* sub_tree2;
sub_tree2 = proto_item_add_subtree(ti, ett_octvc1_msg_type);
offset = dissect_tOCTVC1_HANDLE( tvb, pinfo, sub_tree2, offset, NULL );
}
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_FORWARD_INFO_CMD[3], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_FORWARD_INFO_CMD, ulDestObjPort);
temp_data = tvb_get_ntohl( tvb, offset );
if( temp_data == cOCTVC1_FIFO_ID_INVALID)
{ ti = proto_tree_add_uint_format_value(field_tree, ahf_tOCTVC1_CPP_MSG_FORWARD_INFO_CMD[4], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_MSG_FORWARD_INFO_CMD, ulDestObjFifoId),temp_data, "cOCTVC1_FIFO_ID_INVALID (0x%08x)",temp_data);
}else {
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_FORWARD_INFO_CMD[4], tvb, offset,
4, temp_data);
}
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_FORWARD_INFO_CMD, ulDestObjFifoId);
{
int ulMac0, ulMac1;
unsigned int offs = offset;
ulMac0 = tvb_get_ntohl( tvb, offs );
offs += 4;
ulMac1 = tvb_get_ntohl( tvb, offs );
ti = proto_tree_add_string_format(field_tree, ahf_tOCTVC1_CPP_MSG_FORWARD_INFO_CMD[5], tvb, offset,
sizeof(tOCTVC1_MAC_ADDRESS), "","DestMacAddress: %02x:%02x:%02x:%02x:%02x:%02x",
(( ulMac0 & 0x0000FF00 ) >> 8 ),
( ulMac0 & 0x000000FF ),
(( ulMac1 & 0xFF000000 ) >> 24 ),
(( ulMac1 & 0x00FF0000 ) >> 16 ),
(( ulMac1 & 0x0000FF00 ) >> 8 ),
( ulMac1 & 0x000000FF ) );
}
offset += sizeof(tOCTVC1_MAC_ADDRESS);
}
return 0;
};
unsigned int dissect_tOCTVC1_CPP_MSG_FORWARD_INFO_RSP(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, unsigned int offset )
{
proto_tree *field_tree = tree;
unsigned int offset_0 = offset;
gint bytes = tvb_length_remaining(tvb, offset);
if (bytes < (gint)(sizeof(tOCTVC1_CPP_MSG_FORWARD_INFO_RSP)-sizeof(tOCTVC1_MSG_HEADER)))
{
proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_MSG_FORWARD_INFO_RSP (%d byte%s) - Malformated packet...expected(%ld)",
bytes, plurality(bytes, "", "s"),
sizeof(tOCTVC1_CPP_MSG_FORWARD_INFO_RSP)-sizeof(tOCTVC1_MSG_HEADER));
return 1;
}
else
{
int temp_data = 0;
proto_item *ti;
ti = proto_tree_add_text(tree, tvb, offset, bytes,
"tOCTVC1_CPP_MSG_FORWARD_INFO_RSP (%d byte%s)", bytes, plurality(bytes, "", "s"));
field_tree = proto_item_add_subtree(ti, ett_octvc1_msg_type);
ti = proto_tree_add_text(field_tree, tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_MSG_FORWARD_INFO_RSP, ObjectGet), "ObjectGet:tOCTVC1_CURSOR_HANDLE_GET");
{
proto_tree* sub_tree2;
sub_tree2 = proto_item_add_subtree(ti, ett_octvc1_msg_type);
offset = dissect_tOCTVC1_CURSOR_HANDLE_GET( tvb, pinfo, sub_tree2, offset, NULL );
}
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_FORWARD_INFO_RSP[1], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_FORWARD_INFO_RSP, ulFifoId);
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_boolean(field_tree, ahf_tOCTVC1_CPP_MSG_FORWARD_INFO_RSP[2], tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_MSG_FORWARD_INFO_RSP, ulMoreFlag), temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_FORWARD_INFO_RSP, ulMoreFlag);
temp_data = tvb_get_ntohl( tvb, offset );
{
ti = proto_tree_add_uint(field_tree, ahf_tOCTVC1_CPP_MSG_FORWARD_INFO_RSP[3], tvb, offset,
4, temp_data);
}
offset += mWS_FIELDSIZE(tOCTVC1_CPP_MSG_FORWARD_INFO_RSP, ulNumDestEntry);
ti = proto_tree_add_text(field_tree, tvb, offset,
mWS_FIELDSIZE(tOCTVC1_CPP_MSG_FORWARD_INFO_RSP, aDestEntry), "aDestEntry:tOCTVC1_CPP_DEST_ENTRY");
{
int i, ofs=offset;
proto_tree* sub_tree = proto_item_add_subtree(ti, ett_octvc1_msg_type);
for( i=0; i<4; i++ )
{
{
proto_tree* sub_tree2;
ti = proto_tree_add_text(sub_tree, tvb, offset,
sizeof(tOCTVC1_CPP_DEST_ENTRY), "[%d]:", i);
sub_tree2 = proto_item_add_subtree(ti, ett_octvc1_msg_type);
offset = dissect_tOCTVC1_CPP_DEST_ENTRY( tvb, pinfo, sub_tree2, offset, NULL );
}
}
}
}
return 0;
};
/****************************************************************************
MODULE REGISTERED EXPORTED FUNCTION
****************************************************************************/
void ws_register_OCTVC1_CPP(void)
{
/****************************************************************************
Register Common struct
****************************************************************************/
register_tOCTVC1_CPP_CONFIG_STATIC();
register_tOCTVC1_CPP_RX_RTP_PROFILE_ENTRY();
register_tOCTVC1_CPP_TX_RTP_PROFILE_ENTRY();
register_tOCTVC1_CPP_DEST_ENTRY();
register_tOCTVC1_CPP_TX_HDR_COMMON();
register_tOCTVC1_CPP_TX_HDR_ETHERNET();
register_tOCTVC1_CPP_TX_HDR_ETH_PQ();
register_tOCTVC1_CPP_TX_HDR_LLC();
register_tOCTVC1_CPP_TX_HDR_NLPID();
register_tOCTVC1_CPP_TX_HDR_SNAP();
register_tOCTVC1_CPP_TX_HDR_IPV4();
register_tOCTVC1_CPP_TX_HDR_IPV6();
register_tOCTVC1_CPP_TX_HDR_UDP();
register_tOCTVC1_CPP_TX_HDR_RTP();
/****************************************************************************
CMD/RSP Registered
****************************************************************************/
register_tOCTVC1_CPP_MSG_MODULE_ADD_DEST_CMD();
register_tOCTVC1_CPP_MSG_MODULE_ADD_DEST_RSP();
register_tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_CMD();
register_tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_RSP();
register_tOCTVC1_CPP_MSG_MODULE_INFO_DEST_CMD();
register_tOCTVC1_CPP_MSG_MODULE_INFO_DEST_RSP();
register_tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_CMD();
register_tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP();
register_tOCTVC1_CPP_MSG_MODULE_STATS_ETH_CMD();
register_tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP();
register_tOCTVC1_CPP_MSG_MODULE_GET_CONFIG_RSP();
register_tOCTVC1_CPP_MSG_FORWARD_OPEN_CMD();
register_tOCTVC1_CPP_MSG_FORWARD_OPEN_RSP();
register_tOCTVC1_CPP_MSG_FORWARD_CLOSE_CMD();
register_tOCTVC1_CPP_MSG_FORWARD_CLOSE_RSP();
register_tOCTVC1_CPP_MSG_FORWARD_STATS_CMD();
register_tOCTVC1_CPP_MSG_FORWARD_STATS_RSP();
register_tOCTVC1_CPP_MSG_FORWARD_INFO_CMD();
register_tOCTVC1_CPP_MSG_FORWARD_INFO_RSP();
}
/****************************************************************************
MODULE DISSECTOR FUNCTIONS
****************************************************************************/
int ws_dissect_OCTVC1_CPP_CMD( guint32 CID, tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree )
{
if( tree )
{
switch( CID ) {
case cOCTVC1_CPP_MSG_MODULE_ADD_DEST_CID: return dissect_tOCTVC1_CPP_MSG_MODULE_ADD_DEST_CMD( tvb, pinfo, tree, 0 ); break;
case cOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_CID: return dissect_tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_CMD( tvb, pinfo, tree, 0 ); break;
case cOCTVC1_CPP_MSG_MODULE_INFO_DEST_CID: return dissect_tOCTVC1_CPP_MSG_MODULE_INFO_DEST_CMD( tvb, pinfo, tree, 0 ); break;
case cOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_CID: return dissect_tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_CMD( tvb, pinfo, tree, 0 ); break;
case cOCTVC1_CPP_MSG_MODULE_STATS_ETH_CID: return dissect_tOCTVC1_CPP_MSG_MODULE_STATS_ETH_CMD( tvb, pinfo, tree, 0 ); break;
case cOCTVC1_CPP_MSG_MODULE_GET_CONFIG_CID: return 0; break;
case cOCTVC1_CPP_MSG_FORWARD_OPEN_CID: return dissect_tOCTVC1_CPP_MSG_FORWARD_OPEN_CMD( tvb, pinfo, tree, 0 ); break;
case cOCTVC1_CPP_MSG_FORWARD_CLOSE_CID: return dissect_tOCTVC1_CPP_MSG_FORWARD_CLOSE_CMD( tvb, pinfo, tree, 0 ); break;
case cOCTVC1_CPP_MSG_FORWARD_STATS_CID: return dissect_tOCTVC1_CPP_MSG_FORWARD_STATS_CMD( tvb, pinfo, tree, 0 ); break;
case cOCTVC1_CPP_MSG_FORWARD_INFO_CID: return dissect_tOCTVC1_CPP_MSG_FORWARD_INFO_CMD( tvb, pinfo, tree, 0 ); break;
default: return 1;
}
}
return 0;
}
int ws_dissect_OCTVC1_CPP_RSP( guint32 CID, tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree )
{
if( tree )
{
switch( CID ) {
case cOCTVC1_CPP_MSG_MODULE_ADD_DEST_CID: return dissect_tOCTVC1_CPP_MSG_MODULE_ADD_DEST_RSP( tvb, pinfo, tree, 0 ); break;
case cOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_CID: return dissect_tOCTVC1_CPP_MSG_MODULE_REMOVE_DEST_RSP( tvb, pinfo, tree, 0 ); break;
case cOCTVC1_CPP_MSG_MODULE_INFO_DEST_CID: return dissect_tOCTVC1_CPP_MSG_MODULE_INFO_DEST_RSP( tvb, pinfo, tree, 0 ); break;
case cOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_CID: return dissect_tOCTVC1_CPP_MSG_MODULE_STATS_GLOBAL_RSP( tvb, pinfo, tree, 0 ); break;
case cOCTVC1_CPP_MSG_MODULE_STATS_ETH_CID: return dissect_tOCTVC1_CPP_MSG_MODULE_STATS_ETH_RSP( tvb, pinfo, tree, 0 ); break;
case cOCTVC1_CPP_MSG_MODULE_GET_CONFIG_CID: return dissect_tOCTVC1_CPP_MSG_MODULE_GET_CONFIG_RSP( tvb, pinfo, tree, 0 ); break;
case cOCTVC1_CPP_MSG_FORWARD_OPEN_CID: return dissect_tOCTVC1_CPP_MSG_FORWARD_OPEN_RSP( tvb, pinfo, tree, 0 ); break;
case cOCTVC1_CPP_MSG_FORWARD_CLOSE_CID: return dissect_tOCTVC1_CPP_MSG_FORWARD_CLOSE_RSP( tvb, pinfo, tree, 0 ); break;
case cOCTVC1_CPP_MSG_FORWARD_STATS_CID: return dissect_tOCTVC1_CPP_MSG_FORWARD_STATS_RSP( tvb, pinfo, tree, 0 ); break;
case cOCTVC1_CPP_MSG_FORWARD_INFO_CID: return dissect_tOCTVC1_CPP_MSG_FORWARD_INFO_RSP( tvb, pinfo, tree, 0 ); break;
default: return 1;
}
}
return 0;
}
int ws_dissect_OCTVC1_CPP_EVT( guint32 CID, tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree )
{
if( tree )
{
switch( CID ) {
default: return 1;
}
}
return 0;
}
/****************************************************************************
MODULE DISSECTOR EXPORTED FUNCTION
****************************************************************************/
int ws_dissect_OCTVC1_CPP( guint8 message_type, guint32 CID, tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree )
{
if (message_type == cOCTVC1_MSG_TYPE_RESPONSE)
return ws_dissect_OCTVC1_CPP_RSP( CID, tvb, pinfo, tree);
if (message_type == cOCTVC1_MSG_TYPE_COMMAND)
return ws_dissect_OCTVC1_CPP_CMD( CID, tvb, pinfo, tree);
if (message_type == cOCTVC1_MSG_TYPE_NOTIFICATION )
return ws_dissect_OCTVC1_CPP_EVT( CID, tvb, pinfo, tree);
else
return 1;
}