From e65abeb9bf65d7b7839fd4b389c7834ab9d4e222 Mon Sep 17 00:00:00 2001 From: stig Date: Mon, 22 Jun 2009 04:58:08 +0000 Subject: From Kovarththanan Rajaratnam: Move header field info declarations into function scope. This is the first step. Another patch will be submitted which actually scrubs the header field info declarations (remove empty blurbs, etc.) git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@28797 f5534014-38df-0310-8fa8-9805f1628bb7 --- epan/dissectors/packet-lmp.c | 1290 ++++++++++++++++++++-------------------- epan/dissectors/packet-mpls.c | 158 ++--- epan/dissectors/packet-ospf.c | 662 ++++++++++----------- epan/dissectors/packet-pcep.c | 400 ++++++------- epan/dissectors/packet-rsvp.c | 650 ++++++++++---------- epan/dissectors/packet-tpncp.c | 221 +++---- 6 files changed, 1691 insertions(+), 1690 deletions(-) (limited to 'epan/dissectors') diff --git a/epan/dissectors/packet-lmp.c b/epan/dissectors/packet-lmp.c index a310108e7a..185ac6f953 100644 --- a/epan/dissectors/packet-lmp.c +++ b/epan/dissectors/packet-lmp.c @@ -499,651 +499,6 @@ enum lmp_filter_keys { static int lmp_filter[LMPF_MAX]; -static hf_register_info lmpf_info[] = { - - /* Message type number */ - {&lmp_filter[LMPF_MSG], - { "Message Type", "lmp.msg", FT_UINT8, BASE_DEC, VALS(message_type_vals), 0x0, - "", HFILL }}, - - /* Message type shorthands */ - {&lmp_filter[LMPF_MSG_CONFIG], - { "Config Message", "lmp.msg.config", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_MSG_CONFIG_ACK], - { "ConfigAck Message", "lmp.msg.configack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_MSG_CONFIG_NACK], - { "ConfigNack Message", "lmp.msg.confignack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_MSG_HELLO], - { "HELLO Message", "lmp.msg.hello", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_MSG_BEGIN_VERIFY], - { "BeginVerify Message", "lmp.msg.beginverify", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_MSG_BEGIN_VERIFY_ACK], - { "BeginVerifyAck Message", "lmp.msg.beginverifyack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_MSG_BEGIN_VERIFY_NACK], - { "BeginVerifyNack Message", "lmp.msg.beginverifynack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_MSG_END_VERIFY], - { "EndVerify Message", "lmp.msg.endverify", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_MSG_END_VERIFY_ACK], - { "EndVerifyAck Message", "lmp.msg.endverifyack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_MSG_TEST], - { "Test Message", "lmp.msg.test", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_MSG_TEST_STATUS_SUCCESS], - { "TestStatusSuccess Message", "lmp.msg.teststatussuccess", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_MSG_TEST_STATUS_FAILURE], - { "TestStatusFailure Message", "lmp.msg.teststatusfailure", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_MSG_TEST_STATUS_ACK], - { "TestStatusAck Message", "lmp.msg.teststatusack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_MSG_LINK_SUMMARY], - { "LinkSummary Message", "lmp.msg.linksummary", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_MSG_LINK_SUMMARY_ACK], - { "LinkSummaryAck Message", "lmp.msg.linksummaryack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_MSG_LINK_SUMMARY_NACK], - { "LinkSummaryNack Message", "lmp.msg.linksummarynack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_MSG_CHANNEL_STATUS], - { "ChannelStatus Message", "lmp.msg.channelstatus", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_MSG_CHANNEL_STATUS_ACK], - { "ChannelStatusAck Message", "lmp.msg.channelstatusack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_MSG_CHANNEL_STATUS_REQ], - { "ChannelStatusRequest Message", "lmp.msg.channelstatusrequest", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_MSG_CHANNEL_STATUS_RESP], - { "ChannelStatusResponse Message", "lmp.msg.channelstatusresponse", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_MSG_TRACE_MONITOR], - { "TraceMonitor Message", "lmp.msg.tracemonitor", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_MSG_TRACE_MONITOR_ACK], - { "TraceMonitorAck Message", "lmp.msg.tracemonitorack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_MSG_TRACE_MONITOR_NACK], - { "TraceMonitorNack Message", "lmp.msg.tracemonitornack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_MSG_TRACE_MISMATCH], - { "TraceMismatch Message", "lmp.msg.tracemismatch", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_MSG_TRACE_MISMATCH_ACK], - { "TraceMismatchAck Message", "lmp.msg.tracemismatchack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_MSG_TRACE_REQUEST], - { "TraceRequest Message", "lmp.msg.tracerequest", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_MSG_TRACE_REPORT], - { "TraceReport Message", "lmp.msg.tracereport", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_MSG_TRACE_REQUEST_NACK], - { "TraceRequestNack Message", "lmp.msg.tracerequestnack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_MSG_INSERT_TRACE], - { "InsertTrace Message", "lmp.msg.inserttrace", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_MSG_INSERT_TRACE_ACK], - { "InsertTraceAck Message", "lmp.msg.inserttraceack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_MSG_INSERT_TRACE_NACK], - { "InsertTraceNack Message", "lmp.msg.inserttracenack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_MSG_SERVICE_CONFIG], - { "ServiceConfig Message", "lmp.msg.serviceconfig", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_MSG_SERVICE_CONFIG_ACK], - { "ServiceConfigAck Message", "lmp.msg.serviceconfigack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_MSG_SERVICE_CONFIG_NACK], - { "ServiceConfigNack Message", "lmp.msg.serviceconfignack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_MSG_DISCOVERY_RESP], - { "DiscoveryResponse Message", "lmp.msg.discoveryresp", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_MSG_DISCOVERY_RESP_ACK], - { "DiscoveryResponseAck Message", "lmp.msg.discoveryrespack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_MSG_DISCOVERY_RESP_NACK], - { "DiscoveryResponseNack Message", "lmp.msg.discoveryrespnack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - /* LMP Message Header Fields ------------------- */ - - {&lmp_filter[LMPF_HDR_FLAGS], - { "LMP Header - Flags", "lmp.hdr.flags", FT_UINT8, BASE_DEC, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_HDR_FLAGS_CC_DOWN], - { "ControlChannelDown", "lmp.hdr.ccdown", FT_BOOLEAN, 8, NULL, 0x01, - "", HFILL }}, - - {&lmp_filter[LMPF_HDR_FLAGS_REBOOT], - { "Reboot", "lmp.hdr.reboot", FT_BOOLEAN, 8, NULL, 0x02, - "", HFILL }}, - - /* LMP object class filters ------------------------------- */ - - {&lmp_filter[LMPF_OBJECT], - { "LOCAL_CCID", "lmp.object", FT_UINT8, BASE_DEC, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_CLASS_CCID], - { "CCID", "lmp.obj.ccid", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_CLASS_NODE_ID], - { "NODE_ID", "lmp.obj.Nodeid", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_CLASS_LINK_ID], - { "LINK_ID", "lmp.obj.linkid", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_CLASS_INTERFACE_ID], - { "INTERFACE_ID", "lmp.obj.interfaceid", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_CLASS_MESSAGE_ID], - { "MESSAGE_ID", "lmp.obj.messageid", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_CLASS_CONFIG], - { "CONFIG", "lmp.obj.config", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_CLASS_HELLO], - { "HELLO", "lmp.obj.hello", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_CLASS_BEGIN_VERIFY], - { "BEGIN_VERIFY", "lmp.obj.begin_verify", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_CLASS_BEGIN_VERIFY_ACK], - { "BEGIN_VERIFY_ACK", "lmp.obj.begin_verify_ack", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_CLASS_VERIFY_ID], - { "VERIFY_ID", "lmp.obj.verifyid", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_CLASS_TE_LINK], - { "TE_LINK", "lmp.obj.te_link", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_CLASS_DATA_LINK], - { "DATA_LINK", "lmp.obj.data_link", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_CLASS_CHANNEL_STATUS], - { "CHANNEL_STATUS", "lmp.obj.channel_status", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_CLASS_CHANNEL_STATUS_REQUEST], - { "CHANNEL_STATUS_REQUEST", "lmp.obj.channel_status_request", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_CLASS_ERROR], - { "ERROR", "lmp.obj.error", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_CLASS_TRACE], - { "TRACE", "lmp.obj.trace", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_CLASS_TRACE_REQ], - { "TRACE REQ", "lmp.obj.trace_req", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_CLASS_SERVICE_CONFIG], - { "SERVICE_CONFIG", "lmp.obj.serviceconfig", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_CLASS_DA_DCN_ADDRESS], - { "DA_DCN_ADDRESS", "lmp.obj.dadcnaddr", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_CLASS_LOCAL_LAD_INFO], - { "LOCAL_LAD_INFO", "lmp.obj.localladinfo", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - /* Other LMP Value Filters ------------------------------ */ - - {&lmp_filter[LMPF_VAL_CTYPE], - { "Object C-Type", "lmp.obj.ctype", FT_UINT8, BASE_DEC, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_VAL_LOCAL_CCID], - { "Local CCID Value", "lmp.local_ccid", FT_UINT32, BASE_DEC, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_VAL_REMOTE_CCID], - { "Remote CCID Value", "lmp.remote_ccid", FT_UINT32, BASE_DEC, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_VAL_LOCAL_NODE_ID], - { "Local Node ID Value", "lmp.local_nodeid", FT_IPv4, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_VAL_REMOTE_NODE_ID], - { "Remote Node ID Value", "lmp.remote_nodeid", FT_IPv4, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_VAL_LOCAL_LINK_ID_IPV4], - { "Local Link ID - IPv4", "lmp.local_linkid_ipv4", FT_IPv4, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_VAL_LOCAL_LINK_ID_UNNUM], - { "Local Link ID - Unnumbered", "lmp.local_linkid_unnum", FT_UINT32, BASE_DEC, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_VAL_REMOTE_LINK_ID_IPV4], - { "Remote Link ID - IPv4", "lmp.remote_linkid_ipv4", FT_UINT32, BASE_DEC, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_VAL_REMOTE_LINK_ID_UNNUM], - { "Remote Link ID - Unnumbered", "lmp.remote_linkid_unnum", FT_UINT32, BASE_DEC, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_VAL_LOCAL_INTERFACE_ID_IPV4], - { "Local Interface ID - IPv4", "lmp.local_interfaceid_ipv4", FT_IPv4, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_VAL_LOCAL_INTERFACE_ID_UNNUM], - { "Local Interface ID - Unnumbered", "lmp.local_interfaceid_unnum", FT_UINT32, BASE_DEC, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_VAL_REMOTE_INTERFACE_ID_IPV4], - { "Remote Interface ID - IPv4", "lmp.remote_interfaceid_ipv4", FT_IPv4, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_VAL_REMOTE_INTERFACE_ID_UNNUM], - { "Remote Interface ID - Unnumbered", "lmp.remote_interfaceid_unnum", FT_UINT32, BASE_DEC, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_VAL_MESSAGE_ID], - { "Message-ID Value", "lmp.messageid", FT_UINT32, BASE_DEC, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_VAL_MESSAGE_ID_ACK], - { "Message-ID Ack Value", "lmp.messageid_ack", FT_UINT32, BASE_DEC, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_VAL_CONFIG_HELLO], - { "HelloInterval", "lmp.hellointerval", FT_UINT32, BASE_DEC, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_VAL_CONFIG_HELLO_DEAD], - { "HelloDeadInterval", "lmp.hellodeadinterval", FT_UINT32, BASE_DEC, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_VAL_HELLO_TXSEQ], - { "TxSeqNum", "lmp.txseqnum", FT_UINT32, BASE_DEC, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_VAL_HELLO_RXSEQ], - { "RxSeqNum", "lmp.rxseqnum", FT_UINT32, BASE_DEC, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_VAL_BEGIN_VERIFY_FLAGS], - { "Flags", "lmp.begin_verify.flags", FT_UINT16, BASE_HEX, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_VAL_BEGIN_VERIFY_FLAGS_ALL_LINKS], - { "Verify All Links", "lmp.begin_verify.all_links", - FT_BOOLEAN, 8, NULL, 0x01, "", HFILL }}, - {&lmp_filter[LMPF_VAL_BEGIN_VERIFY_FLAGS_LINK_TYPE], - { "Data Link Type", "lmp.begin_verify.link_type", - FT_BOOLEAN, 8, NULL, 0x02, "", HFILL }}, - {&lmp_filter[LMPF_VAL_BEGIN_VERIFY_ENCTYPE], - { "Encoding Type", "lmp.begin_verify.enctype", FT_UINT8, BASE_DEC, VALS(gmpls_lsp_enc_str), 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_VAL_VERIFY_ID], - { "Verify-ID", "lmp.verifyid", FT_UINT32, BASE_DEC, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_VAL_TE_LINK_FLAGS], - { "TE-Link Flags", "lmp.te_link_flags", FT_UINT8, BASE_HEX, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_VAL_TE_LINK_FLAGS_FAULT_MGMT], - { "Fault Management Supported", "lmp.te_link.fault_mgmt", - FT_BOOLEAN, 8, NULL, 0x01, "", HFILL }}, - {&lmp_filter[LMPF_VAL_TE_LINK_FLAGS_LINK_VERIFY], - { "Link Verification Supported", "lmp.te_link.link_verify", - FT_BOOLEAN, 8, NULL, 0x02, "", HFILL }}, - {&lmp_filter[LMPF_VAL_TE_LINK_LOCAL_IPV4], - { "TE-Link Local ID - IPv4", "lmp.te_link.local_ipv4", FT_IPv4, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_VAL_TE_LINK_LOCAL_UNNUM], - { "TE-Link Local ID - Unnumbered", "lmp.te_link.local_unnum", FT_UINT32, BASE_DEC, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_VAL_TE_LINK_REMOTE_IPV4], - { "TE-Link Remote ID - IPv4", "lmp.te_link.remote_ipv4", FT_IPv4, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_VAL_TE_LINK_REMOTE_UNNUM], - { "TE-Link Remote ID - Unnumbered", "lmp.te_link.remote_unnum", FT_UINT32, BASE_DEC, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_VAL_DATA_LINK_FLAGS], - { "Data-Link Flags", "lmp.data_link_flags", FT_UINT8, BASE_HEX, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_VAL_DATA_LINK_FLAGS_PORT], - { "Data-Link is Individual Port", "lmp.data_link.port", - FT_BOOLEAN, 8, NULL, 0x01, "", HFILL }}, - {&lmp_filter[LMPF_VAL_DATA_LINK_FLAGS_ALLOCATED], - { "Data-Link is Allocated", "lmp.data_link.link_verify", - FT_BOOLEAN, 8, NULL, 0x02, "", HFILL }}, - {&lmp_filter[LMPF_VAL_DATA_LINK_LOCAL_IPV4], - { "Data-Link Local ID - IPv4", "lmp.data_link.local_ipv4", FT_IPv4, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_VAL_DATA_LINK_LOCAL_UNNUM], - { "Data-Link Local ID - Unnumbered", "lmp.data_link.local_unnum", FT_UINT32, BASE_DEC, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_VAL_DATA_LINK_REMOTE_IPV4], - { "Data-Link Remote ID - IPv4", "lmp.data_link.remote_ipv4", FT_IPv4, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_VAL_DATA_LINK_REMOTE_UNNUM], - { "Data-Link Remote ID - Unnumbered", "lmp.data_link.remote_unnum", FT_UINT32, BASE_DEC, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_VAL_DATA_LINK_SUBOBJ], - { "Subobject", "lmp.data_link_subobj", FT_NONE, BASE_DEC, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_VAL_DATA_LINK_SUBOBJ_SWITCHING_TYPE], - { "Interface Switching Capability", "lmp.data_link_switching", FT_UINT8, BASE_DEC, - VALS(gmpls_switching_type_str), 0x0, "", HFILL }}, - {&lmp_filter[LMPF_VAL_DATA_LINK_SUBOBJ_LSP_ENCODING], - { "LSP Encoding Type", "lmp.data_link_encoding", FT_UINT8, BASE_DEC, - VALS(gmpls_lsp_enc_str), 0x0, "", HFILL }}, - - {&lmp_filter[LMPF_VAL_ERROR], - { "Error Code", "lmp.error", FT_UINT32, BASE_HEX, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_VAL_ERROR_VERIFY_UNSUPPORTED_LINK], - { "Verification - Unsupported for this TE-Link", "lmp.error.verify_unsupported_link", - FT_BOOLEAN, 8, NULL, 0x01, "", HFILL }}, - {&lmp_filter[LMPF_VAL_ERROR_VERIFY_UNWILLING], - { "Verification - Unwilling to Verify at this time", "lmp.error.verify_unwilling", - FT_BOOLEAN, 8, NULL, 0x02, "", HFILL }}, - {&lmp_filter[LMPF_VAL_ERROR_VERIFY_TRANSPORT], - { "Verification - Transport Unsupported", "lmp.error.verify_unsupported_transport", - FT_BOOLEAN, 8, NULL, 0x04, "", HFILL }}, - {&lmp_filter[LMPF_VAL_ERROR_VERIFY_TE_LINK_ID], - { "Verification - TE Link ID Configuration Error", "lmp.error.verify_te_link_id", - FT_BOOLEAN, 8, NULL, 0x08, "", HFILL }}, - - {&lmp_filter[LMPF_VAL_ERROR_VERIFY_UNKNOWN_CTYPE], - { "Verification - Unknown Object C-Type", "lmp.error.verify_unknown_ctype", - FT_BOOLEAN, 8, NULL, 0x08, "", HFILL }}, - - {&lmp_filter[LMPF_VAL_ERROR_SUMMARY_BAD_PARAMETERS], - { "Summary - Unacceptable non-negotiable parameters", "lmp.error.summary_bad_params", - FT_BOOLEAN, 8, NULL, 0x01, "", HFILL }}, - {&lmp_filter[LMPF_VAL_ERROR_SUMMARY_RENEGOTIATE], - { "Summary - Renegotiate Parametere", "lmp.error.summary_renegotiate", - FT_BOOLEAN, 8, NULL, 0x02, "", HFILL }}, - {&lmp_filter[LMPF_VAL_ERROR_SUMMARY_BAD_TE_LINK], - { "Summary - Bad TE Link Object", "lmp.error.summary_bad_te_link", - FT_BOOLEAN, 8, NULL, 0x08, "", HFILL }}, - {&lmp_filter[LMPF_VAL_ERROR_SUMMARY_BAD_DATA_LINK], - { "Summary - Bad Data Link Object", "lmp.error.summary_bad_data_link", - FT_BOOLEAN, 8, NULL, 0x10, "", HFILL }}, - {&lmp_filter[LMPF_VAL_ERROR_SUMMARY_UNKNOWN_TEL_CTYPE], - { "Summary - Bad TE Link C-Type", "lmp.error.summary_unknown_tel_ctype", - FT_BOOLEAN, 8, NULL, 0x04, "", HFILL }}, - {&lmp_filter[LMPF_VAL_ERROR_SUMMARY_UNKNOWN_DL_CTYPE], - { "Summary - Bad Data Link C-Type", "lmp.error.summary_unknown_dl_ctype", - FT_BOOLEAN, 8, NULL, 0x04, "", HFILL }}, - {&lmp_filter[LMPF_VAL_ERROR_SUMMARY_BAD_REMOTE_LINK_ID], - { "Summary - Bad Remote Link ID", "lmp.error.summary_bad_remote_link_id", - FT_BOOLEAN, 8, NULL, 0x04, "", HFILL }}, - {&lmp_filter[LMPF_VAL_ERROR_CONFIG_BAD_PARAMETERS], - { "Config - Unacceptable non-negotiable parameters", "lmp.error.config_bad_params", - FT_BOOLEAN, 8, NULL, 0x01, "", HFILL }}, - {&lmp_filter[LMPF_VAL_ERROR_CONFIG_RENEGOTIATE], - { "Config - Renegotiate Parameter", "lmp.error.config_renegotiate", - FT_BOOLEAN, 8, NULL, 0x02, "", HFILL }}, - {&lmp_filter[LMPF_VAL_ERROR_CONFIG_BAD_CCID], - { "Config - Bad CC ID", "lmp.error.config_bad_ccid", - FT_BOOLEAN, 8, NULL, 0x04, "", HFILL }}, - {&lmp_filter[LMPF_VAL_ERROR_TRACE_UNSUPPORTED_TYPE], - { "Trace - Unsupported trace type", "lmp.error.trace_unsupported_type", - FT_BOOLEAN, 8, NULL, 0x01, "", HFILL }}, - {&lmp_filter[LMPF_VAL_ERROR_TRACE_INVALID_MSG], - { "Trace - Invalid Trace Message", "lmp.error.trace_invalid_msg", - FT_BOOLEAN, 8, NULL, 0x02, "", HFILL }}, - {&lmp_filter[LMPF_VAL_ERROR_TRACE_UNKNOWN_CTYPE], - { "Trace - Unknown Object C-Type", "lmp.error.trace_unknown_ctype", - FT_BOOLEAN, 8, NULL, 0x10, "", HFILL }}, - {&lmp_filter[LMPF_VAL_ERROR_LAD_AREA_ID_MISMATCH], - { "LAD - Domain Routing Area ID Mismatch detected", "lmp.error.lad_area_id_mismatch", - FT_BOOLEAN, 8, NULL, 0x01, "", HFILL }}, - {&lmp_filter[LMPF_VAL_ERROR_LAD_TCP_ID_MISMATCH], - { "LAD - TCP ID Mismatch detected", "lmp.error.lad_tcp_id_mismatch", - FT_BOOLEAN, 8, NULL, 0x02, "", HFILL }}, - {&lmp_filter[LMPF_VAL_ERROR_LAD_DA_DCN_MISMATCH], - { "LAD - DA DCN Mismatch detected", "lmp.error.lad_da_dcn_mismatch", - FT_BOOLEAN, 8, NULL, 0x04, "", HFILL }}, - {&lmp_filter[LMPF_VAL_ERROR_LAD_CAPABILITY_MISMATCH], - { "LAD - Capability Mismatch detected", "lmp.error.lad_capability_mismatch", - FT_BOOLEAN, 8, NULL, 0x08, "", HFILL }}, - {&lmp_filter[LMPF_VAL_ERROR_LAD_UNKNOWN_CTYPE], - { "LAD - Unknown Object C-Type", "lmp.error.lad_unknown_ctype", - FT_BOOLEAN, 8, NULL, 0x10, "", HFILL }}, - - {&lmp_filter[LMPF_VAL_TRACE_LOCAL_TYPE], - { "Local Trace Type", "lmp.trace.local_type", FT_UINT16, BASE_DEC, - VALS(lmp_trace_type_str), 0x0, "", HFILL }}, - {&lmp_filter[LMPF_VAL_TRACE_LOCAL_LEN], - { "Local Trace Length", "lmp.trace.local_length", FT_UINT16, BASE_DEC, - NULL, 0x0, "", HFILL }}, - {&lmp_filter[LMPF_VAL_TRACE_LOCAL_MSG], - { "Local Trace Message", "lmp.trace.local_msg", FT_STRING, BASE_NONE, - NULL, 0x0, "", HFILL }}, - {&lmp_filter[LMPF_VAL_TRACE_REMOTE_TYPE], - { "Remote Trace Type", "lmp.trace.remote_type", FT_UINT16, BASE_DEC, - VALS(lmp_trace_type_str), 0x0, "", HFILL }}, - {&lmp_filter[LMPF_VAL_TRACE_REMOTE_LEN], - { "Remote Trace Length", "lmp.trace.remote_length", FT_UINT16, BASE_DEC, - NULL, 0x0, "", HFILL }}, - {&lmp_filter[LMPF_VAL_TRACE_REMOTE_MSG], - { "Remote Trace Message", "lmp.trace.remote_msg", FT_STRING, BASE_NONE, - NULL, 0x0, "", HFILL }}, - - {&lmp_filter[LMPF_VAL_TRACE_REQ_TYPE], - { "Trace Type", "lmp.trace_req.type", FT_UINT16, BASE_DEC, - VALS(lmp_trace_type_str), 0x0, "", HFILL }}, - - {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_SP_FLAGS], - { "Service Config - Supported Signalling Protocols", - "lmp.service_config.sp", FT_UINT8, BASE_HEX, NULL, 0x0, "", HFILL}}, - - {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_SP_FLAGS_RSVP], - { " RSVP is supported", "lmp.service_config.sp.rsvp", - FT_BOOLEAN, 8, NULL, 0x01, "", HFILL}}, - - {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_SP_FLAGS_LDP], - { "LDP is supported", "lmp.service_config.sp.ldp", - FT_BOOLEAN, 8, NULL, 0x02, "", HFILL}}, - - {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_CPSA_TP_FLAGS], - { "Client Port Service Attributes", "lmp.service_config.cpsa", - FT_UINT8, BASE_HEX, NULL, 0x0, "", HFILL}}, - - {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_CPSA_TP_FLAGS_PATH_OVERHEAD], - { "Path/VC Overhead Transparency Supported", - "lmp.service_config.cpsa.path_overhead", - FT_BOOLEAN, 8, NULL, 0x01, "", HFILL}}, - - {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_CPSA_TP_FLAGS_LINE_OVERHEAD], - { "Line/MS Overhead Transparency Supported", - "lmp.service_config.cpsa.line_overhead", - FT_BOOLEAN, 8, NULL, 0x02, "", HFILL}}, - - {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_CPSA_TP_FLAGS_SECTION_OVERHEAD], - { "Section/RS Overhead Transparency Supported", - "lmp.service_config.cpsa.section_overhead", - FT_BOOLEAN, 8, NULL, 0x04, "", HFILL}}, - - {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_CPSA_CCT_FLAGS], - { "Contiguous Concatenation Types", "lmp.service_config.cct", - FT_UINT8, BASE_HEX, NULL, 0x0, "", HFILL}}, - - {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_CPSA_CCT_FLAGS_CC_SUPPORTED], - { "Contiguous Concatenation Types Supported", - "lmp.service_config.cpsa.line_overhead", - FT_BOOLEAN, 8, NULL, 0x01, "", HFILL}}, - - {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_CPSA_MIN_NCC], - { "Minimum Number of Contiguously Concatenated Components", - "lmp.service_config.cpsa.min_ncc", - FT_UINT8, BASE_DEC, NULL, 0x0, "", HFILL}}, - - {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_CPSA_MAX_NCC], - { "Maximum Number of Contiguously Concatenated Components", - "lmp.service_config.cpsa.max_ncc", - FT_UINT8, BASE_DEC, NULL, 0x0, "", HFILL}}, - - {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_CPSA_MIN_NVC], - { "Maximum Number of Contiguously Concatenated Components", - "lmp.service_config.cpsa.min_nvc", - FT_UINT8, BASE_DEC, NULL, 0x0, "", HFILL}}, - - {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_CPSA_MAX_NVC], - { "Minimum Number of Virtually Concatenated Components", - "lmp.service_config.cpsa.max_nvc", - FT_UINT8, BASE_DEC, NULL, 0x0, "", HFILL}}, - - {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_CPSA_INTERFACE_ID], - { "Local interface id of the client interface referred to", - "lmp.service_config.cpsa.local_ifid", - FT_IPv4, BASE_NONE, NULL, 0x0, "", HFILL}}, - - {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_NSA_TRANSPARENCY_FLAGS], - { "Network Transparency Flags", - "lmp.service_config.nsa.transparency", - FT_UINT32, BASE_HEX, NULL, 0x0, "", HFILL}}, - - {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_NSA_TRANSPARENCY_FLAGS_SOH], - { "Standard SOH/RSOH transparency supported", - "lmp.service_config.nsa.transparency.soh", - FT_BOOLEAN, 8, NULL, 0x01, "", HFILL}}, - - {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_NSA_TRANSPARENCY_FLAGS_LOH], - { "Standard LOH/MSOH transparency supported", - "lmp.service_config.nsa.transparency.loh", - FT_BOOLEAN, 8, NULL, 0x02, "", HFILL}}, - - {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_NSA_TCM_FLAGS], - { "TCM Monitoring", - "lmp.service_config.nsa.tcm", - FT_UINT8, BASE_HEX, NULL, 0x0, "", HFILL}}, - - {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_NSA_TCM_FLAGS_TCM_SUPPORTED], - { "TCM Monitoring Supported", - "lmp.service_config.nsa.transparency.tcm", - FT_BOOLEAN, 8, NULL, 0x01, "", HFILL}}, - - {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_NSA_NETWORK_DIVERSITY_FLAGS], - { "Network Diversity Flags", - "lmp.service_config.nsa.diversity", - FT_UINT8, BASE_HEX, NULL, 0x0, "", HFILL}}, - - {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_NSA_NETWORK_DIVERSITY_FLAGS_NODE], - { "Node diversity supported", - "lmp.service_config.nsa.diversity.node", - FT_BOOLEAN, 8, NULL, 0x01, "", HFILL}}, - - {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_NSA_NETWORK_DIVERSITY_FLAGS_LINK], - { "Link diversity supported", - "lmp.service_config.nsa.diversity.link", - FT_BOOLEAN, 8, NULL, 0x02, "", HFILL}}, - - {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_NSA_NETWORK_DIVERSITY_FLAGS_SRLG], - { "SRLG diversity supported", - "lmp.service_config.nsa.diversity.srlg", - FT_BOOLEAN, 8, NULL, 0x04, "", HFILL}}, - - {&lmp_filter[LMPF_VAL_LOCAL_DA_DCN_ADDR], - { "Local DA DCN Address", "lmp.local_da_dcn_addr", FT_IPv4, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_VAL_REMOTE_DA_DCN_ADDR], - { "Remote DA DCN Address", "lmp.remote_da_dcn_addr", FT_IPv4, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&lmp_filter[LMPF_VAL_LOCAL_LAD_INFO_NODE_ID], - { "Node ID", "lmp.local_lad_node_id", FT_IPv4, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_VAL_LOCAL_LAD_INFO_AREA_ID], - { "Area ID", "lmp.local_lad_area_id", FT_IPv4, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_VAL_LOCAL_LAD_INFO_TE_LINK_ID], - { "TE Link ID", "lmp.local_lad_telink_id", FT_UINT32, BASE_DEC, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_VAL_LOCAL_LAD_INFO_COMPONENT_ID], - { "Component Link ID", "lmp.local_lad_comp_id", FT_UINT32, BASE_DEC, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_VAL_LOCAL_LAD_INFO_SC_PC_ID], - { "SC PC ID", "lmp.local_lad_sc_pc_id", FT_IPv4, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_VAL_LOCAL_LAD_INFO_SC_PC_ADDR], - { "SC PC Address", "lmp.local_lad_sc_pc_addr", FT_IPv4, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_VAL_LAD_INFO_SUBOBJ], - { "Subobject", "lmp.lad_info_subobj", FT_NONE, BASE_DEC, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_VAL_LAD_INFO_SUBOBJ_PRI_AREA_ID], - { "SC PC Address", "lmp.lad_pri_area_id", FT_IPv4, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_VAL_LAD_INFO_SUBOBJ_PRI_RC_PC_ID], - { "SC PC Address", "lmp.lad_pri_rc_pc_id", FT_IPv4, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_VAL_LAD_INFO_SUBOBJ_PRI_RC_PC_ADDR], - { "SC PC Address", "lmp.lad_pri_rc_pc_addr", FT_IPv4, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_VAL_LAD_INFO_SUBOBJ_SEC_AREA_ID], - { "SC PC Address", "lmp.lad_sec_area_id", FT_IPv4, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_VAL_LAD_INFO_SUBOBJ_SEC_RC_PC_ID], - { "SC PC Address", "lmp.lad_sec_rc_pc_id", FT_IPv4, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_VAL_LAD_INFO_SUBOBJ_SEC_RC_PC_ADDR], - { "SC PC Address", "lmp.lad_sec_rc_pc_addr", FT_IPv4, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&lmp_filter[LMPF_VAL_LAD_INFO_SUBOBJ_SWITCHING_TYPE], - { "Interface Switching Capability", "lmp.lad_switching", FT_UINT8, BASE_DEC, - VALS(gmpls_switching_type_str), 0x0, "", HFILL }}, - {&lmp_filter[LMPF_VAL_LAD_INFO_SUBOBJ_LSP_ENCODING], - { "LSP Encoding Type", "lmp.lad_encoding", FT_UINT8, BASE_DEC, - VALS(gmpls_lsp_enc_str), 0x0, "", HFILL }}, -}; - static int lmp_valid_class(int class) { @@ -2689,6 +2044,651 @@ proto_register_lmp(void) static gint *ett[NUM_LMP_SUBTREES]; int i; + static hf_register_info lmpf_info[] = { + + /* Message type number */ + {&lmp_filter[LMPF_MSG], + { "Message Type", "lmp.msg", FT_UINT8, BASE_DEC, VALS(message_type_vals), 0x0, + "", HFILL }}, + + /* Message type shorthands */ + {&lmp_filter[LMPF_MSG_CONFIG], + { "Config Message", "lmp.msg.config", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_MSG_CONFIG_ACK], + { "ConfigAck Message", "lmp.msg.configack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_MSG_CONFIG_NACK], + { "ConfigNack Message", "lmp.msg.confignack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_MSG_HELLO], + { "HELLO Message", "lmp.msg.hello", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_MSG_BEGIN_VERIFY], + { "BeginVerify Message", "lmp.msg.beginverify", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_MSG_BEGIN_VERIFY_ACK], + { "BeginVerifyAck Message", "lmp.msg.beginverifyack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_MSG_BEGIN_VERIFY_NACK], + { "BeginVerifyNack Message", "lmp.msg.beginverifynack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_MSG_END_VERIFY], + { "EndVerify Message", "lmp.msg.endverify", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_MSG_END_VERIFY_ACK], + { "EndVerifyAck Message", "lmp.msg.endverifyack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_MSG_TEST], + { "Test Message", "lmp.msg.test", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_MSG_TEST_STATUS_SUCCESS], + { "TestStatusSuccess Message", "lmp.msg.teststatussuccess", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_MSG_TEST_STATUS_FAILURE], + { "TestStatusFailure Message", "lmp.msg.teststatusfailure", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_MSG_TEST_STATUS_ACK], + { "TestStatusAck Message", "lmp.msg.teststatusack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_MSG_LINK_SUMMARY], + { "LinkSummary Message", "lmp.msg.linksummary", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_MSG_LINK_SUMMARY_ACK], + { "LinkSummaryAck Message", "lmp.msg.linksummaryack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_MSG_LINK_SUMMARY_NACK], + { "LinkSummaryNack Message", "lmp.msg.linksummarynack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_MSG_CHANNEL_STATUS], + { "ChannelStatus Message", "lmp.msg.channelstatus", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_MSG_CHANNEL_STATUS_ACK], + { "ChannelStatusAck Message", "lmp.msg.channelstatusack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_MSG_CHANNEL_STATUS_REQ], + { "ChannelStatusRequest Message", "lmp.msg.channelstatusrequest", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_MSG_CHANNEL_STATUS_RESP], + { "ChannelStatusResponse Message", "lmp.msg.channelstatusresponse", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_MSG_TRACE_MONITOR], + { "TraceMonitor Message", "lmp.msg.tracemonitor", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_MSG_TRACE_MONITOR_ACK], + { "TraceMonitorAck Message", "lmp.msg.tracemonitorack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_MSG_TRACE_MONITOR_NACK], + { "TraceMonitorNack Message", "lmp.msg.tracemonitornack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_MSG_TRACE_MISMATCH], + { "TraceMismatch Message", "lmp.msg.tracemismatch", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_MSG_TRACE_MISMATCH_ACK], + { "TraceMismatchAck Message", "lmp.msg.tracemismatchack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_MSG_TRACE_REQUEST], + { "TraceRequest Message", "lmp.msg.tracerequest", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_MSG_TRACE_REPORT], + { "TraceReport Message", "lmp.msg.tracereport", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_MSG_TRACE_REQUEST_NACK], + { "TraceRequestNack Message", "lmp.msg.tracerequestnack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_MSG_INSERT_TRACE], + { "InsertTrace Message", "lmp.msg.inserttrace", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_MSG_INSERT_TRACE_ACK], + { "InsertTraceAck Message", "lmp.msg.inserttraceack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_MSG_INSERT_TRACE_NACK], + { "InsertTraceNack Message", "lmp.msg.inserttracenack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_MSG_SERVICE_CONFIG], + { "ServiceConfig Message", "lmp.msg.serviceconfig", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_MSG_SERVICE_CONFIG_ACK], + { "ServiceConfigAck Message", "lmp.msg.serviceconfigack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_MSG_SERVICE_CONFIG_NACK], + { "ServiceConfigNack Message", "lmp.msg.serviceconfignack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_MSG_DISCOVERY_RESP], + { "DiscoveryResponse Message", "lmp.msg.discoveryresp", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_MSG_DISCOVERY_RESP_ACK], + { "DiscoveryResponseAck Message", "lmp.msg.discoveryrespack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_MSG_DISCOVERY_RESP_NACK], + { "DiscoveryResponseNack Message", "lmp.msg.discoveryrespnack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + /* LMP Message Header Fields ------------------- */ + + {&lmp_filter[LMPF_HDR_FLAGS], + { "LMP Header - Flags", "lmp.hdr.flags", FT_UINT8, BASE_DEC, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_HDR_FLAGS_CC_DOWN], + { "ControlChannelDown", "lmp.hdr.ccdown", FT_BOOLEAN, 8, NULL, 0x01, + "", HFILL }}, + + {&lmp_filter[LMPF_HDR_FLAGS_REBOOT], + { "Reboot", "lmp.hdr.reboot", FT_BOOLEAN, 8, NULL, 0x02, + "", HFILL }}, + + /* LMP object class filters ------------------------------- */ + + {&lmp_filter[LMPF_OBJECT], + { "LOCAL_CCID", "lmp.object", FT_UINT8, BASE_DEC, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_CLASS_CCID], + { "CCID", "lmp.obj.ccid", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_CLASS_NODE_ID], + { "NODE_ID", "lmp.obj.Nodeid", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_CLASS_LINK_ID], + { "LINK_ID", "lmp.obj.linkid", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_CLASS_INTERFACE_ID], + { "INTERFACE_ID", "lmp.obj.interfaceid", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_CLASS_MESSAGE_ID], + { "MESSAGE_ID", "lmp.obj.messageid", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_CLASS_CONFIG], + { "CONFIG", "lmp.obj.config", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_CLASS_HELLO], + { "HELLO", "lmp.obj.hello", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_CLASS_BEGIN_VERIFY], + { "BEGIN_VERIFY", "lmp.obj.begin_verify", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_CLASS_BEGIN_VERIFY_ACK], + { "BEGIN_VERIFY_ACK", "lmp.obj.begin_verify_ack", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_CLASS_VERIFY_ID], + { "VERIFY_ID", "lmp.obj.verifyid", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_CLASS_TE_LINK], + { "TE_LINK", "lmp.obj.te_link", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_CLASS_DATA_LINK], + { "DATA_LINK", "lmp.obj.data_link", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_CLASS_CHANNEL_STATUS], + { "CHANNEL_STATUS", "lmp.obj.channel_status", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_CLASS_CHANNEL_STATUS_REQUEST], + { "CHANNEL_STATUS_REQUEST", "lmp.obj.channel_status_request", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_CLASS_ERROR], + { "ERROR", "lmp.obj.error", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_CLASS_TRACE], + { "TRACE", "lmp.obj.trace", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_CLASS_TRACE_REQ], + { "TRACE REQ", "lmp.obj.trace_req", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_CLASS_SERVICE_CONFIG], + { "SERVICE_CONFIG", "lmp.obj.serviceconfig", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_CLASS_DA_DCN_ADDRESS], + { "DA_DCN_ADDRESS", "lmp.obj.dadcnaddr", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_CLASS_LOCAL_LAD_INFO], + { "LOCAL_LAD_INFO", "lmp.obj.localladinfo", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + /* Other LMP Value Filters ------------------------------ */ + + {&lmp_filter[LMPF_VAL_CTYPE], + { "Object C-Type", "lmp.obj.ctype", FT_UINT8, BASE_DEC, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_VAL_LOCAL_CCID], + { "Local CCID Value", "lmp.local_ccid", FT_UINT32, BASE_DEC, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_VAL_REMOTE_CCID], + { "Remote CCID Value", "lmp.remote_ccid", FT_UINT32, BASE_DEC, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_VAL_LOCAL_NODE_ID], + { "Local Node ID Value", "lmp.local_nodeid", FT_IPv4, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_VAL_REMOTE_NODE_ID], + { "Remote Node ID Value", "lmp.remote_nodeid", FT_IPv4, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_VAL_LOCAL_LINK_ID_IPV4], + { "Local Link ID - IPv4", "lmp.local_linkid_ipv4", FT_IPv4, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_VAL_LOCAL_LINK_ID_UNNUM], + { "Local Link ID - Unnumbered", "lmp.local_linkid_unnum", FT_UINT32, BASE_DEC, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_VAL_REMOTE_LINK_ID_IPV4], + { "Remote Link ID - IPv4", "lmp.remote_linkid_ipv4", FT_UINT32, BASE_DEC, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_VAL_REMOTE_LINK_ID_UNNUM], + { "Remote Link ID - Unnumbered", "lmp.remote_linkid_unnum", FT_UINT32, BASE_DEC, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_VAL_LOCAL_INTERFACE_ID_IPV4], + { "Local Interface ID - IPv4", "lmp.local_interfaceid_ipv4", FT_IPv4, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_VAL_LOCAL_INTERFACE_ID_UNNUM], + { "Local Interface ID - Unnumbered", "lmp.local_interfaceid_unnum", FT_UINT32, BASE_DEC, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_VAL_REMOTE_INTERFACE_ID_IPV4], + { "Remote Interface ID - IPv4", "lmp.remote_interfaceid_ipv4", FT_IPv4, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_VAL_REMOTE_INTERFACE_ID_UNNUM], + { "Remote Interface ID - Unnumbered", "lmp.remote_interfaceid_unnum", FT_UINT32, BASE_DEC, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_VAL_MESSAGE_ID], + { "Message-ID Value", "lmp.messageid", FT_UINT32, BASE_DEC, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_VAL_MESSAGE_ID_ACK], + { "Message-ID Ack Value", "lmp.messageid_ack", FT_UINT32, BASE_DEC, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_VAL_CONFIG_HELLO], + { "HelloInterval", "lmp.hellointerval", FT_UINT32, BASE_DEC, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_VAL_CONFIG_HELLO_DEAD], + { "HelloDeadInterval", "lmp.hellodeadinterval", FT_UINT32, BASE_DEC, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_VAL_HELLO_TXSEQ], + { "TxSeqNum", "lmp.txseqnum", FT_UINT32, BASE_DEC, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_VAL_HELLO_RXSEQ], + { "RxSeqNum", "lmp.rxseqnum", FT_UINT32, BASE_DEC, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_VAL_BEGIN_VERIFY_FLAGS], + { "Flags", "lmp.begin_verify.flags", FT_UINT16, BASE_HEX, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_VAL_BEGIN_VERIFY_FLAGS_ALL_LINKS], + { "Verify All Links", "lmp.begin_verify.all_links", + FT_BOOLEAN, 8, NULL, 0x01, "", HFILL }}, + {&lmp_filter[LMPF_VAL_BEGIN_VERIFY_FLAGS_LINK_TYPE], + { "Data Link Type", "lmp.begin_verify.link_type", + FT_BOOLEAN, 8, NULL, 0x02, "", HFILL }}, + {&lmp_filter[LMPF_VAL_BEGIN_VERIFY_ENCTYPE], + { "Encoding Type", "lmp.begin_verify.enctype", FT_UINT8, BASE_DEC, VALS(gmpls_lsp_enc_str), 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_VAL_VERIFY_ID], + { "Verify-ID", "lmp.verifyid", FT_UINT32, BASE_DEC, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_VAL_TE_LINK_FLAGS], + { "TE-Link Flags", "lmp.te_link_flags", FT_UINT8, BASE_HEX, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_VAL_TE_LINK_FLAGS_FAULT_MGMT], + { "Fault Management Supported", "lmp.te_link.fault_mgmt", + FT_BOOLEAN, 8, NULL, 0x01, "", HFILL }}, + {&lmp_filter[LMPF_VAL_TE_LINK_FLAGS_LINK_VERIFY], + { "Link Verification Supported", "lmp.te_link.link_verify", + FT_BOOLEAN, 8, NULL, 0x02, "", HFILL }}, + {&lmp_filter[LMPF_VAL_TE_LINK_LOCAL_IPV4], + { "TE-Link Local ID - IPv4", "lmp.te_link.local_ipv4", FT_IPv4, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_VAL_TE_LINK_LOCAL_UNNUM], + { "TE-Link Local ID - Unnumbered", "lmp.te_link.local_unnum", FT_UINT32, BASE_DEC, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_VAL_TE_LINK_REMOTE_IPV4], + { "TE-Link Remote ID - IPv4", "lmp.te_link.remote_ipv4", FT_IPv4, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_VAL_TE_LINK_REMOTE_UNNUM], + { "TE-Link Remote ID - Unnumbered", "lmp.te_link.remote_unnum", FT_UINT32, BASE_DEC, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_VAL_DATA_LINK_FLAGS], + { "Data-Link Flags", "lmp.data_link_flags", FT_UINT8, BASE_HEX, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_VAL_DATA_LINK_FLAGS_PORT], + { "Data-Link is Individual Port", "lmp.data_link.port", + FT_BOOLEAN, 8, NULL, 0x01, "", HFILL }}, + {&lmp_filter[LMPF_VAL_DATA_LINK_FLAGS_ALLOCATED], + { "Data-Link is Allocated", "lmp.data_link.link_verify", + FT_BOOLEAN, 8, NULL, 0x02, "", HFILL }}, + {&lmp_filter[LMPF_VAL_DATA_LINK_LOCAL_IPV4], + { "Data-Link Local ID - IPv4", "lmp.data_link.local_ipv4", FT_IPv4, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_VAL_DATA_LINK_LOCAL_UNNUM], + { "Data-Link Local ID - Unnumbered", "lmp.data_link.local_unnum", FT_UINT32, BASE_DEC, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_VAL_DATA_LINK_REMOTE_IPV4], + { "Data-Link Remote ID - IPv4", "lmp.data_link.remote_ipv4", FT_IPv4, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_VAL_DATA_LINK_REMOTE_UNNUM], + { "Data-Link Remote ID - Unnumbered", "lmp.data_link.remote_unnum", FT_UINT32, BASE_DEC, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_VAL_DATA_LINK_SUBOBJ], + { "Subobject", "lmp.data_link_subobj", FT_NONE, BASE_DEC, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_VAL_DATA_LINK_SUBOBJ_SWITCHING_TYPE], + { "Interface Switching Capability", "lmp.data_link_switching", FT_UINT8, BASE_DEC, + VALS(gmpls_switching_type_str), 0x0, "", HFILL }}, + {&lmp_filter[LMPF_VAL_DATA_LINK_SUBOBJ_LSP_ENCODING], + { "LSP Encoding Type", "lmp.data_link_encoding", FT_UINT8, BASE_DEC, + VALS(gmpls_lsp_enc_str), 0x0, "", HFILL }}, + + {&lmp_filter[LMPF_VAL_ERROR], + { "Error Code", "lmp.error", FT_UINT32, BASE_HEX, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_VAL_ERROR_VERIFY_UNSUPPORTED_LINK], + { "Verification - Unsupported for this TE-Link", "lmp.error.verify_unsupported_link", + FT_BOOLEAN, 8, NULL, 0x01, "", HFILL }}, + {&lmp_filter[LMPF_VAL_ERROR_VERIFY_UNWILLING], + { "Verification - Unwilling to Verify at this time", "lmp.error.verify_unwilling", + FT_BOOLEAN, 8, NULL, 0x02, "", HFILL }}, + {&lmp_filter[LMPF_VAL_ERROR_VERIFY_TRANSPORT], + { "Verification - Transport Unsupported", "lmp.error.verify_unsupported_transport", + FT_BOOLEAN, 8, NULL, 0x04, "", HFILL }}, + {&lmp_filter[LMPF_VAL_ERROR_VERIFY_TE_LINK_ID], + { "Verification - TE Link ID Configuration Error", "lmp.error.verify_te_link_id", + FT_BOOLEAN, 8, NULL, 0x08, "", HFILL }}, + + {&lmp_filter[LMPF_VAL_ERROR_VERIFY_UNKNOWN_CTYPE], + { "Verification - Unknown Object C-Type", "lmp.error.verify_unknown_ctype", + FT_BOOLEAN, 8, NULL, 0x08, "", HFILL }}, + + {&lmp_filter[LMPF_VAL_ERROR_SUMMARY_BAD_PARAMETERS], + { "Summary - Unacceptable non-negotiable parameters", "lmp.error.summary_bad_params", + FT_BOOLEAN, 8, NULL, 0x01, "", HFILL }}, + {&lmp_filter[LMPF_VAL_ERROR_SUMMARY_RENEGOTIATE], + { "Summary - Renegotiate Parametere", "lmp.error.summary_renegotiate", + FT_BOOLEAN, 8, NULL, 0x02, "", HFILL }}, + {&lmp_filter[LMPF_VAL_ERROR_SUMMARY_BAD_TE_LINK], + { "Summary - Bad TE Link Object", "lmp.error.summary_bad_te_link", + FT_BOOLEAN, 8, NULL, 0x08, "", HFILL }}, + {&lmp_filter[LMPF_VAL_ERROR_SUMMARY_BAD_DATA_LINK], + { "Summary - Bad Data Link Object", "lmp.error.summary_bad_data_link", + FT_BOOLEAN, 8, NULL, 0x10, "", HFILL }}, + {&lmp_filter[LMPF_VAL_ERROR_SUMMARY_UNKNOWN_TEL_CTYPE], + { "Summary - Bad TE Link C-Type", "lmp.error.summary_unknown_tel_ctype", + FT_BOOLEAN, 8, NULL, 0x04, "", HFILL }}, + {&lmp_filter[LMPF_VAL_ERROR_SUMMARY_UNKNOWN_DL_CTYPE], + { "Summary - Bad Data Link C-Type", "lmp.error.summary_unknown_dl_ctype", + FT_BOOLEAN, 8, NULL, 0x04, "", HFILL }}, + {&lmp_filter[LMPF_VAL_ERROR_SUMMARY_BAD_REMOTE_LINK_ID], + { "Summary - Bad Remote Link ID", "lmp.error.summary_bad_remote_link_id", + FT_BOOLEAN, 8, NULL, 0x04, "", HFILL }}, + {&lmp_filter[LMPF_VAL_ERROR_CONFIG_BAD_PARAMETERS], + { "Config - Unacceptable non-negotiable parameters", "lmp.error.config_bad_params", + FT_BOOLEAN, 8, NULL, 0x01, "", HFILL }}, + {&lmp_filter[LMPF_VAL_ERROR_CONFIG_RENEGOTIATE], + { "Config - Renegotiate Parameter", "lmp.error.config_renegotiate", + FT_BOOLEAN, 8, NULL, 0x02, "", HFILL }}, + {&lmp_filter[LMPF_VAL_ERROR_CONFIG_BAD_CCID], + { "Config - Bad CC ID", "lmp.error.config_bad_ccid", + FT_BOOLEAN, 8, NULL, 0x04, "", HFILL }}, + {&lmp_filter[LMPF_VAL_ERROR_TRACE_UNSUPPORTED_TYPE], + { "Trace - Unsupported trace type", "lmp.error.trace_unsupported_type", + FT_BOOLEAN, 8, NULL, 0x01, "", HFILL }}, + {&lmp_filter[LMPF_VAL_ERROR_TRACE_INVALID_MSG], + { "Trace - Invalid Trace Message", "lmp.error.trace_invalid_msg", + FT_BOOLEAN, 8, NULL, 0x02, "", HFILL }}, + {&lmp_filter[LMPF_VAL_ERROR_TRACE_UNKNOWN_CTYPE], + { "Trace - Unknown Object C-Type", "lmp.error.trace_unknown_ctype", + FT_BOOLEAN, 8, NULL, 0x10, "", HFILL }}, + {&lmp_filter[LMPF_VAL_ERROR_LAD_AREA_ID_MISMATCH], + { "LAD - Domain Routing Area ID Mismatch detected", "lmp.error.lad_area_id_mismatch", + FT_BOOLEAN, 8, NULL, 0x01, "", HFILL }}, + {&lmp_filter[LMPF_VAL_ERROR_LAD_TCP_ID_MISMATCH], + { "LAD - TCP ID Mismatch detected", "lmp.error.lad_tcp_id_mismatch", + FT_BOOLEAN, 8, NULL, 0x02, "", HFILL }}, + {&lmp_filter[LMPF_VAL_ERROR_LAD_DA_DCN_MISMATCH], + { "LAD - DA DCN Mismatch detected", "lmp.error.lad_da_dcn_mismatch", + FT_BOOLEAN, 8, NULL, 0x04, "", HFILL }}, + {&lmp_filter[LMPF_VAL_ERROR_LAD_CAPABILITY_MISMATCH], + { "LAD - Capability Mismatch detected", "lmp.error.lad_capability_mismatch", + FT_BOOLEAN, 8, NULL, 0x08, "", HFILL }}, + {&lmp_filter[LMPF_VAL_ERROR_LAD_UNKNOWN_CTYPE], + { "LAD - Unknown Object C-Type", "lmp.error.lad_unknown_ctype", + FT_BOOLEAN, 8, NULL, 0x10, "", HFILL }}, + + {&lmp_filter[LMPF_VAL_TRACE_LOCAL_TYPE], + { "Local Trace Type", "lmp.trace.local_type", FT_UINT16, BASE_DEC, + VALS(lmp_trace_type_str), 0x0, "", HFILL }}, + {&lmp_filter[LMPF_VAL_TRACE_LOCAL_LEN], + { "Local Trace Length", "lmp.trace.local_length", FT_UINT16, BASE_DEC, + NULL, 0x0, "", HFILL }}, + {&lmp_filter[LMPF_VAL_TRACE_LOCAL_MSG], + { "Local Trace Message", "lmp.trace.local_msg", FT_STRING, BASE_NONE, + NULL, 0x0, "", HFILL }}, + {&lmp_filter[LMPF_VAL_TRACE_REMOTE_TYPE], + { "Remote Trace Type", "lmp.trace.remote_type", FT_UINT16, BASE_DEC, + VALS(lmp_trace_type_str), 0x0, "", HFILL }}, + {&lmp_filter[LMPF_VAL_TRACE_REMOTE_LEN], + { "Remote Trace Length", "lmp.trace.remote_length", FT_UINT16, BASE_DEC, + NULL, 0x0, "", HFILL }}, + {&lmp_filter[LMPF_VAL_TRACE_REMOTE_MSG], + { "Remote Trace Message", "lmp.trace.remote_msg", FT_STRING, BASE_NONE, + NULL, 0x0, "", HFILL }}, + + {&lmp_filter[LMPF_VAL_TRACE_REQ_TYPE], + { "Trace Type", "lmp.trace_req.type", FT_UINT16, BASE_DEC, + VALS(lmp_trace_type_str), 0x0, "", HFILL }}, + + {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_SP_FLAGS], + { "Service Config - Supported Signalling Protocols", + "lmp.service_config.sp", FT_UINT8, BASE_HEX, NULL, 0x0, "", HFILL}}, + + {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_SP_FLAGS_RSVP], + { " RSVP is supported", "lmp.service_config.sp.rsvp", + FT_BOOLEAN, 8, NULL, 0x01, "", HFILL}}, + + {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_SP_FLAGS_LDP], + { "LDP is supported", "lmp.service_config.sp.ldp", + FT_BOOLEAN, 8, NULL, 0x02, "", HFILL}}, + + {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_CPSA_TP_FLAGS], + { "Client Port Service Attributes", "lmp.service_config.cpsa", + FT_UINT8, BASE_HEX, NULL, 0x0, "", HFILL}}, + + {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_CPSA_TP_FLAGS_PATH_OVERHEAD], + { "Path/VC Overhead Transparency Supported", + "lmp.service_config.cpsa.path_overhead", + FT_BOOLEAN, 8, NULL, 0x01, "", HFILL}}, + + {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_CPSA_TP_FLAGS_LINE_OVERHEAD], + { "Line/MS Overhead Transparency Supported", + "lmp.service_config.cpsa.line_overhead", + FT_BOOLEAN, 8, NULL, 0x02, "", HFILL}}, + + {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_CPSA_TP_FLAGS_SECTION_OVERHEAD], + { "Section/RS Overhead Transparency Supported", + "lmp.service_config.cpsa.section_overhead", + FT_BOOLEAN, 8, NULL, 0x04, "", HFILL}}, + + {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_CPSA_CCT_FLAGS], + { "Contiguous Concatenation Types", "lmp.service_config.cct", + FT_UINT8, BASE_HEX, NULL, 0x0, "", HFILL}}, + + {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_CPSA_CCT_FLAGS_CC_SUPPORTED], + { "Contiguous Concatenation Types Supported", + "lmp.service_config.cpsa.line_overhead", + FT_BOOLEAN, 8, NULL, 0x01, "", HFILL}}, + + {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_CPSA_MIN_NCC], + { "Minimum Number of Contiguously Concatenated Components", + "lmp.service_config.cpsa.min_ncc", + FT_UINT8, BASE_DEC, NULL, 0x0, "", HFILL}}, + + {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_CPSA_MAX_NCC], + { "Maximum Number of Contiguously Concatenated Components", + "lmp.service_config.cpsa.max_ncc", + FT_UINT8, BASE_DEC, NULL, 0x0, "", HFILL}}, + + {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_CPSA_MIN_NVC], + { "Maximum Number of Contiguously Concatenated Components", + "lmp.service_config.cpsa.min_nvc", + FT_UINT8, BASE_DEC, NULL, 0x0, "", HFILL}}, + + {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_CPSA_MAX_NVC], + { "Minimum Number of Virtually Concatenated Components", + "lmp.service_config.cpsa.max_nvc", + FT_UINT8, BASE_DEC, NULL, 0x0, "", HFILL}}, + + {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_CPSA_INTERFACE_ID], + { "Local interface id of the client interface referred to", + "lmp.service_config.cpsa.local_ifid", + FT_IPv4, BASE_NONE, NULL, 0x0, "", HFILL}}, + + {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_NSA_TRANSPARENCY_FLAGS], + { "Network Transparency Flags", + "lmp.service_config.nsa.transparency", + FT_UINT32, BASE_HEX, NULL, 0x0, "", HFILL}}, + + {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_NSA_TRANSPARENCY_FLAGS_SOH], + { "Standard SOH/RSOH transparency supported", + "lmp.service_config.nsa.transparency.soh", + FT_BOOLEAN, 8, NULL, 0x01, "", HFILL}}, + + {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_NSA_TRANSPARENCY_FLAGS_LOH], + { "Standard LOH/MSOH transparency supported", + "lmp.service_config.nsa.transparency.loh", + FT_BOOLEAN, 8, NULL, 0x02, "", HFILL}}, + + {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_NSA_TCM_FLAGS], + { "TCM Monitoring", + "lmp.service_config.nsa.tcm", + FT_UINT8, BASE_HEX, NULL, 0x0, "", HFILL}}, + + {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_NSA_TCM_FLAGS_TCM_SUPPORTED], + { "TCM Monitoring Supported", + "lmp.service_config.nsa.transparency.tcm", + FT_BOOLEAN, 8, NULL, 0x01, "", HFILL}}, + + {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_NSA_NETWORK_DIVERSITY_FLAGS], + { "Network Diversity Flags", + "lmp.service_config.nsa.diversity", + FT_UINT8, BASE_HEX, NULL, 0x0, "", HFILL}}, + + {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_NSA_NETWORK_DIVERSITY_FLAGS_NODE], + { "Node diversity supported", + "lmp.service_config.nsa.diversity.node", + FT_BOOLEAN, 8, NULL, 0x01, "", HFILL}}, + + {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_NSA_NETWORK_DIVERSITY_FLAGS_LINK], + { "Link diversity supported", + "lmp.service_config.nsa.diversity.link", + FT_BOOLEAN, 8, NULL, 0x02, "", HFILL}}, + + {&lmp_filter[LMPF_VAL_SERVICE_CONFIG_NSA_NETWORK_DIVERSITY_FLAGS_SRLG], + { "SRLG diversity supported", + "lmp.service_config.nsa.diversity.srlg", + FT_BOOLEAN, 8, NULL, 0x04, "", HFILL}}, + + {&lmp_filter[LMPF_VAL_LOCAL_DA_DCN_ADDR], + { "Local DA DCN Address", "lmp.local_da_dcn_addr", FT_IPv4, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_VAL_REMOTE_DA_DCN_ADDR], + { "Remote DA DCN Address", "lmp.remote_da_dcn_addr", FT_IPv4, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&lmp_filter[LMPF_VAL_LOCAL_LAD_INFO_NODE_ID], + { "Node ID", "lmp.local_lad_node_id", FT_IPv4, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_VAL_LOCAL_LAD_INFO_AREA_ID], + { "Area ID", "lmp.local_lad_area_id", FT_IPv4, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_VAL_LOCAL_LAD_INFO_TE_LINK_ID], + { "TE Link ID", "lmp.local_lad_telink_id", FT_UINT32, BASE_DEC, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_VAL_LOCAL_LAD_INFO_COMPONENT_ID], + { "Component Link ID", "lmp.local_lad_comp_id", FT_UINT32, BASE_DEC, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_VAL_LOCAL_LAD_INFO_SC_PC_ID], + { "SC PC ID", "lmp.local_lad_sc_pc_id", FT_IPv4, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_VAL_LOCAL_LAD_INFO_SC_PC_ADDR], + { "SC PC Address", "lmp.local_lad_sc_pc_addr", FT_IPv4, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_VAL_LAD_INFO_SUBOBJ], + { "Subobject", "lmp.lad_info_subobj", FT_NONE, BASE_DEC, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_VAL_LAD_INFO_SUBOBJ_PRI_AREA_ID], + { "SC PC Address", "lmp.lad_pri_area_id", FT_IPv4, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_VAL_LAD_INFO_SUBOBJ_PRI_RC_PC_ID], + { "SC PC Address", "lmp.lad_pri_rc_pc_id", FT_IPv4, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_VAL_LAD_INFO_SUBOBJ_PRI_RC_PC_ADDR], + { "SC PC Address", "lmp.lad_pri_rc_pc_addr", FT_IPv4, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_VAL_LAD_INFO_SUBOBJ_SEC_AREA_ID], + { "SC PC Address", "lmp.lad_sec_area_id", FT_IPv4, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_VAL_LAD_INFO_SUBOBJ_SEC_RC_PC_ID], + { "SC PC Address", "lmp.lad_sec_rc_pc_id", FT_IPv4, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_VAL_LAD_INFO_SUBOBJ_SEC_RC_PC_ADDR], + { "SC PC Address", "lmp.lad_sec_rc_pc_addr", FT_IPv4, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&lmp_filter[LMPF_VAL_LAD_INFO_SUBOBJ_SWITCHING_TYPE], + { "Interface Switching Capability", "lmp.lad_switching", FT_UINT8, BASE_DEC, + VALS(gmpls_switching_type_str), 0x0, "", HFILL }}, + {&lmp_filter[LMPF_VAL_LAD_INFO_SUBOBJ_LSP_ENCODING], + { "LSP Encoding Type", "lmp.lad_encoding", FT_UINT8, BASE_DEC, + VALS(gmpls_lsp_enc_str), 0x0, "", HFILL }}, + }; + for (i=0; i= OSPF_HELLO && @@ -3348,6 +3017,337 @@ static void dissect_ospf_v3_address_prefix(tvbuff_t *tvb, int offset, int prefix void proto_register_ospf(void) { + static hf_register_info ospff_info[] = { + + /* Message type number */ + {&ospf_filter[OSPFF_MSG_TYPE], + { "Message Type", "ospf.msg", FT_UINT8, BASE_DEC, VALS(pt_vals), 0x0, + "", HFILL }}, + + /* Message types */ + {&ospf_filter[OSPFF_MSG_HELLO], + { "Hello", "ospf.msg.hello", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&ospf_filter[OSPFF_MSG_DB_DESC], + { "Database Description", "ospf.msg.dbdesc", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&ospf_filter[OSPFF_MSG_LS_REQ], + { "Link State Adv Request", "ospf.msg.lsreq", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&ospf_filter[OSPFF_MSG_LS_UPD], + { "Link State Adv Update", "ospf.msg.lsupdate", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&ospf_filter[OSPFF_MSG_LS_ACK], + { "Link State Adv Acknowledgement", "ospf.msg.lsack", FT_BOOLEAN, + BASE_NONE, NULL, 0x0, "", HFILL }}, + + + + /* LS Types */ + {&ospf_filter[OSPFF_LS_TYPE], + { "Link-State Advertisement Type", "ospf.lsa", FT_UINT8, BASE_DEC, + VALS(ls_type_vals), 0x0, "", HFILL }}, + {&ospf_filter[OSPFF_LS_OPAQUE_TYPE], + { "Link State ID Opaque Type", "ospf.lsid_opaque_type", FT_UINT8, BASE_DEC, + VALS(ls_opaque_type_vals), 0x0, "", HFILL }}, + + {&ospf_filter[OSPFF_LS_MPLS_TE_INSTANCE], + { "Link State ID TE-LSA Instance", "ospf.lsid_te_lsa.instance", FT_UINT16, BASE_DEC, + NULL, 0x0, "", HFILL }}, + + {&ospf_filter[OSPFF_LS_ROUTER], + { "Router LSA", "ospf.lsa.router", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&ospf_filter[OSPFF_LS_NETWORK], + { "Network LSA", "ospf.lsa.network", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&ospf_filter[OSPFF_LS_SUMMARY], + { "Summary LSA (IP Network)", "ospf.lsa.summary", FT_BOOLEAN, BASE_NONE, + NULL, 0x0, "", HFILL }}, + {&ospf_filter[OSPFF_LS_ASBR], + { "Summary LSA (ASBR)", "ospf.lsa.asbr", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&ospf_filter[OSPFF_LS_ASEXT], + { "AS-External LSA (ASBR)", "ospf.lsa.asext", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&ospf_filter[OSPFF_LS_GRPMEMBER], + { "Group Membership LSA", "ospf.lsa.member", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&ospf_filter[OSPFF_LS_ASEXT7], + { "NSSA AS-External LSA", "ospf.lsa.nssa", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&ospf_filter[OSPFF_LS_EXTATTR], + { "External Attributes LSA", "ospf.lsa.attr", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&ospf_filter[OSPFF_LS_OPAQUE], + { "Opaque LSA", "ospf.lsa.opaque", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + /* Other interesting OSPF values */ + + {&ospf_filter[OSPFF_SRC_ROUTER], + { "Source OSPF Router", "ospf.srcrouter", FT_IPv4, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&ospf_filter[OSPFF_ADV_ROUTER], + { "Advertising Router", "ospf.advrouter", FT_IPv4, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&ospf_filter[OSPFF_LS_MPLS], + { "MPLS Traffic Engineering LSA", "ospf.lsa.mpls", FT_BOOLEAN, + BASE_NONE, NULL, 0x0, "", HFILL }}, + + {&ospf_filter[OSPFF_LS_MPLS_ROUTERID], + { "MPLS/TE Router ID", "ospf.mpls.routerid", FT_IPv4, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&ospf_filter[OSPFF_LS_MPLS_LINKTYPE], + { "MPLS/TE Link Type", "ospf.mpls.linktype", FT_UINT8, BASE_DEC, + VALS(mpls_link_stlv_ltype_str), 0x0, "", HFILL }}, + {&ospf_filter[OSPFF_LS_MPLS_LINKID], + { "MPLS/TE Link ID", "ospf.mpls.linkid", FT_IPv4, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&ospf_filter[OSPFF_LS_MPLS_LOCAL_ADDR], + { "MPLS/TE Local Interface Address", "ospf.mpls.local_addr", FT_IPv4, + BASE_NONE, NULL, 0x0, "", HFILL }}, + {&ospf_filter[OSPFF_LS_MPLS_REMOTE_ADDR], + { "MPLS/TE Remote Interface Address", "ospf.mpls.remote_addr", FT_IPv4, + BASE_NONE, NULL, 0x0, "", HFILL }}, + {&ospf_filter[OSPFF_LS_MPLS_LOCAL_IFID], + { "MPLS/TE Local Interface Index", "ospf.mpls.local_id", FT_UINT32, + BASE_DEC, NULL, 0x0, "", HFILL }}, + {&ospf_filter[OSPFF_LS_MPLS_REMOTE_IFID], + { "MPLS/TE Remote Interface Index", "ospf.mpls.remote_id", FT_UINT32, + BASE_DEC, NULL, 0x0, "", HFILL }}, + {&ospf_filter[OSPFF_LS_MPLS_LINKCOLOR], + { "MPLS/TE Link Resource Class/Color", "ospf.mpls.linkcolor", FT_UINT32, + BASE_HEX, NULL, 0x0, "", HFILL }}, + {&ospf_filter[OSPFF_LS_MPLS_BC_MODEL_ID], + { "MPLS/DSTE Bandwidth Constraints Model Id", "ospf.mpls.bc", FT_UINT8, + BASE_RANGE_STRING | BASE_DEC, RVALS(&mpls_link_stlv_bcmodel_rvals), 0x0, + "", HFILL }}, + + {&ospf_filter[OSPFF_LS_OIF_LOCAL_NODE_ID], + { "Local Node ID", "ospf.oif.local_node_id", FT_IPv4, + BASE_NONE, NULL, 0x0, "", HFILL }}, + {&ospf_filter[OSPFF_LS_OIF_REMOTE_NODE_ID], + { "Remote Node ID", "ospf.oif.remote_node_id", FT_IPv4, + BASE_NONE, NULL, 0x0, "", HFILL }}, + + {&ospf_filter[OSPFF_V2_OPTIONS], + { "Options", "ospf.v2.options", FT_UINT8, BASE_HEX, + NULL, 0x0, "", HFILL }}, + {&ospf_filter[OSPFF_V2_OPTIONS_E], + { "E", "ospf.v2.options.e", FT_BOOLEAN, 8, + TFS(&tfs_v2_options_e), OSPF_V2_OPTIONS_E, "", HFILL }}, + {&ospf_filter[OSPFF_V2_OPTIONS_MC], + { "MC", "ospf.v2.options.mc", FT_BOOLEAN, 8, + TFS(&tfs_v2_options_mc), OSPF_V2_OPTIONS_MC, "", HFILL }}, + {&ospf_filter[OSPFF_V2_OPTIONS_NP], + { "NP", "ospf.v2.options.np", FT_BOOLEAN, 8, + TFS(&tfs_v2_options_np), OSPF_V2_OPTIONS_NP, "", HFILL }}, + {&ospf_filter[OSPFF_V2_OPTIONS_L], + { "L", "ospf.v2.options.l", FT_BOOLEAN, 8, + TFS(&tfs_v2_options_l), OSPF_V2_OPTIONS_L, "", HFILL }}, + {&ospf_filter[OSPFF_V2_OPTIONS_DC], + { "DC", "ospf.v2.options.dc", FT_BOOLEAN, 8, + TFS(&tfs_v2_options_dc), OSPF_V2_OPTIONS_DC, "", HFILL }}, + {&ospf_filter[OSPFF_V2_OPTIONS_O], + { "O", "ospf.v2.options.o", FT_BOOLEAN, 8, + TFS(&tfs_v2_options_o), OSPF_V2_OPTIONS_O, "", HFILL }}, + {&ospf_filter[OSPFF_V2_OPTIONS_DN], + { "DN", "ospf.v2.options.dn", FT_BOOLEAN, 8, + TFS(&tfs_v2_options_dn), OSPF_V2_OPTIONS_DN, "", HFILL }}, + {&ospf_filter[OSPFF_V3_OPTIONS], + { "Options", "ospf.v3.options", FT_UINT24, BASE_HEX, + NULL, 0x0, "", HFILL }}, + {&ospf_filter[OSPFF_V3_OPTIONS_V6], + { "V6", "ospf.v3.options.v6", FT_BOOLEAN, 24, + TFS(&tfs_v3_options_v6), OSPF_V3_OPTIONS_V6, "", HFILL }}, + {&ospf_filter[OSPFF_V3_OPTIONS_E], + { "E", "ospf.v3.options.e", FT_BOOLEAN, 24, + TFS(&tfs_v3_options_e), OSPF_V3_OPTIONS_E, "", HFILL }}, + {&ospf_filter[OSPFF_V3_OPTIONS_MC], + { "MC", "ospf.v3.options.mc", FT_BOOLEAN, 24, + TFS(&tfs_v3_options_mc), OSPF_V3_OPTIONS_MC, "", HFILL }}, + {&ospf_filter[OSPFF_V3_OPTIONS_N], + { "N", "ospf.v3.options.n", FT_BOOLEAN, 24, + TFS(&tfs_v3_options_n), OSPF_V3_OPTIONS_N, "", HFILL }}, + {&ospf_filter[OSPFF_V3_OPTIONS_R], + { "R", "ospf.v3.options.r", FT_BOOLEAN, 24, + TFS(&tfs_v3_options_r), OSPF_V3_OPTIONS_R, "", HFILL }}, + {&ospf_filter[OSPFF_V3_OPTIONS_DC], + { "DC", "ospf.v3.options.dc", FT_BOOLEAN, 24, + TFS(&tfs_v3_options_dc), OSPF_V3_OPTIONS_DC, "", HFILL }}, + {&ospf_filter[OSPFF_V3_OPTIONS_AF], + { "AF", "ospf.v3.options.af", FT_BOOLEAN, 24, + TFS(&tfs_v3_options_af), OSPF_V3_OPTIONS_AF, "", HFILL }}, + {&ospf_filter[OSPFF_V3_OPTIONS_L], + { "L", "ospf.v3.options.l", FT_BOOLEAN, 24, + TFS(&tfs_v3_options_l), OSPF_V3_OPTIONS_L, "", HFILL }}, + {&ospf_filter[OSPFF_V3_OPTIONS_I], + { "I", "ospf.v3.options.i", FT_BOOLEAN, 24, + TFS(&tfs_v3_options_i), OSPF_V3_OPTIONS_I, "", HFILL }}, + {&ospf_filter[OSPFF_V3_OPTIONS_F], + { "F", "ospf.v3.options.f", FT_BOOLEAN, 24, + TFS(&tfs_v3_options_f), OSPF_V3_OPTIONS_F, "", HFILL }}, + {&ospf_filter[OSPFF_DBD], + { "DB Description", "ospf.dbd", FT_UINT8, BASE_HEX, + NULL, 0x0, "", HFILL }}, + {&ospf_filter[OSPFF_DBD_R], + { "R", "ospf.dbd.r", FT_BOOLEAN, 8, + TFS(&tfs_dbd_r), OSPF_DBD_FLAG_R, "", HFILL }}, + {&ospf_filter[OSPFF_DBD_I], + { "I", "ospf.dbd.i", FT_BOOLEAN, 8, + TFS(&tfs_dbd_i), OSPF_DBD_FLAG_I, "", HFILL }}, + {&ospf_filter[OSPFF_DBD_M], + { "M", "ospf.dbd.m", FT_BOOLEAN, 8, + TFS(&tfs_dbd_m), OSPF_DBD_FLAG_M, "", HFILL }}, + {&ospf_filter[OSPFF_DBD_MS], + { "MS", "ospf.dbd.ms", FT_BOOLEAN, 8, + TFS(&tfs_dbd_ms), OSPF_DBD_FLAG_MS, "", HFILL }}, + {&ospf_filter[OSPFF_LLS_EXT_OPTIONS], + { "Options", "ospf.lls.ext.options", FT_UINT32, BASE_HEX, + NULL, 0x0, "", HFILL }}, + {&ospf_filter[OSPFF_LLS_EXT_OPTIONS_LR], + { "LR", "ospf.lls.ext.options.lr", FT_BOOLEAN, 32, + TFS(&tfs_lls_ext_options_lr), OSPF_LLS_EXT_OPTIONS_LR, "", HFILL }}, + {&ospf_filter[OSPFF_LLS_EXT_OPTIONS_RS], + { "RS", "ospf.lls.ext.options.rs", FT_BOOLEAN, 32, + TFS(&tfs_lls_ext_options_rs), OSPF_LLS_EXT_OPTIONS_RS, "", HFILL }}, + {&ospf_filter[OSPFF_V2_ROUTER_LSA_FLAG], + { "Flags", "ospf.v2.router.lsa.flags", FT_UINT8, BASE_HEX, + NULL, 0x0, "", HFILL }}, + {&ospf_filter[OSPFF_V2_ROUTER_LSA_FLAG_B], + { "B", "ospf.v2.router.lsa.flags.b", FT_BOOLEAN, 8, + TFS(&tfs_v2_router_lsa_flags_b), OSPF_V2_ROUTER_LSA_FLAG_B, "", HFILL }}, + {&ospf_filter[OSPFF_V2_ROUTER_LSA_FLAG_E], + { "E", "ospf.v2.router.lsa.flags.e", FT_BOOLEAN, 8, + TFS(&tfs_v2_router_lsa_flags_e), OSPF_V2_ROUTER_LSA_FLAG_E, "", HFILL }}, + {&ospf_filter[OSPFF_V2_ROUTER_LSA_FLAG_V], + { "V", "ospf.v2.router.lsa.flags.v", FT_BOOLEAN, 8, + TFS(&tfs_v2_router_lsa_flags_v), OSPF_V2_ROUTER_LSA_FLAG_V, "", HFILL }}, + {&ospf_filter[OSPFF_V3_ROUTER_LSA_FLAG], + { "Flags", "ospf.v3.router.lsa.flags", FT_UINT8, BASE_HEX, + NULL, 0x0, "", HFILL }}, + {&ospf_filter[OSPFF_V3_ROUTER_LSA_FLAG_B], + { "B", "ospf.v3.router.lsa.flags.b", FT_BOOLEAN, 8, + TFS(&tfs_v3_router_lsa_flags_b), OSPF_V3_ROUTER_LSA_FLAG_B, "", HFILL }}, + {&ospf_filter[OSPFF_V3_ROUTER_LSA_FLAG_E], + { "E", "ospf.v3.router.lsa.flags.e", FT_BOOLEAN, 8, + TFS(&tfs_v3_router_lsa_flags_e), OSPF_V3_ROUTER_LSA_FLAG_E, "", HFILL }}, + {&ospf_filter[OSPFF_V3_ROUTER_LSA_FLAG_V], + { "V", "ospf.v3.router.lsa.flags.v", FT_BOOLEAN, 8, + TFS(&tfs_v3_router_lsa_flags_v), OSPF_V3_ROUTER_LSA_FLAG_V, "", HFILL }}, + {&ospf_filter[OSPFF_V3_ROUTER_LSA_FLAG_W], + { "W", "ospf.v3.router.lsa.flags.w", FT_BOOLEAN, 8, + TFS(&tfs_v3_router_lsa_flags_w), OSPF_V3_ROUTER_LSA_FLAG_W, "", HFILL }}, + {&ospf_filter[OSPFF_V3_AS_EXTERNAL_FLAG], + { "Flags", "ospf.v3.as.external.flags", FT_UINT8, BASE_HEX, + NULL, 0x0, "", HFILL }}, + {&ospf_filter[OSPFF_V3_AS_EXTERNAL_FLAG_T], + { "T", "ospf.v3.as.external.flags.t", FT_BOOLEAN, 8, + TFS(&tfs_v3_as_external_flags_t), OSPF_V3_AS_EXTERNAL_FLAG_T, "", HFILL }}, + {&ospf_filter[OSPFF_V3_AS_EXTERNAL_FLAG_F], + { "F", "ospf.v3.as.external.flags.f", FT_BOOLEAN, 8, + TFS(&tfs_v3_as_external_flags_f), OSPF_V3_AS_EXTERNAL_FLAG_F, "", HFILL }}, + {&ospf_filter[OSPFF_V3_AS_EXTERNAL_FLAG_E], + { "E", "ospf.v3.as.external.flags.e", FT_BOOLEAN, 8, + TFS(&tfs_v3_as_external_flags_e), OSPF_V3_AS_EXTERNAL_FLAG_E, "", HFILL }}, + {&ospf_filter[OSPFF_V3_PREFIX_OPTION], + { "PrefixOptions", "ospf.v3.prefix.options", FT_UINT8, BASE_HEX, + NULL, 0x0, "", HFILL }}, + {&ospf_filter[OSPFF_V3_PREFIX_OPTION_NU], + { "NU", "ospf.v3.prefix.options.nu", FT_BOOLEAN, 8, + TFS(&tfs_v3_prefix_options_nu), OSPF_V3_PREFIX_OPTION_NU, "", HFILL }}, + {&ospf_filter[OSPFF_V3_PREFIX_OPTION_LA], + { "LA", "ospf.v3.prefix.options.la", FT_BOOLEAN, 8, + TFS(&tfs_v3_prefix_options_la), OSPF_V3_PREFIX_OPTION_LA, "", HFILL }}, + {&ospf_filter[OSPFF_V3_PREFIX_OPTION_MC], + { "MC", "ospf.v3.prefix.options.mc", FT_BOOLEAN, 8, + TFS(&tfs_v3_prefix_options_mc), OSPF_V3_PREFIX_OPTION_MC, "", HFILL }}, + {&ospf_filter[OSPFF_V3_PREFIX_OPTION_P], + { "P", "ospf.v3.prefix.options.p", FT_BOOLEAN, 8, + TFS(&tfs_v3_prefix_options_p), OSPF_V3_PREFIX_OPTION_P, "", HFILL }}, + + /* OSPF Restart TLVs */ + {&ospf_filter[OSPFF_V2_GRACE_TLV], + { "Grace TLV", "ospf.v2.grace", FT_NONE, BASE_HEX, NULL, 0x0, "", HFILL}}, + {&ospf_filter[OSPFF_V2_GRACE_PERIOD], + { "Grace Period", "ospf.v2.grace.period", FT_UINT32, BASE_DEC, + NULL, 0x0, + "The number of seconds neighbors should advertise the router as fully adjacent", + HFILL }}, + {&ospf_filter[OSPFF_V2_GRACE_REASON], + { "Restart Reason", "ospf.v2.grace.reason", FT_UINT8, BASE_DEC, + VALS(restart_reason_vals), 0x0, "The reason the router is restarting", HFILL }}, + {&ospf_filter[OSPFF_V2_GRACE_IP], + { "Restart IP", "ospf.v2.grace.ip", FT_IPv4, BASE_NONE, + NULL, 0x0, "The IP address of the interface originating this LSA", HFILL }}, + + /* OSPFv3 LLS TLVs */ + {&ospf_filter[OSPFF_V3_LLS_EXT_OPTIONS_TLV], + { "Extended Options TLV", "ospf.v3.lls.ext.options.tlv", FT_NONE, BASE_NONE, + NULL, 0x0, "", HFILL }}, + {&ospf_filter[OSPFF_V3_LLS_EXT_OPTIONS], + { "Options", "ospf.v3.lls.ext.options", FT_UINT32, BASE_HEX, + NULL, 0x0, "", HFILL }}, + {&ospf_filter[OSPFF_V3_LLS_EXT_OPTIONS_LR], + { "LR", "ospf.v3.lls.ext.options.lr", FT_BOOLEAN, 32, + TFS(&tfs_v3_lls_ext_options_lr), OSPF_V3_LLS_EXT_OPTIONS_LR, "", HFILL }}, + {&ospf_filter[OSPFF_V3_LLS_EXT_OPTIONS_RS], + { "RS", "ospf.v3.lls.ext.options.rs", FT_BOOLEAN, 32, + TFS(&tfs_v3_lls_ext_options_rs), OSPF_V3_LLS_EXT_OPTIONS_RS, "", HFILL }}, + {&ospf_filter[OSPFF_V3_LLS_STATE_TLV], + { "State Check Sequence TLV", "ospf.v3.lls.state.tlv", FT_NONE, BASE_NONE, + NULL, 0x0, "", HFILL }}, + {&ospf_filter[OSPFF_V3_LLS_STATE_SCS], + { "SCS Number", "ospf.v3.lls.state.scs", FT_UINT16, BASE_DEC, + NULL, 0x0, "", HFILL }}, + {&ospf_filter[OSPFF_V3_LLS_STATE_OPTIONS], + { "Options", "ospf.v3.lls.state.options", FT_UINT8, BASE_HEX, + NULL, 0x0, "", HFILL }}, + {&ospf_filter[OSPFF_V3_LLS_STATE_OPTIONS_R], + { "R", "ospf.v3.lls.state.options.r", FT_BOOLEAN, 8, + TFS(&tfs_v3_lls_state_options_r), OSPF_V3_LLS_STATE_OPTIONS_R, "", HFILL }}, + {&ospf_filter[OSPFF_V3_LLS_STATE_OPTIONS_A], + { "A", "ospf.v3.lls.state.options.a", FT_BOOLEAN, 8, + TFS(&tfs_v3_lls_state_options_a), OSPF_V3_LLS_STATE_OPTIONS_A , "", HFILL }}, + {&ospf_filter[OSPFF_V3_LLS_STATE_OPTIONS_N], + { "N", "ospf.v3.lls.state.options.n", FT_BOOLEAN, 8, + TFS(&tfs_v3_lls_state_options_n), OSPF_V3_LLS_STATE_OPTIONS_N ,"", HFILL }}, + {&ospf_filter[OSPFF_V3_LLS_DROP_TLV], + { "Neighbor Drop TLV", "ospf.v3.lls.drop.tlv", FT_NONE, BASE_NONE, + NULL, 0x0, "", HFILL }}, + {&ospf_filter[OSPFF_V3_LLS_RELAY_TLV], + { "Active Overlapping Relays TLV", "ospf.v3.lls.relay.tlv", FT_NONE, BASE_NONE, + NULL, 0x0, "", HFILL }}, + {&ospf_filter[OSPFF_V3_LLS_RELAY_ADDED], + { "Relays Added", "ospf.v3.lls.relay.added", FT_UINT8, BASE_DEC, + NULL, 0x0, "", HFILL }}, + {&ospf_filter[OSPFF_V3_LLS_RELAY_OPTIONS], + { "Options", "ospf.v3.lls.relay.options", FT_UINT8, BASE_HEX, + NULL, 0x0, "", HFILL }}, + {&ospf_filter[OSPFF_V3_LLS_RELAY_OPTIONS_A], + { "A", "ospf.v3.lls.relay.options.a", FT_BOOLEAN, 8, + TFS(&tfs_v3_lls_relay_options_a), OSPF_V3_LLS_RELAY_OPTIONS_A , "", HFILL }}, + {&ospf_filter[OSPFF_V3_LLS_RELAY_OPTIONS_N], + { "N", "ospf.v3.lls.relay.options.n", FT_BOOLEAN, 8, + TFS(&tfs_v3_lls_relay_options_n), OSPF_V3_LLS_RELAY_OPTIONS_N ,"", HFILL }}, + {&ospf_filter[OSPFF_V3_LLS_WILLINGNESS_TLV], + { "Willingness TLV", "ospf.v3.lls.willingness.tlv", FT_NONE, BASE_NONE, + NULL, 0x0, "", HFILL }}, + {&ospf_filter[OSPFF_V3_LLS_WILLINGNESS], + { "Willingness", "ospf.v3.lls.willingness", FT_UINT8, BASE_DEC, + NULL, 0x0, "", HFILL }}, + {&ospf_filter[OSPFF_V3_LLS_RF_TLV], + { "Request From TLV", "ospf.v3.lls.rf.tlv", FT_NONE, BASE_NONE, + NULL, 0x0, "", HFILL }}, + {&ospf_filter[OSPFF_V3_LLS_FSF_TLV], + { "Full State For TLV", "ospf.v3.lls.fsf.tlv", FT_NONE, BASE_NONE, + NULL, 0x0, "", HFILL }} + }; + static gint *ett[] = { &ett_ospf, &ett_ospf_hdr, diff --git a/epan/dissectors/packet-pcep.c b/epan/dissectors/packet-pcep.c index 2967145125..3848d62738 100644 --- a/epan/dissectors/packet-pcep.c +++ b/epan/dissectors/packet-pcep.c @@ -473,206 +473,6 @@ static gint *ett[] = { static int pcep_filter[PCEPF_MAX]; -static hf_register_info pcepf_info[] = { - - /* Message type number */ - {&pcep_filter[PCEPF_MSG], - { "Message Type", "pcep.msg", FT_UINT8, BASE_DEC, VALS(message_type_vals), 0x0, - "", HFILL }}, - {&pcep_hdr_msg_flags_reserved, - { "Reserved Flags", "pcep.hdr.msg.flags.reserved", FT_BOOLEAN, 8, TFS(&tfs_set_notset), PCEP_HDR_MSG_RESERVED, - "", HFILL }}, - {&pcep_filter[PCEPF_OPEN], - { "Open Message", "pcep.msg.open", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&pcep_filter[PCEPF_KEEPALIVE], - { "Keepalive Message", "pcep.msg.keepalive", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&pcep_filter[PCEPF_PATH_COMPUTATION_REQUEST], - { "Path Computation Request Message", "pcep.msg.path.computation.request", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&pcep_filter[PCEPF_PATH_COMPUTATION_REPLY], - { "Path Computation Reply Mesagge", "pcep.msg.path.computation.reply", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&pcep_filter[PCEPF_NOTIFICATION], - { "Notification Message", "pcep.msg.notification", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&pcep_filter[PCEPF_ERROR], - { "Error Message", "pcep.msg.error", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&pcep_filter[PCEPF_CLOSE], - { "Close Message", "pcep.msg.close", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - /*Object header*/ - {&pcep_hdr_obj_flags_reserved, - { "Reserved Flags", "pcep.hdr.obj.flags.reserved", FT_BOOLEAN, 4, TFS(&tfs_set_notset), PCEP_HDR_OBJ_RESERVED, - "", HFILL }}, - {&pcep_hdr_obj_flags_p, - { "Processing-Rule (P)", "pcep.hdr.obj.flags.p", FT_BOOLEAN, 4, TFS(&tfs_set_notset), PCEP_HDR_OBJ_P, - "", HFILL }}, - {&pcep_hdr_obj_flags_i, - { "Ignore (I)", "pcep.hdr.obj.flags.i", FT_BOOLEAN, 4, TFS(&tfs_set_notset), PCEP_HDR_OBJ_I, - "", HFILL }}, - /* Object class */ - {&pcep_filter[PCEPF_OBJECT_CLASS], - { "Object Class", "pcep.object", FT_UINT32, BASE_DEC, VALS(pcep_class_vals), 0x0, - "", HFILL }}, - - /* Object types */ - {&pcep_filter[PCEPF_OBJ_OPEN], - { "OPEN object", "pcep.obj.open", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&pcep_open_flags_res, - { "Reserved Flags", "pcep.open.flags.res", FT_BOOLEAN, 8, TFS(&tfs_set_notset), PCEP_OPEN_RES, - "", HFILL }}, - {&pcep_filter[PCEPF_OBJ_RP], - { "RP object", "pcep.obj.rp", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&pcep_rp_flags_reserved, - { "Reserved Flags", "pcep.rp.flags.reserved", FT_BOOLEAN, 24, TFS(&tfs_set_notset), PCEP_RP_RESERVED, - "", HFILL }}, - {&pcep_rp_flags_pri, - { "Priority (PRI)", "pcep.rp.flags.pri", FT_BOOLEAN, 24, TFS(&tfs_on_off), PCEP_RP_PRI, - "", HFILL }}, - {&pcep_rp_flags_r, - { "Reoptimization (R)", "pcep.rp.flags.r", FT_BOOLEAN, 24, TFS(&tfs_set_notset), PCEP_RP_R, - "", HFILL }}, - {&pcep_rp_flags_b, - { "Bi-directional (L)", "pcep.rp.flags.b", FT_BOOLEAN, 24, TFS(&tfs_set_notset), PCEP_RP_B, - "", HFILL }}, - {&pcep_rp_flags_o, - { "Strict/Loose (L)", "pcep.rp.flags.o", FT_BOOLEAN, 24, TFS(&tfs_set_notset), PCEP_RP_O, - "", HFILL }}, - {&pcep_filter[PCEPF_OBJ_NO_PATH], - { "NO-PATH object", "pcep.obj.nopath", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&pcep_no_path_flags_c, - { "C", "pcep.no.path.flags.c", FT_BOOLEAN, 16, TFS(&tfs_set_notset), PCEP_NO_PATH_C, - "", HFILL }}, - {&pcep_filter[PCEPF_OBJ_END_POINT], - { "END-POINT object", "pcep.obj.endpoint", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&pcep_filter[PCEPF_OBJ_BANDWIDTH], - { "BANDWIDTH object", "pcep.obj.bandwidth", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&pcep_filter[PCEPF_OBJ_METRIC], - { "METRIC object", "pcep.obj.metric", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&pcep_metric_flags_c, - { "Cost (C)", "pcep.metric.flags.c", FT_BOOLEAN, 8, TFS(&tfs_set_notset), PCEP_METRIC_C, - "", HFILL }}, - {&pcep_metric_flags_b, - { "Bound (B)", "pcep.metric.flags.b", FT_BOOLEAN, 8, TFS(&tfs_set_notset), PCEP_METRIC_B, - "", HFILL }}, - {&pcep_filter[PCEPF_OBJ_EXPLICIT_ROUTE], - { "EXPLICIT ROUTE object (ERO)", "pcep.obj.ero", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&pcep_filter[PCEPF_OBJ_RECORD_ROUTE], - { "RECORD ROUTE object (RRO)", "pcep.obj.rro", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&pcep_filter[PCEPF_OBJ_LSPA], - { "LSPA object", "pcep.obj.lspa", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&pcep_lspa_flags_l, - { "Local Protection Desired (L)", "pcep.lspa.flags.l", FT_BOOLEAN, 8, TFS(&tfs_set_notset), PCEP_LSPA_L, - "", HFILL }}, - {&pcep_filter[PCEPF_OBJ_IRO], - { "IRO object", "pcep.obj.iro", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&pcep_filter[PCEPF_OBJ_SVEC], - { "SVEC object", "pcep.obj.svec", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&pcep_svec_flags_l, - { "Link diverse (L)", "pcep.svec.flags.l", FT_BOOLEAN, 24, TFS(&tfs_set_notset), PCEP_SVEC_L, - "", HFILL }}, - - {&pcep_svec_flags_n, - { "Node diverse (N)", "pcep.svec.flags.n", FT_BOOLEAN, 24, TFS(&tfs_set_notset), PCEP_SVEC_N, - "", HFILL }}, - - {&pcep_svec_flags_s, - { "SRLG diverse (S)", "pcep.svec.flags.s", FT_BOOLEAN, 24, TFS(&tfs_set_notset), PCEP_SVEC_S, - "", HFILL }}, - - {&pcep_filter[PCEPF_OBJ_NOTIFICATION], - { "NOTIFICATION object", "pcep.obj.notification", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&pcep_filter[PCEPF_NOTI_TYPE], - { "Notification Value", "pcep.notification.value1", FT_UINT32, BASE_DEC, VALS(pcep_notification_types_vals), 0x0, - "", HFILL }}, - {&pcep_filter[PCEPF_NOTI_VAL1], - { "Notification Type", "pcep.notification.type2", FT_UINT32, BASE_DEC, VALS(pcep_notification_values1_vals), 0x0, - "", HFILL }}, - {&pcep_filter[PCEPF_NOTI_VAL2], - { "Notification Type", "pcep.notification.type", FT_UINT32, BASE_DEC, VALS(pcep_notification_values2_vals), 0x0, - "", HFILL }}, - - {&pcep_filter[PCEPF_OBJ_PCEP_ERROR], - { "ERROR object", "pcep.obj.error", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&pcep_filter[PCEPF_ERROR_TYPE], - { "Error-Type", "pcep.error.type", FT_UINT8, BASE_DEC, VALS(pcep_error_types_obj_vals), 0x0, - "", HFILL }}, - {&pcep_filter[PCEPF_OBJ_LOAD_BALANCING], - { "LOAD BALANCING object", "pcep.obj.loadbalancing", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&pcep_filter[PCEPF_OBJ_CLOSE], - { "CLOSE object", "pcep.obj.close", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&pcep_filter[PCEPF_OBJ_XRO], - { "EXCLUDE ROUTE object (XRO)", "pcep.obj.xro", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - /*Subobjects*/ - {&pcep_filter[PCEPF_SUBOBJ], - { "Type", "pcep.subobj", FT_UINT8, BASE_DEC, VALS(pcep_subobj_vals), 0x0, - "", HFILL }}, - - {&pcep_filter[PCEPF_SUBOBJ_IPv4], - { "SUBOBJECT: IPv4 Prefix", "pcep.subobj.ipv4", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&pcep_filter[PCEPF_SUBOBJ_IPv6], - { "SUBOBJECT: IPv6 Prefix", "pcep.subobj.ipv6", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&pcep_filter[PCEPF_SUBOBJ_LABEL_CONTROL], - { "SUBOBJECT: Label Control", "pcep.subobj.label.control", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&pcep_filter[PCEPF_SUBOBJ_UNNUM_INTERFACEID], - { "SUBOBJECT: Unnumbered Interface ID", "pcep.subobj.unnum.interfaceid", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&pcep_filter[PCEPF_SUBOBJ_AUTONOMOUS_SYS_NUM], - { "SUBOBJECT: Autonomous System Number", "pcep.subobj.autonomous.sys.num", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&pcep_filter[PCEPF_SUBOBJ_SRLG], - { "SUBOBJECT: SRLG", "pcep.subobj.srlg", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&pcep_filter[PCEPF_SUBOBJ_EXRS], - { "SUBOBJECT: EXRS", "pcep.subobj.exrs", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - {&pcep_filter[PCEPF_SUBOBJ_XRO], - { "Type", "pcep.subobj.label", FT_UINT32, BASE_DEC, VALS(pcep_subobj_xro_vals), 0x0, - "", HFILL }}, - {&pcep_xro_flags_f, - { "Fail (F)", "pcep.xro.flags.f", FT_BOOLEAN, 16, TFS(&tfs_set_notset), PCEP_XRO_F, - "", HFILL }}, - {&pcep_filter[PCEPF_SUB_XRO_ATTRIB], - { "Attribute", "pcep.xro.sub.attribute", FT_UINT32, BASE_DEC, VALS(pcep_xro_attribute_obj_vals), 0x0, - "", HFILL }}, - - {&pcep_subobj_flags_lpa, - { "Local Protection Available", "pcep.subobj.flags.lpa", FT_BOOLEAN, 8, TFS(&tfs_set_notset), PCEP_SUB_LPA, - "", HFILL }}, - {&pcep_subobj_flags_lpu, - { "Local protection in Use", "pcep.subobj.flags.lpu", FT_BOOLEAN, 8, TFS(&tfs_set_notset), PCEP_SUB_LPU, - "", HFILL }}, - {&pcep_subobj_label_flags_gl, - { "Global Label", "pcep.subobj.label.flags.gl", FT_BOOLEAN, 8, TFS(&tfs_set_notset), PCEP_SUB_LABEL_GL, - "", HFILL }}, -}; - #define OBJ_HDR_LEN 4 /* length of object header */ static void @@ -2316,6 +2116,206 @@ dissect_pcep(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) void proto_register_pcep(void){ + static hf_register_info pcepf_info[] = { + + /* Message type number */ + {&pcep_filter[PCEPF_MSG], + { "Message Type", "pcep.msg", FT_UINT8, BASE_DEC, VALS(message_type_vals), 0x0, + "", HFILL }}, + {&pcep_hdr_msg_flags_reserved, + { "Reserved Flags", "pcep.hdr.msg.flags.reserved", FT_BOOLEAN, 8, TFS(&tfs_set_notset), PCEP_HDR_MSG_RESERVED, + "", HFILL }}, + {&pcep_filter[PCEPF_OPEN], + { "Open Message", "pcep.msg.open", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&pcep_filter[PCEPF_KEEPALIVE], + { "Keepalive Message", "pcep.msg.keepalive", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&pcep_filter[PCEPF_PATH_COMPUTATION_REQUEST], + { "Path Computation Request Message", "pcep.msg.path.computation.request", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&pcep_filter[PCEPF_PATH_COMPUTATION_REPLY], + { "Path Computation Reply Mesagge", "pcep.msg.path.computation.reply", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&pcep_filter[PCEPF_NOTIFICATION], + { "Notification Message", "pcep.msg.notification", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&pcep_filter[PCEPF_ERROR], + { "Error Message", "pcep.msg.error", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&pcep_filter[PCEPF_CLOSE], + { "Close Message", "pcep.msg.close", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + /*Object header*/ + {&pcep_hdr_obj_flags_reserved, + { "Reserved Flags", "pcep.hdr.obj.flags.reserved", FT_BOOLEAN, 4, TFS(&tfs_set_notset), PCEP_HDR_OBJ_RESERVED, + "", HFILL }}, + {&pcep_hdr_obj_flags_p, + { "Processing-Rule (P)", "pcep.hdr.obj.flags.p", FT_BOOLEAN, 4, TFS(&tfs_set_notset), PCEP_HDR_OBJ_P, + "", HFILL }}, + {&pcep_hdr_obj_flags_i, + { "Ignore (I)", "pcep.hdr.obj.flags.i", FT_BOOLEAN, 4, TFS(&tfs_set_notset), PCEP_HDR_OBJ_I, + "", HFILL }}, + /* Object class */ + {&pcep_filter[PCEPF_OBJECT_CLASS], + { "Object Class", "pcep.object", FT_UINT32, BASE_DEC, VALS(pcep_class_vals), 0x0, + "", HFILL }}, + + /* Object types */ + {&pcep_filter[PCEPF_OBJ_OPEN], + { "OPEN object", "pcep.obj.open", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&pcep_open_flags_res, + { "Reserved Flags", "pcep.open.flags.res", FT_BOOLEAN, 8, TFS(&tfs_set_notset), PCEP_OPEN_RES, + "", HFILL }}, + {&pcep_filter[PCEPF_OBJ_RP], + { "RP object", "pcep.obj.rp", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&pcep_rp_flags_reserved, + { "Reserved Flags", "pcep.rp.flags.reserved", FT_BOOLEAN, 24, TFS(&tfs_set_notset), PCEP_RP_RESERVED, + "", HFILL }}, + {&pcep_rp_flags_pri, + { "Priority (PRI)", "pcep.rp.flags.pri", FT_BOOLEAN, 24, TFS(&tfs_on_off), PCEP_RP_PRI, + "", HFILL }}, + {&pcep_rp_flags_r, + { "Reoptimization (R)", "pcep.rp.flags.r", FT_BOOLEAN, 24, TFS(&tfs_set_notset), PCEP_RP_R, + "", HFILL }}, + {&pcep_rp_flags_b, + { "Bi-directional (L)", "pcep.rp.flags.b", FT_BOOLEAN, 24, TFS(&tfs_set_notset), PCEP_RP_B, + "", HFILL }}, + {&pcep_rp_flags_o, + { "Strict/Loose (L)", "pcep.rp.flags.o", FT_BOOLEAN, 24, TFS(&tfs_set_notset), PCEP_RP_O, + "", HFILL }}, + {&pcep_filter[PCEPF_OBJ_NO_PATH], + { "NO-PATH object", "pcep.obj.nopath", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&pcep_no_path_flags_c, + { "C", "pcep.no.path.flags.c", FT_BOOLEAN, 16, TFS(&tfs_set_notset), PCEP_NO_PATH_C, + "", HFILL }}, + {&pcep_filter[PCEPF_OBJ_END_POINT], + { "END-POINT object", "pcep.obj.endpoint", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&pcep_filter[PCEPF_OBJ_BANDWIDTH], + { "BANDWIDTH object", "pcep.obj.bandwidth", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&pcep_filter[PCEPF_OBJ_METRIC], + { "METRIC object", "pcep.obj.metric", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&pcep_metric_flags_c, + { "Cost (C)", "pcep.metric.flags.c", FT_BOOLEAN, 8, TFS(&tfs_set_notset), PCEP_METRIC_C, + "", HFILL }}, + {&pcep_metric_flags_b, + { "Bound (B)", "pcep.metric.flags.b", FT_BOOLEAN, 8, TFS(&tfs_set_notset), PCEP_METRIC_B, + "", HFILL }}, + {&pcep_filter[PCEPF_OBJ_EXPLICIT_ROUTE], + { "EXPLICIT ROUTE object (ERO)", "pcep.obj.ero", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&pcep_filter[PCEPF_OBJ_RECORD_ROUTE], + { "RECORD ROUTE object (RRO)", "pcep.obj.rro", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&pcep_filter[PCEPF_OBJ_LSPA], + { "LSPA object", "pcep.obj.lspa", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&pcep_lspa_flags_l, + { "Local Protection Desired (L)", "pcep.lspa.flags.l", FT_BOOLEAN, 8, TFS(&tfs_set_notset), PCEP_LSPA_L, + "", HFILL }}, + {&pcep_filter[PCEPF_OBJ_IRO], + { "IRO object", "pcep.obj.iro", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&pcep_filter[PCEPF_OBJ_SVEC], + { "SVEC object", "pcep.obj.svec", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&pcep_svec_flags_l, + { "Link diverse (L)", "pcep.svec.flags.l", FT_BOOLEAN, 24, TFS(&tfs_set_notset), PCEP_SVEC_L, + "", HFILL }}, + + {&pcep_svec_flags_n, + { "Node diverse (N)", "pcep.svec.flags.n", FT_BOOLEAN, 24, TFS(&tfs_set_notset), PCEP_SVEC_N, + "", HFILL }}, + + {&pcep_svec_flags_s, + { "SRLG diverse (S)", "pcep.svec.flags.s", FT_BOOLEAN, 24, TFS(&tfs_set_notset), PCEP_SVEC_S, + "", HFILL }}, + + {&pcep_filter[PCEPF_OBJ_NOTIFICATION], + { "NOTIFICATION object", "pcep.obj.notification", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&pcep_filter[PCEPF_NOTI_TYPE], + { "Notification Value", "pcep.notification.value1", FT_UINT32, BASE_DEC, VALS(pcep_notification_types_vals), 0x0, + "", HFILL }}, + {&pcep_filter[PCEPF_NOTI_VAL1], + { "Notification Type", "pcep.notification.type2", FT_UINT32, BASE_DEC, VALS(pcep_notification_values1_vals), 0x0, + "", HFILL }}, + {&pcep_filter[PCEPF_NOTI_VAL2], + { "Notification Type", "pcep.notification.type", FT_UINT32, BASE_DEC, VALS(pcep_notification_values2_vals), 0x0, + "", HFILL }}, + + {&pcep_filter[PCEPF_OBJ_PCEP_ERROR], + { "ERROR object", "pcep.obj.error", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&pcep_filter[PCEPF_ERROR_TYPE], + { "Error-Type", "pcep.error.type", FT_UINT8, BASE_DEC, VALS(pcep_error_types_obj_vals), 0x0, + "", HFILL }}, + {&pcep_filter[PCEPF_OBJ_LOAD_BALANCING], + { "LOAD BALANCING object", "pcep.obj.loadbalancing", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&pcep_filter[PCEPF_OBJ_CLOSE], + { "CLOSE object", "pcep.obj.close", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&pcep_filter[PCEPF_OBJ_XRO], + { "EXCLUDE ROUTE object (XRO)", "pcep.obj.xro", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + /*Subobjects*/ + {&pcep_filter[PCEPF_SUBOBJ], + { "Type", "pcep.subobj", FT_UINT8, BASE_DEC, VALS(pcep_subobj_vals), 0x0, + "", HFILL }}, + + {&pcep_filter[PCEPF_SUBOBJ_IPv4], + { "SUBOBJECT: IPv4 Prefix", "pcep.subobj.ipv4", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&pcep_filter[PCEPF_SUBOBJ_IPv6], + { "SUBOBJECT: IPv6 Prefix", "pcep.subobj.ipv6", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&pcep_filter[PCEPF_SUBOBJ_LABEL_CONTROL], + { "SUBOBJECT: Label Control", "pcep.subobj.label.control", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&pcep_filter[PCEPF_SUBOBJ_UNNUM_INTERFACEID], + { "SUBOBJECT: Unnumbered Interface ID", "pcep.subobj.unnum.interfaceid", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&pcep_filter[PCEPF_SUBOBJ_AUTONOMOUS_SYS_NUM], + { "SUBOBJECT: Autonomous System Number", "pcep.subobj.autonomous.sys.num", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&pcep_filter[PCEPF_SUBOBJ_SRLG], + { "SUBOBJECT: SRLG", "pcep.subobj.srlg", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&pcep_filter[PCEPF_SUBOBJ_EXRS], + { "SUBOBJECT: EXRS", "pcep.subobj.exrs", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + {&pcep_filter[PCEPF_SUBOBJ_XRO], + { "Type", "pcep.subobj.label", FT_UINT32, BASE_DEC, VALS(pcep_subobj_xro_vals), 0x0, + "", HFILL }}, + {&pcep_xro_flags_f, + { "Fail (F)", "pcep.xro.flags.f", FT_BOOLEAN, 16, TFS(&tfs_set_notset), PCEP_XRO_F, + "", HFILL }}, + {&pcep_filter[PCEPF_SUB_XRO_ATTRIB], + { "Attribute", "pcep.xro.sub.attribute", FT_UINT32, BASE_DEC, VALS(pcep_xro_attribute_obj_vals), 0x0, + "", HFILL }}, + + {&pcep_subobj_flags_lpa, + { "Local Protection Available", "pcep.subobj.flags.lpa", FT_BOOLEAN, 8, TFS(&tfs_set_notset), PCEP_SUB_LPA, + "", HFILL }}, + {&pcep_subobj_flags_lpu, + { "Local protection in Use", "pcep.subobj.flags.lpu", FT_BOOLEAN, 8, TFS(&tfs_set_notset), PCEP_SUB_LPU, + "", HFILL }}, + {&pcep_subobj_label_flags_gl, + { "Global Label", "pcep.subobj.label.flags.gl", FT_BOOLEAN, 8, TFS(&tfs_set_notset), PCEP_SUB_LABEL_GL, + "", HFILL }}, + }; + /*Register the protocol name and description*/ proto_pcep = proto_register_protocol ( "Path Computation Element communication Protocol", /* name*/ diff --git a/epan/dissectors/packet-rsvp.c b/epan/dissectors/packet-rsvp.c index fec7aa5d2c..84d45f1173 100644 --- a/epan/dissectors/packet-rsvp.c +++ b/epan/dissectors/packet-rsvp.c @@ -1004,331 +1004,6 @@ enum rsvp_filter_keys { static int rsvp_filter[RSVPF_MAX]; -static hf_register_info rsvpf_info[] = { - - /* Message type number */ - {&rsvp_filter[RSVPF_MSG], - { "Message Type", "rsvp.msg", FT_UINT8, BASE_DEC, VALS(message_type_vals), 0x0, - "", HFILL }}, - - /* Message type shorthands */ - {&rsvp_filter[RSVPF_PATH], - { "Path Message", "rsvp.path", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_RESV], - { "Resv Message", "rsvp.resv", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_PATHERR], - { "Path Error Message", "rsvp.perr", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_RESVERR], - { "Resv Error Message", "rsvp.rerr", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_PATHTEAR], - { "Path Tear Message", "rsvp.ptear", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_RESVTEAR], - { "Resv Tear Message", "rsvp.rtear", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_RCONFIRM], - { "Resv Confirm Message", "rsvp.resvconf", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_RTEARCONFIRM], - { "Resv Tear Confirm Message", "rsvp.rtearconf", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_BUNDLE], - { "Bundle Message", "rsvp.bundle", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_ACK], - { "Ack Message", "rsvp.ack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_SREFRESH], - { "Srefresh Message", "rsvp.srefresh", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_HELLO], - { "HELLO Message", "rsvp.hello", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - /* Object class */ - {&rsvp_filter[RSVPF_OBJECT], - { "Object class", "rsvp.object", FT_UINT8, BASE_DEC, VALS(rsvp_class_vals), 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_NOTIFY], - { "Notify Message", "rsvp.notify", FT_BOOLEAN, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - /* Object present shorthands */ - {&rsvp_filter[RSVPF_SESSION], - { "SESSION", "rsvp.session", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_HOP], - { "HOP", "rsvp.hop", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_HELLO_OBJ], - { "HELLO Request/Ack", "rsvp.hello_obj", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_INTEGRITY], - { "INTEGRITY", "rsvp.integrity", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_TIME_VALUES], - { "TIME VALUES", "rsvp.time", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_ERROR], - { "ERROR", "rsvp.error", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_SCOPE], - { "SCOPE", "rsvp.scope", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_STYLE], - { "STYLE", "rsvp.style", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_FLOWSPEC], - { "FLOWSPEC", "rsvp.flowspec", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_FILTER_SPEC], - { "FILTERSPEC", "rsvp.filter", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_SENDER], - { "SENDER TEMPLATE", "rsvp.sender", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_TSPEC], - { "SENDER TSPEC", "rsvp.tspec", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_ADSPEC], - { "ADSPEC", "rsvp.adspec", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_POLICY], - { "POLICY", "rsvp.policy", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_CONFIRM], - { "CONFIRM", "rsvp.confirm", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_LABEL], - { "LABEL", "rsvp.label", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_RECOVERY_LABEL], - { "RECOVERY LABEL", "rsvp.recovery_label", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_UPSTREAM_LABEL], - { "UPSTREAM LABEL", "rsvp.upstream_label", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_SUGGESTED_LABEL], - { "SUGGESTED LABEL", "rsvp.suggested_label", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_LABEL_SET], - { "LABEL SET", "rsvp.label_set", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_ACCEPTABLE_LABEL_SET], - { "ACCEPTABLE LABEL SET", "rsvp.acceptable_label_set", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_PROTECTION], - { "PROTECTION", "rsvp.protection", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_DIFFSERV], - { "DIFFSERV", "rsvp.diffserv", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_DSTE], - { "CLASSTYPE", "rsvp.dste", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_RESTART_CAP], - { "RESTART CAPABILITY", "rsvp.restart", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_LABEL_REQUEST], - { "LABEL REQUEST", "rsvp.label_request", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_SESSION_ATTRIBUTE], - { "SESSION ATTRIBUTE", "rsvp.session_attribute", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_EXPLICIT_ROUTE], - { "EXPLICIT ROUTE", "rsvp.explicit_route", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_RECORD_ROUTE], - { "RECORD ROUTE", "rsvp.record_route", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_MESSAGE_ID], - { "MESSAGE-ID", "rsvp.msgid", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_MESSAGE_ID_ACK], - { "MESSAGE-ID ACK", "rsvp.ack", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_MESSAGE_ID_LIST], - { "MESSAGE-ID LIST", "rsvp.msgid_list", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_DCLASS], - { "DCLASS", "rsvp.dclass", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_LSP_TUNNEL_IF_ID], - { "LSP INTERFACE-ID", "rsvp.lsp_tunnel_if_id", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_ADMIN_STATUS], - { "ADMIN STATUS", "rsvp.admin_status", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_ASSOCIATION], - { "ASSOCIATION", "rsvp.association", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_NOTIFY_REQUEST], - { "NOTIFY REQUEST", "rsvp.notify_request", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_GENERALIZED_UNI], - { "GENERALIZED UNI", "rsvp.generalized_uni", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_CALL_ID], - { "CALL ID", "rsvp.call_id", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_UNKNOWN_OBJ], - { "Unknown object", "rsvp.obj_unknown", FT_NONE, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - /* Session fields */ - {&rsvp_filter[RSVPF_SESSION_IP], - { "Destination address", "rsvp.session.ip", FT_IPv4, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_SESSION_PORT], - { "Port number", "rsvp.session.port", FT_UINT16, BASE_DEC, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_SESSION_PROTO], - { "Protocol", "rsvp.session.proto", FT_UINT8, BASE_DEC, VALS(proto_vals), 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_SESSION_TUNNEL_ID], - { "Tunnel ID", "rsvp.session.tunnel_id", FT_UINT16, BASE_DEC, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_SESSION_EXT_TUNNEL_ID], - { "Extended tunnel ID", "rsvp.session.ext_tunnel_id", FT_UINT32, BASE_DEC, NULL, 0x0, - "", HFILL }}, - - /* Sender template/Filterspec fields */ - {&rsvp_filter[RSVPF_SENDER_IP], - { "Sender IPv4 address", "rsvp.sender.ip", FT_IPv4, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_SENDER_PORT], - { "Sender port number", "rsvp.sender.port", FT_UINT16, BASE_DEC, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_SENDER_LSP_ID], - { "Sender LSP ID", "rsvp.sender.lsp_id", FT_UINT16, BASE_DEC, NULL, 0x0, - "", HFILL }}, - - /* Diffserv object fields */ - {&rsvp_filter[RSVPF_DIFFSERV_MAPNB], - { "MAPnb", "rsvp.diffserv.mapnb", FT_UINT8, BASE_DEC, NULL, 0x0, - MAPNB_DESCRIPTION, HFILL }}, - - {&rsvp_filter[RSVPF_DIFFSERV_MAP], - { "MAP", "rsvp.diffserv.map", FT_NONE, BASE_NONE, NULL, 0x0, - MAP_DESCRIPTION, HFILL }}, - - {&rsvp_filter[RSVPF_DIFFSERV_MAP_EXP], - { "EXP", "rsvp.diffserv.map.exp", FT_UINT8, BASE_DEC, NULL, 0x0, - EXP_DESCRIPTION, HFILL }}, - - {&rsvp_filter[RSVPF_DIFFSERV_PHBID], - { "PHBID", "rsvp.diffserv.phbid", FT_NONE, BASE_NONE, NULL, 0x0, - PHBID_DESCRIPTION, HFILL }}, - - {&rsvp_filter[RSVPF_DIFFSERV_PHBID_DSCP], - { PHBID_DSCP_DESCRIPTION, "rsvp.diffserv.phbid.dscp", FT_UINT16, - BASE_DEC, NULL, PHBID_DSCP_MASK, "DSCP", HFILL }}, - - {&rsvp_filter[RSVPF_DIFFSERV_PHBID_CODE], - { PHBID_CODE_DESCRIPTION, "rsvp.diffserv.phbid.code", FT_UINT16, - BASE_DEC, NULL, PHBID_CODE_MASK, "PHB id code", HFILL }}, - - {&rsvp_filter[RSVPF_DIFFSERV_PHBID_BIT14], - { PHBID_BIT14_DESCRIPTION, "rsvp.diffserv.phbid.bit14", FT_UINT16, - BASE_DEC, VALS(phbid_bit14_vals), PHBID_BIT14_MASK, "Bit 14", HFILL }}, - - {&rsvp_filter[RSVPF_DIFFSERV_PHBID_BIT15], - { PHBID_BIT15_DESCRIPTION, "rsvp.diffserv.phbid.bit15", FT_UINT16, - BASE_DEC, VALS(phbid_bit15_vals), PHBID_BIT15_MASK, "Bit 15", HFILL }}, - - /* Diffserv-aware TE object field */ - {&rsvp_filter[RSVPF_DSTE_CLASSTYPE], - { "CT", "rsvp.dste.classtype", FT_UINT8, BASE_DEC, NULL, 0x0, - NULL, HFILL }}, - - /* Generalized UNI object field */ - {&rsvp_filter[RSVPF_GUNI_SRC_IPV4], - { "Source TNA", "rsvp.guni.srctna.ipv4", FT_IPv4, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_GUNI_DST_IPV4], - { "Destination TNA", "rsvp.guni.dsttna.ipv4", FT_IPv4, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_GUNI_SRC_IPV6], - { "Source TNA", "rsvp.guni.srctna.ipv6", FT_IPv6, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - {&rsvp_filter[RSVPF_GUNI_DST_IPV6], - { "Destination TNA", "rsvp.guni.dsttna.ipv6", FT_IPv6, BASE_NONE, NULL, 0x0, - "", HFILL }}, - - /* Generalized UNI object field */ - {&rsvp_filter[RSVPF_CALL_ID_SRC_ADDR_IPV4], - { "Source Transport Network Address", "rsvp.callid.srcaddr.ipv4", FT_IPv4, - BASE_NONE, NULL, 0x0, "", HFILL }}, - - {&rsvp_filter[RSVPF_CALL_ID_SRC_ADDR_IPV6], - { "Source Transport Network Address", "rsvp.callid.srcaddr.ipv6", FT_IPv6, - BASE_NONE, NULL, 0x0, "", HFILL }} -}; - /* RSVP Conversation related Hash functions */ /* @@ -5919,6 +5594,331 @@ proto_register_rsvp(void) { gint i; + static hf_register_info rsvpf_info[] = { + + /* Message type number */ + {&rsvp_filter[RSVPF_MSG], + { "Message Type", "rsvp.msg", FT_UINT8, BASE_DEC, VALS(message_type_vals), 0x0, + "", HFILL }}, + + /* Message type shorthands */ + {&rsvp_filter[RSVPF_PATH], + { "Path Message", "rsvp.path", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_RESV], + { "Resv Message", "rsvp.resv", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_PATHERR], + { "Path Error Message", "rsvp.perr", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_RESVERR], + { "Resv Error Message", "rsvp.rerr", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_PATHTEAR], + { "Path Tear Message", "rsvp.ptear", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_RESVTEAR], + { "Resv Tear Message", "rsvp.rtear", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_RCONFIRM], + { "Resv Confirm Message", "rsvp.resvconf", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_RTEARCONFIRM], + { "Resv Tear Confirm Message", "rsvp.rtearconf", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_BUNDLE], + { "Bundle Message", "rsvp.bundle", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_ACK], + { "Ack Message", "rsvp.ack", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_SREFRESH], + { "Srefresh Message", "rsvp.srefresh", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_HELLO], + { "HELLO Message", "rsvp.hello", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + /* Object class */ + {&rsvp_filter[RSVPF_OBJECT], + { "Object class", "rsvp.object", FT_UINT8, BASE_DEC, VALS(rsvp_class_vals), 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_NOTIFY], + { "Notify Message", "rsvp.notify", FT_BOOLEAN, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + /* Object present shorthands */ + {&rsvp_filter[RSVPF_SESSION], + { "SESSION", "rsvp.session", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_HOP], + { "HOP", "rsvp.hop", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_HELLO_OBJ], + { "HELLO Request/Ack", "rsvp.hello_obj", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_INTEGRITY], + { "INTEGRITY", "rsvp.integrity", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_TIME_VALUES], + { "TIME VALUES", "rsvp.time", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_ERROR], + { "ERROR", "rsvp.error", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_SCOPE], + { "SCOPE", "rsvp.scope", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_STYLE], + { "STYLE", "rsvp.style", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_FLOWSPEC], + { "FLOWSPEC", "rsvp.flowspec", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_FILTER_SPEC], + { "FILTERSPEC", "rsvp.filter", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_SENDER], + { "SENDER TEMPLATE", "rsvp.sender", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_TSPEC], + { "SENDER TSPEC", "rsvp.tspec", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_ADSPEC], + { "ADSPEC", "rsvp.adspec", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_POLICY], + { "POLICY", "rsvp.policy", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_CONFIRM], + { "CONFIRM", "rsvp.confirm", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_LABEL], + { "LABEL", "rsvp.label", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_RECOVERY_LABEL], + { "RECOVERY LABEL", "rsvp.recovery_label", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_UPSTREAM_LABEL], + { "UPSTREAM LABEL", "rsvp.upstream_label", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_SUGGESTED_LABEL], + { "SUGGESTED LABEL", "rsvp.suggested_label", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_LABEL_SET], + { "LABEL SET", "rsvp.label_set", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_ACCEPTABLE_LABEL_SET], + { "ACCEPTABLE LABEL SET", "rsvp.acceptable_label_set", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_PROTECTION], + { "PROTECTION", "rsvp.protection", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_DIFFSERV], + { "DIFFSERV", "rsvp.diffserv", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_DSTE], + { "CLASSTYPE", "rsvp.dste", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_RESTART_CAP], + { "RESTART CAPABILITY", "rsvp.restart", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_LABEL_REQUEST], + { "LABEL REQUEST", "rsvp.label_request", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_SESSION_ATTRIBUTE], + { "SESSION ATTRIBUTE", "rsvp.session_attribute", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_EXPLICIT_ROUTE], + { "EXPLICIT ROUTE", "rsvp.explicit_route", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_RECORD_ROUTE], + { "RECORD ROUTE", "rsvp.record_route", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_MESSAGE_ID], + { "MESSAGE-ID", "rsvp.msgid", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_MESSAGE_ID_ACK], + { "MESSAGE-ID ACK", "rsvp.ack", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_MESSAGE_ID_LIST], + { "MESSAGE-ID LIST", "rsvp.msgid_list", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_DCLASS], + { "DCLASS", "rsvp.dclass", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_LSP_TUNNEL_IF_ID], + { "LSP INTERFACE-ID", "rsvp.lsp_tunnel_if_id", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_ADMIN_STATUS], + { "ADMIN STATUS", "rsvp.admin_status", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_ASSOCIATION], + { "ASSOCIATION", "rsvp.association", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_NOTIFY_REQUEST], + { "NOTIFY REQUEST", "rsvp.notify_request", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_GENERALIZED_UNI], + { "GENERALIZED UNI", "rsvp.generalized_uni", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_CALL_ID], + { "CALL ID", "rsvp.call_id", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_UNKNOWN_OBJ], + { "Unknown object", "rsvp.obj_unknown", FT_NONE, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + /* Session fields */ + {&rsvp_filter[RSVPF_SESSION_IP], + { "Destination address", "rsvp.session.ip", FT_IPv4, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_SESSION_PORT], + { "Port number", "rsvp.session.port", FT_UINT16, BASE_DEC, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_SESSION_PROTO], + { "Protocol", "rsvp.session.proto", FT_UINT8, BASE_DEC, VALS(proto_vals), 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_SESSION_TUNNEL_ID], + { "Tunnel ID", "rsvp.session.tunnel_id", FT_UINT16, BASE_DEC, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_SESSION_EXT_TUNNEL_ID], + { "Extended tunnel ID", "rsvp.session.ext_tunnel_id", FT_UINT32, BASE_DEC, NULL, 0x0, + "", HFILL }}, + + /* Sender template/Filterspec fields */ + {&rsvp_filter[RSVPF_SENDER_IP], + { "Sender IPv4 address", "rsvp.sender.ip", FT_IPv4, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_SENDER_PORT], + { "Sender port number", "rsvp.sender.port", FT_UINT16, BASE_DEC, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_SENDER_LSP_ID], + { "Sender LSP ID", "rsvp.sender.lsp_id", FT_UINT16, BASE_DEC, NULL, 0x0, + "", HFILL }}, + + /* Diffserv object fields */ + {&rsvp_filter[RSVPF_DIFFSERV_MAPNB], + { "MAPnb", "rsvp.diffserv.mapnb", FT_UINT8, BASE_DEC, NULL, 0x0, + MAPNB_DESCRIPTION, HFILL }}, + + {&rsvp_filter[RSVPF_DIFFSERV_MAP], + { "MAP", "rsvp.diffserv.map", FT_NONE, BASE_NONE, NULL, 0x0, + MAP_DESCRIPTION, HFILL }}, + + {&rsvp_filter[RSVPF_DIFFSERV_MAP_EXP], + { "EXP", "rsvp.diffserv.map.exp", FT_UINT8, BASE_DEC, NULL, 0x0, + EXP_DESCRIPTION, HFILL }}, + + {&rsvp_filter[RSVPF_DIFFSERV_PHBID], + { "PHBID", "rsvp.diffserv.phbid", FT_NONE, BASE_NONE, NULL, 0x0, + PHBID_DESCRIPTION, HFILL }}, + + {&rsvp_filter[RSVPF_DIFFSERV_PHBID_DSCP], + { PHBID_DSCP_DESCRIPTION, "rsvp.diffserv.phbid.dscp", FT_UINT16, + BASE_DEC, NULL, PHBID_DSCP_MASK, "DSCP", HFILL }}, + + {&rsvp_filter[RSVPF_DIFFSERV_PHBID_CODE], + { PHBID_CODE_DESCRIPTION, "rsvp.diffserv.phbid.code", FT_UINT16, + BASE_DEC, NULL, PHBID_CODE_MASK, "PHB id code", HFILL }}, + + {&rsvp_filter[RSVPF_DIFFSERV_PHBID_BIT14], + { PHBID_BIT14_DESCRIPTION, "rsvp.diffserv.phbid.bit14", FT_UINT16, + BASE_DEC, VALS(phbid_bit14_vals), PHBID_BIT14_MASK, "Bit 14", HFILL }}, + + {&rsvp_filter[RSVPF_DIFFSERV_PHBID_BIT15], + { PHBID_BIT15_DESCRIPTION, "rsvp.diffserv.phbid.bit15", FT_UINT16, + BASE_DEC, VALS(phbid_bit15_vals), PHBID_BIT15_MASK, "Bit 15", HFILL }}, + + /* Diffserv-aware TE object field */ + {&rsvp_filter[RSVPF_DSTE_CLASSTYPE], + { "CT", "rsvp.dste.classtype", FT_UINT8, BASE_DEC, NULL, 0x0, + NULL, HFILL }}, + + /* Generalized UNI object field */ + {&rsvp_filter[RSVPF_GUNI_SRC_IPV4], + { "Source TNA", "rsvp.guni.srctna.ipv4", FT_IPv4, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_GUNI_DST_IPV4], + { "Destination TNA", "rsvp.guni.dsttna.ipv4", FT_IPv4, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_GUNI_SRC_IPV6], + { "Source TNA", "rsvp.guni.srctna.ipv6", FT_IPv6, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + {&rsvp_filter[RSVPF_GUNI_DST_IPV6], + { "Destination TNA", "rsvp.guni.dsttna.ipv6", FT_IPv6, BASE_NONE, NULL, 0x0, + "", HFILL }}, + + /* Generalized UNI object field */ + {&rsvp_filter[RSVPF_CALL_ID_SRC_ADDR_IPV4], + { "Source Transport Network Address", "rsvp.callid.srcaddr.ipv4", FT_IPv4, + BASE_NONE, NULL, 0x0, "", HFILL }}, + + {&rsvp_filter[RSVPF_CALL_ID_SRC_ADDR_IPV6], + { "Source Transport Network Address", "rsvp.callid.srcaddr.ipv6", FT_IPv6, + BASE_NONE, NULL, 0x0, "", HFILL }} + }; + /* Build the tree array */ for (i=0; i