aboutsummaryrefslogtreecommitdiffstats
path: root/epan
diff options
context:
space:
mode:
authorTomas Kukosa <tomas.kukosa@siemens.com>2006-05-31 07:33:47 +0000
committerTomas Kukosa <tomas.kukosa@siemens.com>2006-05-31 07:33:47 +0000
commit9b2a95f2d4e7d8aa3c36fb223a42527ca7550e09 (patch)
tree73564c50e579e573863d44c5461579fd575b011f /epan
parent16f57a74c6a5faefcf10645413f79d800af64682 (diff)
H.245 update to version 12 (10/2005)
svn path=/trunk/; revision=18262
Diffstat (limited to 'epan')
-rw-r--r--epan/dissectors/packet-h245.c843
1 files changed, 631 insertions, 212 deletions
diff --git a/epan/dissectors/packet-h245.c b/epan/dissectors/packet-h245.c
index 0bbb45a33c..8cec9ece76 100644
--- a/epan/dissectors/packet-h245.c
+++ b/epan/dissectors/packet-h245.c
@@ -367,7 +367,7 @@ static int hf_h245_flowControlIndication = -1; /* FlowControlIndication */
static int hf_h245_mobileMultilinkReconfigurationIndication = -1; /* MobileMultilinkReconfigurationIndication */
static int hf_h245_genericIndication = -1; /* GenericMessage */
static int hf_h245_messageIdentifier = -1; /* CapabilityIdentifier */
-static int hf_h245_subMessageIdentifer = -1; /* T_subMessageIdentifer */
+static int hf_h245_subMessageIdentifier = -1; /* T_subMessageIdentifier */
static int hf_h245_messageContent = -1; /* SEQUENCE_OF_GenericParameter */
static int hf_h245_messageContent_item = -1; /* GenericParameter */
static int hf_h245_nonStandardData = -1; /* NonStandardParameter */
@@ -392,6 +392,8 @@ static int hf_h245_capabilityTable = -1; /* SET_SIZE_1_256_OF_Capabilit
static int hf_h245_capabilityTable_item = -1; /* CapabilityTableEntry */
static int hf_h245_capabilityDescriptors = -1; /* SET_SIZE_1_256_OF_CapabilityDescriptor */
static int hf_h245_capabilityDescriptors_item = -1; /* CapabilityDescriptor */
+static int hf_h245_genericInformation = -1; /* SEQUENCE_OF_GenericInformation */
+static int hf_h245_genericInformation_item = -1; /* GenericInformation */
static int hf_h245_capabilityTableEntryNumber = -1; /* CapabilityTableEntryNumber */
static int hf_h245_capability = -1; /* Capability */
static int hf_h245_capabilityDescriptorNumber = -1; /* CapabilityDescriptorNumber */
@@ -430,8 +432,11 @@ static int hf_h245_transmitMultiplexedStreamCapability = -1; /* MultiplexedStre
static int hf_h245_receiveAndTransmitMultiplexedStreamCapability = -1; /* MultiplexedStreamCapability */
static int hf_h245_receiveRTPAudioTelephonyEventCapability = -1; /* AudioTelephonyEventCapability */
static int hf_h245_receiveRTPAudioToneCapability = -1; /* AudioToneCapability */
-static int hf_h245_fecCapability = -1; /* FECCapability */
+static int hf_h245_depFecCapability = -1; /* DepFECCapability */
static int hf_h245_multiplePayloadStreamCapability = -1; /* MultiplePayloadStreamCapability */
+static int hf_h245_fecCapability = -1; /* FECCapability */
+static int hf_h245_redundancyEncodingCap = -1; /* RedundancyEncodingCapability */
+static int hf_h245_oneOfCapabilities = -1; /* AlternativeCapabilitySet */
static int hf_h245_encryptionAuthenticationAndIntegrity = -1; /* EncryptionAuthenticationAndIntegrity */
static int hf_h245_mediaCapability = -1; /* CapabilityTableEntryNumber */
static int hf_h245_h222Capability = -1; /* H222Capability */
@@ -908,6 +913,7 @@ static int hf_h245_t38TCPBidirectionalMode = -1; /* BOOLEAN */
static int hf_h245_encryptionCapability = -1; /* EncryptionCapability */
static int hf_h245_authenticationCapability = -1; /* AuthenticationCapability */
static int hf_h245_integrityCapability = -1; /* IntegrityCapability */
+static int hf_h245_genericH235SecurityCapability = -1; /* GenericCapability */
static int hf_h245_EncryptionCapability_item = -1; /* MediaEncryptionAlgorithm */
static int hf_h245_algorithm = -1; /* OBJECT_IDENTIFIER */
static int hf_h245_antiSpamAlgorithm = -1; /* OBJECT_IDENTIFIER */
@@ -923,6 +929,7 @@ static int hf_h245_encryptedBasicString = -1; /* NULL */
static int hf_h245_encryptedIA5String = -1; /* NULL */
static int hf_h245_encryptedGeneralString = -1; /* NULL */
static int hf_h245_secureDTMF = -1; /* NULL */
+static int hf_h245_genericUserInputCapability = -1; /* GenericCapability */
static int hf_h245_nonStandardParams = -1; /* SEQUENCE_OF_NonStandardParameter */
static int hf_h245_nonStandardParams_item = -1; /* NonStandardParameter */
static int hf_h245_chairControlCapability = -1; /* BOOLEAN */
@@ -951,8 +958,8 @@ static int hf_h245_unsignedMax = -1; /* INTEGER_0_65535 */
static int hf_h245_unsigned32Min = -1; /* INTEGER_0_4294967295 */
static int hf_h245_unsigned32Max = -1; /* INTEGER_0_4294967295 */
static int hf_h245_octetString = -1; /* OCTET_STRING */
-static int hf_h245_genericParameter = -1; /* SEQUENCE_OF_GenericParameter */
-static int hf_h245_genericParameter_item = -1; /* GenericParameter */
+static int hf_h245_genericParameters = -1; /* SEQUENCE_OF_GenericParameter */
+static int hf_h245_genericParameters_item = -1; /* GenericParameter */
static int hf_h245_multiplexFormat = -1; /* MultiplexFormat */
static int hf_h245_controlOnMuxStream = -1; /* BOOLEAN */
static int hf_h245_capabilityOnMuxStream = -1; /* SET_SIZE_1_256_OF_AlternativeCapabilitySet */
@@ -966,6 +973,12 @@ static int hf_h245_redundancyEncodingBool = -1; /* BOOLEAN */
static int hf_h245_separateStreamBool = -1; /* T_separateStreamBool */
static int hf_h245_separatePort = -1; /* BOOLEAN */
static int hf_h245_samePortBool = -1; /* BOOLEAN */
+static int hf_h245_protectedCapability = -1; /* CapabilityTableEntryNumber */
+static int hf_h245_fecScheme = -1; /* OBJECT_IDENTIFIER */
+static int hf_h245_rfc2733rfc2198 = -1; /* MaxRedundancy */
+static int hf_h245_rfc2733sameport = -1; /* MaxRedundancy */
+static int hf_h245_rfc2733diffport = -1; /* MaxRedundancy */
+static int hf_h245_rfc2733Format = -1; /* Rfc2733Format */
static int hf_h245_olc_fw_lcn = -1; /* OLC_fw_lcn */
static int hf_h245_forwardLogicalChannelParameters = -1; /* T_forwardLogicalChannelParameters */
static int hf_h245_portNumber = -1; /* INTEGER_0_65535 */
@@ -1011,6 +1024,7 @@ static int hf_h245_h235Media = -1; /* H235Media */
static int hf_h245_multiplexedStream = -1; /* MultiplexedStreamParameter */
static int hf_h245_redundancyEncoding = -1; /* RedundancyEncoding */
static int hf_h245_multiplePayloadStream = -1; /* MultiplePayloadStream */
+static int hf_h245_depFec = -1; /* DepFECData */
static int hf_h245_fec = -1; /* FECData */
static int hf_h245_mediaType = -1; /* T_mediaType */
static int hf_h245_resourceID = -1; /* INTEGER_0_65535 */
@@ -1100,14 +1114,20 @@ static int hf_h245_secondary = -1; /* SEQUENCE_OF_RedundancyEncod
static int hf_h245_secondary_item = -1; /* RedundancyEncodingElement */
static int hf_h245_elements = -1; /* SEQUENCE_OF_MultiplePayloadStreamElement */
static int hf_h245_elements_item = -1; /* MultiplePayloadStreamElement */
-static int hf_h245_rfc2733 = -1; /* RFC2733Data */
+static int hf_h245_dep_rfc2733 = -1; /* RFC2733Data */
static int hf_h245_fec_data_mode = -1; /* FECdata_mode */
static int hf_h245_redundancyEncodingFlag = -1; /* NULL */
static int hf_h245_differentPort = -1; /* T_differentPort */
static int hf_h245_protectedSessionID = -1; /* INTEGER_1_255 */
static int hf_h245_protectedPayloadType = -1; /* INTEGER_0_127 */
static int hf_h245_samePort = -1; /* T_samePort */
-static int hf_h245_separateStream = -1; /* SeparateStream */
+static int hf_h245_separateStream = -1; /* DepSeparateStream */
+static int hf_h245_rfc2733 = -1; /* T_rfc2733 */
+static int hf_h245_pktMode = -1; /* T_pktMode */
+static int hf_h245_rfc2198coding = -1; /* NULL */
+static int hf_h245_mode_rfc2733sameport = -1; /* T_mode_rfc2733sameport */
+static int hf_h245_mode_rfc2733diffport = -1; /* T_mode_rfc2733diffport */
+static int hf_h245_protectedChannel = -1; /* LogicalChannelNumber */
static int hf_h245_unicastAddress = -1; /* UnicastAddress */
static int hf_h245_multicastAddress = -1; /* MulticastAddress */
static int hf_h245_iPAddress = -1; /* T_iPAddress */
@@ -1141,6 +1161,7 @@ static int hf_h245_synchFlag = -1; /* INTEGER_0_255 */
static int hf_h245_h235Key = -1; /* OCTET_STRING_SIZE_1_65535 */
static int hf_h245_escrowentry = -1; /* SEQUENCE_SIZE_1_256_OF_EscrowData */
static int hf_h245_escrowentry_item = -1; /* EscrowData */
+static int hf_h245_genericParameter = -1; /* GenericParameter */
static int hf_h245_escrowID = -1; /* OBJECT_IDENTIFIER */
static int hf_h245_escrowValue = -1; /* BIT_STRING_SIZE_1_65535 */
static int hf_h245_olc_ack_fw_lcn = -1; /* OLC_ack_fw_lcn */
@@ -1164,6 +1185,7 @@ static int hf_h245_masterSlaveConflict = -1; /* NULL */
static int hf_h245_waitForCommunicationMode = -1; /* NULL */
static int hf_h245_invalidDependentChannel = -1; /* NULL */
static int hf_h245_replacementForRejected = -1; /* NULL */
+static int hf_h245_securityDenied = -1; /* NULL */
static int hf_h245_sessionID = -1; /* INTEGER_1_255 */
static int hf_h245_ack_mediaChannel = -1; /* Ack_mediaChannel */
static int hf_h245_ack_mediaControlChannel = -1; /* Ack_mediaControlChannel */
@@ -1221,6 +1243,7 @@ static int hf_h245_h235Mode = -1; /* H235Mode */
static int hf_h245_multiplexedStreamMode = -1; /* MultiplexedStreamParameter */
static int hf_h245_redundancyEncodingDTMode = -1; /* RedundancyEncodingDTMode */
static int hf_h245_multiplePayloadStreamMode = -1; /* MultiplePayloadStreamMode */
+static int hf_h245_depFecMode = -1; /* DepFECMode */
static int hf_h245_fecMode = -1; /* FECMode */
static int hf_h245_type = -1; /* ModeElementType */
static int hf_h245_h223ModeParameters = -1; /* H223ModeParameters */
@@ -1238,6 +1261,7 @@ static int hf_h245_mpsmElements = -1; /* SEQUENCE_OF_MultiplePayload
static int hf_h245_mpsmElements_item = -1; /* MultiplePayloadStreamElementMode */
static int hf_h245_rfc2733Mode = -1; /* T_rfc2733Mode */
static int hf_h245_fec_mode = -1; /* FEC_mode */
+static int hf_h245_protectedElement = -1; /* ModeElementType */
static int hf_h245_adaptationLayer = -1; /* AdaptationLayerType */
static int hf_h245_al1Framed = -1; /* NULL */
static int hf_h245_al1NotFramed = -1; /* NULL */
@@ -1629,10 +1653,10 @@ static int hf_h245_expirationTime = -1; /* INTEGER_0_4294967295 */
static int hf_h245_rtpPayloadIndication = -1; /* NULL */
static int hf_h245_paramS = -1; /* Params */
static int hf_h245_encryptedSignalType = -1; /* OCTET_STRING_SIZE_1 */
+static int hf_h245_algorithmOID = -1; /* OBJECT_IDENTIFIER */
static int hf_h245_signalUpdate = -1; /* T_signalUpdate */
static int hf_h245_si_rtp = -1; /* Si_rtp */
static int hf_h245_extendedAlphanumeric = -1; /* T_extendedAlphanumeric */
-static int hf_h245_algorithmOID = -1; /* OBJECT_IDENTIFIER */
static int hf_h245_encrypted = -1; /* OCTET_STRING */
static int hf_h245_encryptedAlphanumeric = -1; /* EncryptedAlphanumeric */
@@ -1663,6 +1687,7 @@ static gint ett_h245_MasterSlaveDeterminationRelease = -1;
static gint ett_h245_TerminalCapabilitySet = -1;
static gint ett_h245_SET_SIZE_1_256_OF_CapabilityTableEntry = -1;
static gint ett_h245_SET_SIZE_1_256_OF_CapabilityDescriptor = -1;
+static gint ett_h245_SEQUENCE_OF_GenericInformation = -1;
static gint ett_h245_CapabilityTableEntry = -1;
static gint ett_h245_CapabilityDescriptor = -1;
static gint ett_h245_SET_SIZE_1_256_OF_AlternativeCapabilitySet = -1;
@@ -1805,9 +1830,11 @@ static gint ett_h245_AudioToneCapability = -1;
static gint ett_h245_NoPTAudioTelephonyEventCapability = -1;
static gint ett_h245_NoPTAudioToneCapability = -1;
static gint ett_h245_MultiplePayloadStreamCapability = -1;
-static gint ett_h245_FECCapability = -1;
+static gint ett_h245_DepFECCapability = -1;
static gint ett_h245_FECC_rfc2733 = -1;
static gint ett_h245_T_separateStreamBool = -1;
+static gint ett_h245_FECCapability = -1;
+static gint ett_h245_Rfc2733Format = -1;
static gint ett_h245_OpenLogicalChannel = -1;
static gint ett_h245_T_forwardLogicalChannelParameters = -1;
static gint ett_h245_OLC_forw_multiplexParameters = -1;
@@ -1858,12 +1885,17 @@ static gint ett_h245_RedundancyEncodingElement = -1;
static gint ett_h245_MultiplePayloadStream = -1;
static gint ett_h245_SEQUENCE_OF_MultiplePayloadStreamElement = -1;
static gint ett_h245_MultiplePayloadStreamElement = -1;
-static gint ett_h245_FECData = -1;
+static gint ett_h245_DepFECData = -1;
static gint ett_h245_RFC2733Data = -1;
static gint ett_h245_FECdata_mode = -1;
-static gint ett_h245_SeparateStream = -1;
+static gint ett_h245_DepSeparateStream = -1;
static gint ett_h245_T_differentPort = -1;
static gint ett_h245_T_samePort = -1;
+static gint ett_h245_FECData = -1;
+static gint ett_h245_T_rfc2733 = -1;
+static gint ett_h245_T_pktMode = -1;
+static gint ett_h245_T_mode_rfc2733sameport = -1;
+static gint ett_h245_T_mode_rfc2733diffport = -1;
static gint ett_h245_TransportAddress = -1;
static gint ett_h245_UnicastAddress = -1;
static gint ett_h245_T_iPAddress = -1;
@@ -1938,9 +1970,10 @@ static gint ett_h245_Re_type = -1;
static gint ett_h245_MultiplePayloadStreamMode = -1;
static gint ett_h245_SEQUENCE_OF_MultiplePayloadStreamElementMode = -1;
static gint ett_h245_MultiplePayloadStreamElementMode = -1;
-static gint ett_h245_FECMode = -1;
+static gint ett_h245_DepFECMode = -1;
static gint ett_h245_T_rfc2733Mode = -1;
static gint ett_h245_FEC_mode = -1;
+static gint ett_h245_FECMode = -1;
static gint ett_h245_H223ModeParameters = -1;
static gint ett_h245_AdaptationLayerType = -1;
static gint ett_h245_V76ModeParameters = -1;
@@ -2136,8 +2169,11 @@ static int dissect_collapsing_item(tvbuff_t *tvb, int offset, asn_ctx_t *actx, p
static int dissect_nonCollapsing_item(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
return dissect_h245_GenericParameter(tvb, offset, actx, tree, hf_h245_nonCollapsing_item);
}
-static int dissect_genericParameter_item(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
- return dissect_h245_GenericParameter(tvb, offset, actx, tree, hf_h245_genericParameter_item);
+static int dissect_genericParameters_item(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
+ return dissect_h245_GenericParameter(tvb, offset, actx, tree, hf_h245_genericParameters_item);
+}
+static int dissect_genericParameter(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
+ return dissect_h245_GenericParameter(tvb, offset, actx, tree, hf_h245_genericParameter);
}
/* VideoCapability -> ExtendedVideoCapability -> ExtendedVideoCapability/videoCapability -> VideoCapability */
@@ -2210,12 +2246,16 @@ static int dissect_vbd_type(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tr
return dissect_h245_AudioMode(tvb, offset, actx, tree, hf_h245_vbd_type);
}
+/* ModeElementType -> RedundancyEncodingDTMode -> RedundancyEncodingDTModeElement -> RedundancyEncodingDTModeElement/type -> FECMode -> ModeElementType */
/* ModeElementType -> MultiplePayloadStreamMode -> MultiplePayloadStreamMode/elements -> MultiplePayloadStreamElementMode -> ModeElementType */
static int dissect_h245_ModeElementType(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree, int hf_index);
static int dissect_type(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
return dissect_h245_ModeElementType(tvb, offset, actx, tree, hf_h245_type);
}
+static int dissect_protectedElement(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
+ return dissect_h245_ModeElementType(tvb, offset, actx, tree, hf_h245_protectedElement);
+}
/*--- Fields for imported types ---*/
@@ -2282,7 +2322,7 @@ static const per_sequence_t H221NonStandardID_sequence[] = {
static int
dissect_h245_H221NonStandardID(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 697 "h245.cnf"
+#line 700 "h245.cnf"
t35CountryCode = 0;
t35Extension = 0;
manufacturerCode = 0;
@@ -2290,7 +2330,7 @@ dissect_h245_H221NonStandardID(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, p
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_h245_H221NonStandardID, H221NonStandardID_sequence);
-#line 701 "h245.cnf"
+#line 704 "h245.cnf"
h221NonStandard = ((t35CountryCode * 256) + t35Extension) * 65536 + manufacturerCode;
proto_tree_add_uint(tree, hf_h245Manufacturer, tvb, (offset>>3)-4, 4, h221NonStandard);
@@ -2315,7 +2355,7 @@ static const per_choice_t NonStandardIdentifier_choice[] = {
static int
dissect_h245_NonStandardIdentifier(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 678 "h245.cnf"
+#line 681 "h245.cnf"
guint32 value;
nsiOID = "";
@@ -2350,7 +2390,7 @@ static int dissect_vendor(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree
static int
dissect_h245_T_nsd_data(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 712 "h245.cnf"
+#line 715 "h245.cnf"
tvbuff_t *next_tvb = NULL;
offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
@@ -2376,7 +2416,7 @@ static const per_sequence_t NonStandardParameter_sequence[] = {
static int
dissect_h245_NonStandardParameter(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 710 "h245.cnf"
+#line 713 "h245.cnf"
nsp_handle = NULL;
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -2506,7 +2546,7 @@ dissect_h245_MasterSlaveDetermination(tvbuff_t *tvb, int offset, asn_ctx_t *actx
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_h245_MasterSlaveDetermination, MasterSlaveDetermination_sequence);
-#line 461 "h245.cnf"
+#line 464 "h245.cnf"
h245_pi->msg_type = H245_MastSlvDet;
@@ -2549,6 +2589,9 @@ static int dissect_algorithm(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_t
static int dissect_antiSpamAlgorithm(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
return dissect_h245_OBJECT_IDENTIFIER(tvb, offset, actx, tree, hf_h245_antiSpamAlgorithm);
}
+static int dissect_fecScheme(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
+ return dissect_h245_OBJECT_IDENTIFIER(tvb, offset, actx, tree, hf_h245_fecScheme);
+}
static int dissect_oid(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
return dissect_h245_OBJECT_IDENTIFIER(tvb, offset, actx, tree, hf_h245_oid);
}
@@ -3922,6 +3965,9 @@ static int dissect_h261aVideoPacketizationFlag(tvbuff_t *tvb, int offset, asn_ct
static int dissect_redundancyEncodingFlag(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
return dissect_h245_NULL(tvb, offset, actx, tree, hf_h245_redundancyEncodingFlag);
}
+static int dissect_rfc2198coding(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
+ return dissect_h245_NULL(tvb, offset, actx, tree, hf_h245_rfc2198coding);
+}
static int dissect_strict(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
return dissect_h245_NULL(tvb, offset, actx, tree, hf_h245_strict);
}
@@ -3967,6 +4013,9 @@ static int dissect_invalidDependentChannel(tvbuff_t *tvb, int offset, asn_ctx_t
static int dissect_replacementForRejected(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
return dissect_h245_NULL(tvb, offset, actx, tree, hf_h245_replacementForRejected);
}
+static int dissect_securityDenied(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
+ return dissect_h245_NULL(tvb, offset, actx, tree, hf_h245_securityDenied);
+}
static int dissect_user(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
return dissect_h245_NULL(tvb, offset, actx, tree, hf_h245_user);
}
@@ -5289,7 +5338,7 @@ static int
dissect_h245_T_standardOid(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
offset = dissect_per_object_identifier_str(tvb, offset, actx, tree, hf_index, &standard_oid_str);
-#line 500 "h245.cnf"
+#line 503 "h245.cnf"
if(!h245_lc_dissector && strcmp(standard_oid_str,"0.0.8.245.1.1.1") == 0)
h245_lc_dissector = amr_handle;
@@ -5484,8 +5533,8 @@ static int dissect_collapsing(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_
static int dissect_nonCollapsing(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
return dissect_h245_SEQUENCE_OF_GenericParameter(tvb, offset, actx, tree, hf_h245_nonCollapsing);
}
-static int dissect_genericParameter(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
- return dissect_h245_SEQUENCE_OF_GenericParameter(tvb, offset, actx, tree, hf_h245_genericParameter);
+static int dissect_genericParameters(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
+ return dissect_h245_SEQUENCE_OF_GenericParameter(tvb, offset, actx, tree, hf_h245_genericParameters);
}
@@ -5509,7 +5558,7 @@ static const per_choice_t ParameterValue_choice[] = {
{ 4, "unsigned32Min" , ASN1_EXTENSION_ROOT , dissect_unsigned32Min },
{ 5, "unsigned32Max" , ASN1_EXTENSION_ROOT , dissect_unsigned32Max },
{ 6, "octetString" , ASN1_EXTENSION_ROOT , dissect_octetString },
- { 7, "genericParameter" , ASN1_EXTENSION_ROOT , dissect_genericParameter },
+ { 7, "genericParameter" , ASN1_EXTENSION_ROOT , dissect_genericParameters },
{ 0, NULL, 0, NULL }
};
@@ -5593,6 +5642,12 @@ static int dissect_genericAudioCapability(tvbuff_t *tvb, int offset, asn_ctx_t *
static int dissect_genericDataCapability(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
return dissect_h245_GenericCapability(tvb, offset, actx, tree, hf_h245_genericDataCapability);
}
+static int dissect_genericH235SecurityCapability(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
+ return dissect_h245_GenericCapability(tvb, offset, actx, tree, hf_h245_genericH235SecurityCapability);
+}
+static int dissect_genericUserInputCapability(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
+ return dissect_h245_GenericCapability(tvb, offset, actx, tree, hf_h245_genericUserInputCapability);
+}
static int dissect_genericModeParameters(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
return dissect_h245_GenericCapability(tvb, offset, actx, tree, hf_h245_genericModeParameters);
}
@@ -5645,7 +5700,7 @@ static const per_choice_t Application_choice[] = {
static int
dissect_h245_Application(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 394 "h245.cnf"
+#line 397 "h245.cnf"
guint32 value;
offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
@@ -6336,6 +6391,9 @@ static int dissect_primaryEncoding(tvbuff_t *tvb, int offset, asn_ctx_t *actx, p
static int dissect_secondaryEncodingCapability_item(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
return dissect_h245_CapabilityTableEntryNumber(tvb, offset, actx, tree, hf_h245_secondaryEncodingCapability_item);
}
+static int dissect_protectedCapability(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
+ return dissect_h245_CapabilityTableEntryNumber(tvb, offset, actx, tree, hf_h245_protectedCapability);
+}
static int dissect_capabilityTableEntryNumbers_item(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
return dissect_h245_CapabilityTableEntryNumber(tvb, offset, actx, tree, hf_h245_capabilityTableEntryNumbers_item);
}
@@ -6372,6 +6430,9 @@ dissect_h245_RedundancyEncodingCapability(tvbuff_t *tvb, int offset, asn_ctx_t *
return offset;
}
+static int dissect_redundancyEncodingCap(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
+ return dissect_h245_RedundancyEncodingCapability(tvb, offset, actx, tree, hf_h245_redundancyEncodingCap);
+}
static int dissect_redundancyEncodingCapability_item(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
return dissect_h245_RedundancyEncodingCapability(tvb, offset, actx, tree, hf_h245_redundancyEncodingCapability_item);
}
@@ -6538,24 +6599,24 @@ static int dissect_linesPerFrame(tvbuff_t *tvb, int offset, asn_ctx_t *actx, pro
static const per_sequence_t H262VideoCapability_sequence[] = {
- { "profileAndLevel-SPatML" , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_profileAndLevel_SPatML },
- { "profileAndLevel-MPatLL" , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_profileAndLevel_MPatLL },
- { "profileAndLevel-MPatML" , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_profileAndLevel_MPatML },
- { "profileAndLevel-MPatH-14" , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_profileAndLevel_MPatH_14 },
- { "profileAndLevel-MPatHL" , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_profileAndLevel_MPatHL },
- { "profileAndLevel-SNRatLL" , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_profileAndLevel_SNRatLL },
- { "profileAndLevel-SNRatML" , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_profileAndLevel_SNRatML },
- { "profileAndLevel-SpatialatH-14", ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_profileAndLevel_SpatialatH_14 },
- { "profileAndLevel-HPatML" , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_profileAndLevel_HPatML },
- { "profileAndLevel-HPatH-14" , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_profileAndLevel_HPatH_14 },
- { "profileAndLevel-HPatHL" , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_profileAndLevel_HPatHL },
- { "videoBitRate" , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_videoBitRate },
- { "vbvBufferSize" , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_vbvBufferSize },
- { "samplesPerLine" , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_samplesPerLine },
- { "linesPerFrame" , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_linesPerFrame },
- { "framesPerSecond" , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_framesPerSecond },
- { "luminanceSampleRate" , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_luminanceSampleRate },
- { "videoBadMBsCap" , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_videoBadMBsCap },
+ { "profileAndLevel-SPatML" , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_profileAndLevel_SPatML },
+ { "profileAndLevel-MPatLL" , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_profileAndLevel_MPatLL },
+ { "profileAndLevel-MPatML" , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_profileAndLevel_MPatML },
+ { "profileAndLevel-MPatH-14" , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_profileAndLevel_MPatH_14 },
+ { "profileAndLevel-MPatHL" , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_profileAndLevel_MPatHL },
+ { "profileAndLevel-SNRatLL" , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_profileAndLevel_SNRatLL },
+ { "profileAndLevel-SNRatML" , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_profileAndLevel_SNRatML },
+ { "profileAndLevel-SpatialatH-14", ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_profileAndLevel_SpatialatH_14 },
+ { "profileAndLevel-HPatML" , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_profileAndLevel_HPatML },
+ { "profileAndLevel-HPatH-14" , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_profileAndLevel_HPatH_14 },
+ { "profileAndLevel-HPatHL" , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_profileAndLevel_HPatHL },
+ { "videoBitRate" , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_videoBitRate },
+ { "vbvBufferSize" , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_vbvBufferSize },
+ { "samplesPerLine" , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_samplesPerLine },
+ { "linesPerFrame" , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_linesPerFrame },
+ { "framesPerSecond" , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_framesPerSecond },
+ { "luminanceSampleRate" , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_luminanceSampleRate },
+ { "videoBadMBsCap" , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_videoBadMBsCap },
{ NULL, 0, 0, NULL }
};
@@ -7431,7 +7492,7 @@ dissect_h245_H263VideoCapability(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_,
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_h245_H263VideoCapability, H263VideoCapability_sequence);
-#line 261 "h245.cnf"
+#line 264 "h245.cnf"
h245_lc_dissector = h263_handle;
return offset;
@@ -7539,7 +7600,7 @@ static const per_choice_t VideoCapability_choice[] = {
static int
dissect_h245_VideoCapability(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 385 "h245.cnf"
+#line 388 "h245.cnf"
guint32 value;
offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
@@ -7924,7 +7985,7 @@ static const per_choice_t AudioCapability_choice[] = {
static int
dissect_h245_AudioCapability(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 376 "h245.cnf"
+#line 379 "h245.cnf"
guint32 value;
offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
@@ -8074,6 +8135,7 @@ static const per_sequence_t EncryptionAuthenticationAndIntegrity_sequence[] = {
{ "encryptionCapability" , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_encryptionCapability },
{ "authenticationCapability" , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_authenticationCapability },
{ "integrityCapability" , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_integrityCapability },
+ { "genericH235SecurityCapability", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_genericH235SecurityCapability },
{ NULL, 0, 0, NULL }
};
@@ -8136,6 +8198,7 @@ static const value_string h245_UserInputCapability_vals[] = {
{ 8, "encryptedIA5String" },
{ 9, "encryptedGeneralString" },
{ 10, "secureDTMF" },
+ { 11, "genericUserInputCapability" },
{ 0, NULL }
};
@@ -8151,6 +8214,7 @@ static const per_choice_t UserInputCapability_choice[] = {
{ 8, "encryptedIA5String" , ASN1_NOT_EXTENSION_ROOT, dissect_encryptedIA5String },
{ 9, "encryptedGeneralString" , ASN1_NOT_EXTENSION_ROOT, dissect_encryptedGeneralString },
{ 10, "secureDTMF" , ASN1_NOT_EXTENSION_ROOT, dissect_secureDTMF },
+ { 11, "genericUserInputCapability" , ASN1_NOT_EXTENSION_ROOT, dissect_genericUserInputCapability },
{ 0, NULL, 0, NULL }
};
@@ -8215,6 +8279,9 @@ dissect_h245_AlternativeCapabilitySet(tvbuff_t *tvb, int offset, asn_ctx_t *actx
static int dissect_simultaneousCapabilities_item(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
return dissect_h245_AlternativeCapabilitySet(tvb, offset, actx, tree, hf_h245_simultaneousCapabilities_item);
}
+static int dissect_oneOfCapabilities(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
+ return dissect_h245_AlternativeCapabilitySet(tvb, offset, actx, tree, hf_h245_oneOfCapabilities);
+}
static int dissect_capabilityOnMuxStream_item(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
return dissect_h245_AlternativeCapabilitySet(tvb, offset, actx, tree, hf_h245_capabilityOnMuxStream_item);
}
@@ -8355,26 +8422,26 @@ static int dissect_fecc_rfc2733(tvbuff_t *tvb, int offset, asn_ctx_t *actx, prot
}
-static const value_string h245_FECCapability_vals[] = {
+static const value_string h245_DepFECCapability_vals[] = {
{ 0, "rfc2733" },
{ 0, NULL }
};
-static const per_choice_t FECCapability_choice[] = {
+static const per_choice_t DepFECCapability_choice[] = {
{ 0, "rfc2733" , ASN1_EXTENSION_ROOT , dissect_fecc_rfc2733 },
{ 0, NULL, 0, NULL }
};
static int
-dissect_h245_FECCapability(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+dissect_h245_DepFECCapability(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
- ett_h245_FECCapability, FECCapability_choice,
+ ett_h245_DepFECCapability, DepFECCapability_choice,
NULL);
return offset;
}
-static int dissect_fecCapability(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
- return dissect_h245_FECCapability(tvb, offset, actx, tree, hf_h245_fecCapability);
+static int dissect_depFecCapability(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
+ return dissect_h245_DepFECCapability(tvb, offset, actx, tree, hf_h245_depFecCapability);
}
@@ -8395,6 +8462,71 @@ static int dissect_multiplePayloadStreamCapability(tvbuff_t *tvb, int offset, as
}
+
+static int
+dissect_h245_MaxRedundancy(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+ offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
+ 1U, NO_BOUND, NULL, FALSE);
+
+ return offset;
+}
+static int dissect_rfc2733rfc2198(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
+ return dissect_h245_MaxRedundancy(tvb, offset, actx, tree, hf_h245_rfc2733rfc2198);
+}
+static int dissect_rfc2733sameport(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
+ return dissect_h245_MaxRedundancy(tvb, offset, actx, tree, hf_h245_rfc2733sameport);
+}
+static int dissect_rfc2733diffport(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
+ return dissect_h245_MaxRedundancy(tvb, offset, actx, tree, hf_h245_rfc2733diffport);
+}
+
+
+static const value_string h245_Rfc2733Format_vals[] = {
+ { 0, "rfc2733rfc2198" },
+ { 1, "rfc2733sameport" },
+ { 2, "rfc2733diffport" },
+ { 0, NULL }
+};
+
+static const per_choice_t Rfc2733Format_choice[] = {
+ { 0, "rfc2733rfc2198" , ASN1_NO_EXTENSIONS , dissect_rfc2733rfc2198 },
+ { 1, "rfc2733sameport" , ASN1_NO_EXTENSIONS , dissect_rfc2733sameport },
+ { 2, "rfc2733diffport" , ASN1_NO_EXTENSIONS , dissect_rfc2733diffport },
+ { 0, NULL, 0, NULL }
+};
+
+static int
+dissect_h245_Rfc2733Format(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+ offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
+ ett_h245_Rfc2733Format, Rfc2733Format_choice,
+ NULL);
+
+ return offset;
+}
+static int dissect_rfc2733Format(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
+ return dissect_h245_Rfc2733Format(tvb, offset, actx, tree, hf_h245_rfc2733Format);
+}
+
+
+static const per_sequence_t FECCapability_sequence[] = {
+ { "protectedCapability" , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_protectedCapability },
+ { "fecScheme" , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_fecScheme },
+ { "rfc2733Format" , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rfc2733Format },
+ { NULL, 0, 0, NULL }
+};
+
+static int
+dissect_h245_FECCapability(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+ offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
+ ett_h245_FECCapability, FECCapability_sequence);
+
+ return offset;
+}
+static int dissect_fecCapability(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
+ return dissect_h245_FECCapability(tvb, offset, actx, tree, hf_h245_fecCapability);
+}
+
+
static const value_string h245_Capability_vals[] = {
{ 0, "nonStandard" },
{ 1, "receiveVideoCapability" },
@@ -8420,8 +8552,11 @@ static const value_string h245_Capability_vals[] = {
{ 21, "receiveAndTransmitMultiplexedStreamCapability" },
{ 22, "receiveRTPAudioTelephonyEventCapability" },
{ 23, "receiveRTPAudioToneCapability" },
- { 24, "fecCapability" },
+ { 24, "depFecCapability" },
{ 25, "multiplePayloadStreamCapability" },
+ { 26, "fecCapability" },
+ { 27, "redundancyEncodingCap" },
+ { 28, "oneOfCapabilities" },
{ 0, NULL }
};
@@ -8450,8 +8585,11 @@ static const per_choice_t Capability_choice[] = {
{ 21, "receiveAndTransmitMultiplexedStreamCapability", ASN1_NOT_EXTENSION_ROOT, dissect_receiveAndTransmitMultiplexedStreamCapability },
{ 22, "receiveRTPAudioTelephonyEventCapability", ASN1_NOT_EXTENSION_ROOT, dissect_receiveRTPAudioTelephonyEventCapability },
{ 23, "receiveRTPAudioToneCapability", ASN1_NOT_EXTENSION_ROOT, dissect_receiveRTPAudioToneCapability },
- { 24, "fecCapability" , ASN1_NOT_EXTENSION_ROOT, dissect_fecCapability },
+ { 24, "depFecCapability" , ASN1_NOT_EXTENSION_ROOT, dissect_depFecCapability },
{ 25, "multiplePayloadStreamCapability", ASN1_NOT_EXTENSION_ROOT, dissect_multiplePayloadStreamCapability },
+ { 26, "fecCapability" , ASN1_NOT_EXTENSION_ROOT, dissect_fecCapability },
+ { 27, "redundancyEncodingCap" , ASN1_NOT_EXTENSION_ROOT, dissect_redundancyEncodingCap },
+ { 28, "oneOfCapabilities" , ASN1_NOT_EXTENSION_ROOT, dissect_oneOfCapabilities },
{ 0, NULL, 0, NULL }
};
@@ -8554,12 +8692,86 @@ static int dissect_capabilityDescriptors(tvbuff_t *tvb, int offset, asn_ctx_t *a
}
+
+static int
+dissect_h245_T_subMessageIdentifier(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+#line 508 "h245.cnf"
+ guint32 subMessageIdentifer;
+
+
+ offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
+ 0U, 127U, &subMessageIdentifer, FALSE);
+
+ return offset;
+}
+static int dissect_subMessageIdentifier(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
+ return dissect_h245_T_subMessageIdentifier(tvb, offset, actx, tree, hf_h245_subMessageIdentifier);
+}
+
+
+static const per_sequence_t GenericMessage_sequence[] = {
+ { "messageIdentifier" , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_messageIdentifier },
+ { "subMessageIdentifier" , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_subMessageIdentifier },
+ { "messageContent" , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_messageContent },
+ { NULL, 0, 0, NULL }
+};
+
+static int
+dissect_h245_GenericMessage(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+ offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
+ ett_h245_GenericMessage, GenericMessage_sequence);
+
+ return offset;
+}
+static int dissect_genericRequest(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
+ return dissect_h245_GenericMessage(tvb, offset, actx, tree, hf_h245_genericRequest);
+}
+static int dissect_genericResponse(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
+ return dissect_h245_GenericMessage(tvb, offset, actx, tree, hf_h245_genericResponse);
+}
+static int dissect_genericCommand(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
+ return dissect_h245_GenericMessage(tvb, offset, actx, tree, hf_h245_genericCommand);
+}
+static int dissect_genericIndication(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
+ return dissect_h245_GenericMessage(tvb, offset, actx, tree, hf_h245_genericIndication);
+}
+
+
+
+static int
+dissect_h245_GenericInformation(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+ offset = dissect_h245_GenericMessage(tvb, offset, actx, tree, hf_index);
+
+ return offset;
+}
+static int dissect_genericInformation_item(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
+ return dissect_h245_GenericInformation(tvb, offset, actx, tree, hf_h245_genericInformation_item);
+}
+
+
+static const per_sequence_t SEQUENCE_OF_GenericInformation_sequence_of[1] = {
+ { "" , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_genericInformation_item },
+};
+
+static int
+dissect_h245_SEQUENCE_OF_GenericInformation(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+ offset = dissect_per_sequence_of(tvb, offset, actx, tree, hf_index,
+ ett_h245_SEQUENCE_OF_GenericInformation, SEQUENCE_OF_GenericInformation_sequence_of);
+
+ return offset;
+}
+static int dissect_genericInformation(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
+ return dissect_h245_SEQUENCE_OF_GenericInformation(tvb, offset, actx, tree, hf_h245_genericInformation);
+}
+
+
static const per_sequence_t TerminalCapabilitySet_sequence[] = {
{ "sequenceNumber" , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_sequenceNumber },
{ "protocolIdentifier" , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_protocolIdentifier },
{ "multiplexCapability" , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_multiplexCapability },
{ "capabilityTable" , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_capabilityTable },
{ "capabilityDescriptors" , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_capabilityDescriptors },
+ { "genericInformation" , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_genericInformation },
{ NULL, 0, 0, NULL }
};
@@ -8568,7 +8780,7 @@ dissect_h245_TerminalCapabilitySet(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_h245_TerminalCapabilitySet, TerminalCapabilitySet_sequence);
-#line 476 "h245.cnf"
+#line 479 "h245.cnf"
h245_pi->msg_type = H245_TermCapSet;
@@ -8582,7 +8794,7 @@ static int dissect_terminalCapabilitySet(tvbuff_t *tvb, int offset, asn_ctx_t *a
static int
dissect_h245_LogicalChannelNumber(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 116 "h245.cnf"
+#line 119 "h245.cnf"
guint32 value;
offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
1U, 65535U, &value, FALSE);
@@ -8601,6 +8813,9 @@ static int dissect_replacementFor(tvbuff_t *tvb, int offset, asn_ctx_t *actx, pr
static int dissect_reverseLogicalChannelDependency(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
return dissect_h245_LogicalChannelNumber(tvb, offset, actx, tree, hf_h245_reverseLogicalChannelDependency);
}
+static int dissect_protectedChannel(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
+ return dissect_h245_LogicalChannelNumber(tvb, offset, actx, tree, hf_h245_protectedChannel);
+}
static int dissect_forwardLogicalChannelNumber(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
return dissect_h245_LogicalChannelNumber(tvb, offset, actx, tree, hf_h245_forwardLogicalChannelNumber);
}
@@ -8632,7 +8847,7 @@ static int
dissect_h245_OLC_fw_lcn(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
offset = dissect_h245_LogicalChannelNumber(tvb, offset, actx, tree, hf_index);
-#line 122 "h245.cnf"
+#line 125 "h245.cnf"
h223_fw_lc_num = h245_lc_temp;
return offset;
@@ -8830,28 +9045,28 @@ static int dissect_samePort(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tr
}
-static const value_string h245_SeparateStream_vals[] = {
+static const value_string h245_DepSeparateStream_vals[] = {
{ 0, "differentPort" },
{ 1, "samePort" },
{ 0, NULL }
};
-static const per_choice_t SeparateStream_choice[] = {
+static const per_choice_t DepSeparateStream_choice[] = {
{ 0, "differentPort" , ASN1_EXTENSION_ROOT , dissect_differentPort },
{ 1, "samePort" , ASN1_EXTENSION_ROOT , dissect_samePort },
{ 0, NULL, 0, NULL }
};
static int
-dissect_h245_SeparateStream(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+dissect_h245_DepSeparateStream(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
- ett_h245_SeparateStream, SeparateStream_choice,
+ ett_h245_DepSeparateStream, DepSeparateStream_choice,
NULL);
return offset;
}
static int dissect_separateStream(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
- return dissect_h245_SeparateStream(tvb, offset, actx, tree, hf_h245_separateStream);
+ return dissect_h245_DepSeparateStream(tvb, offset, actx, tree, hf_h245_separateStream);
}
@@ -8892,8 +9107,110 @@ dissect_h245_RFC2733Data(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_t
return offset;
}
+static int dissect_dep_rfc2733(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
+ return dissect_h245_RFC2733Data(tvb, offset, actx, tree, hf_h245_dep_rfc2733);
+}
+
+
+static const value_string h245_DepFECData_vals[] = {
+ { 0, "rfc2733" },
+ { 0, NULL }
+};
+
+static const per_choice_t DepFECData_choice[] = {
+ { 0, "rfc2733" , ASN1_NO_EXTENSIONS , dissect_dep_rfc2733 },
+ { 0, NULL, 0, NULL }
+};
+
+static int
+dissect_h245_DepFECData(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+ offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
+ ett_h245_DepFECData, DepFECData_choice,
+ NULL);
+
+ return offset;
+}
+static int dissect_depFec(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
+ return dissect_h245_DepFECData(tvb, offset, actx, tree, hf_h245_depFec);
+}
+
+
+static const per_sequence_t T_mode_rfc2733sameport_sequence[] = {
+ { NULL, 0, 0, NULL }
+};
+
+static int
+dissect_h245_T_mode_rfc2733sameport(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+ offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
+ ett_h245_T_mode_rfc2733sameport, T_mode_rfc2733sameport_sequence);
+
+ return offset;
+}
+static int dissect_mode_rfc2733sameport(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
+ return dissect_h245_T_mode_rfc2733sameport(tvb, offset, actx, tree, hf_h245_mode_rfc2733sameport);
+}
+
+
+static const per_sequence_t T_mode_rfc2733diffport_sequence[] = {
+ { "protectedChannel" , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_protectedChannel },
+ { NULL, 0, 0, NULL }
+};
+
+static int
+dissect_h245_T_mode_rfc2733diffport(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+ offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
+ ett_h245_T_mode_rfc2733diffport, T_mode_rfc2733diffport_sequence);
+
+ return offset;
+}
+static int dissect_mode_rfc2733diffport(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
+ return dissect_h245_T_mode_rfc2733diffport(tvb, offset, actx, tree, hf_h245_mode_rfc2733diffport);
+}
+
+
+static const value_string h245_T_pktMode_vals[] = {
+ { 0, "rfc2198coding" },
+ { 1, "rfc2733sameport" },
+ { 2, "rfc2733diffport" },
+ { 0, NULL }
+};
+
+static const per_choice_t T_pktMode_choice[] = {
+ { 0, "rfc2198coding" , ASN1_EXTENSION_ROOT , dissect_rfc2198coding },
+ { 1, "rfc2733sameport" , ASN1_EXTENSION_ROOT , dissect_mode_rfc2733sameport },
+ { 2, "rfc2733diffport" , ASN1_EXTENSION_ROOT , dissect_mode_rfc2733diffport },
+ { 0, NULL, 0, NULL }
+};
+
+static int
+dissect_h245_T_pktMode(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+ offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
+ ett_h245_T_pktMode, T_pktMode_choice,
+ NULL);
+
+ return offset;
+}
+static int dissect_pktMode(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
+ return dissect_h245_T_pktMode(tvb, offset, actx, tree, hf_h245_pktMode);
+}
+
+
+static const per_sequence_t T_rfc2733_sequence[] = {
+ { "protectedPayloadType" , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_protectedPayloadType },
+ { "fecScheme" , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_fecScheme },
+ { "pktMode" , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_pktMode },
+ { NULL, 0, 0, NULL }
+};
+
+static int
+dissect_h245_T_rfc2733(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+ offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
+ ett_h245_T_rfc2733, T_rfc2733_sequence);
+
+ return offset;
+}
static int dissect_rfc2733(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
- return dissect_h245_RFC2733Data(tvb, offset, actx, tree, hf_h245_rfc2733);
+ return dissect_h245_T_rfc2733(tvb, offset, actx, tree, hf_h245_rfc2733);
}
@@ -8903,7 +9220,7 @@ static const value_string h245_FECData_vals[] = {
};
static const per_choice_t FECData_choice[] = {
- { 0, "rfc2733" , ASN1_NO_EXTENSIONS , dissect_rfc2733 },
+ { 0, "rfc2733" , ASN1_EXTENSION_ROOT , dissect_rfc2733 },
{ 0, NULL, 0, NULL }
};
@@ -8927,7 +9244,8 @@ static const value_string h245_T_mediaType_vals[] = {
{ 3, "data" },
{ 4, "redundancyEncoding" },
{ 5, "multiplePayloadStream" },
- { 6, "fec" },
+ { 6, "depFec" },
+ { 7, "fec" },
{ 0, NULL }
};
@@ -8938,7 +9256,8 @@ static const per_choice_t T_mediaType_choice[] = {
{ 3, "data" , ASN1_EXTENSION_ROOT , dissect_data },
{ 4, "redundancyEncoding" , ASN1_NOT_EXTENSION_ROOT, dissect_redundancyEncoding },
{ 5, "multiplePayloadStream" , ASN1_NOT_EXTENSION_ROOT, dissect_multiplePayloadStream },
- { 6, "fec" , ASN1_NOT_EXTENSION_ROOT, dissect_fec },
+ { 6, "depFec" , ASN1_NOT_EXTENSION_ROOT, dissect_depFec },
+ { 7, "fec" , ASN1_NOT_EXTENSION_ROOT, dissect_fec },
{ 0, NULL, 0, NULL }
};
@@ -9006,7 +9325,8 @@ static const value_string h245_DataType_vals[] = {
{ 8, "multiplexedStream" },
{ 9, "redundancyEncoding" },
{ 10, "multiplePayloadStream" },
- { 11, "fec" },
+ { 11, "depFec" },
+ { 12, "fec" },
{ 0, NULL }
};
@@ -9022,7 +9342,8 @@ static const per_choice_t DataType_choice[] = {
{ 8, "multiplexedStream" , ASN1_NOT_EXTENSION_ROOT, dissect_multiplexedStream },
{ 9, "redundancyEncoding" , ASN1_NOT_EXTENSION_ROOT, dissect_redundancyEncoding },
{ 10, "multiplePayloadStream" , ASN1_NOT_EXTENSION_ROOT, dissect_multiplePayloadStream },
- { 11, "fec" , ASN1_NOT_EXTENSION_ROOT, dissect_fec },
+ { 11, "depFec" , ASN1_NOT_EXTENSION_ROOT, dissect_depFec },
+ { 12, "fec" , ASN1_NOT_EXTENSION_ROOT, dissect_fec },
{ 0, NULL, 0, NULL }
};
@@ -9076,7 +9397,7 @@ static int dissect_h222LogicalChannelParameters(tvbuff_t *tvb, int offset, asn_c
static int
dissect_h245_T_h223_al_type_al1Framed(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 153 "h245.cnf"
+#line 156 "h245.cnf"
if(h223_lc_params_temp)
h223_lc_params_temp->al_type = al1Framed;
@@ -9092,7 +9413,7 @@ static int dissect_h223_al_type_al1Framed(tvbuff_t *tvb, int offset, asn_ctx_t *
static int
dissect_h245_T_h223_al_type_al1NotFramed(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 158 "h245.cnf"
+#line 161 "h245.cnf"
if(h223_lc_params_temp)
h223_lc_params_temp->al_type = al1NotFramed;
@@ -9108,7 +9429,7 @@ static int dissect_h223_al_type_al1NotFramed(tvbuff_t *tvb, int offset, asn_ctx_
static int
dissect_h245_T_h223_al_type_al2WithoutSequenceNumbers(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 163 "h245.cnf"
+#line 166 "h245.cnf"
if(h223_lc_params_temp)
h223_lc_params_temp->al_type = al2WithoutSequenceNumbers;
@@ -9124,7 +9445,7 @@ static int dissect_h223_al_type_al2WithoutSequenceNumbers(tvbuff_t *tvb, int off
static int
dissect_h245_T_h223_al_type_al2WithSequenceNumbers(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 168 "h245.cnf"
+#line 171 "h245.cnf"
if(h223_lc_params_temp)
h223_lc_params_temp->al_type = al2WithSequenceNumbers;
@@ -9140,7 +9461,7 @@ static int dissect_h223_al_type_al2WithSequenceNumbers(tvbuff_t *tvb, int offset
static int
dissect_h245_T_controlFieldOctets(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 182 "h245.cnf"
+#line 185 "h245.cnf"
guint32 value;
offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
0U, 2U, &value, FALSE);
@@ -9159,7 +9480,7 @@ static int dissect_controlFieldOctets(tvbuff_t *tvb, int offset, asn_ctx_t *actx
static int
dissect_h245_T_al3_sendBufferSize(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 191 "h245.cnf"
+#line 194 "h245.cnf"
guint32 value;
offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
0U, 16777215U, &value, FALSE);
@@ -9196,7 +9517,7 @@ static int dissect_al3(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *t
static int
dissect_h245_T_h223_al_type_al3(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 173 "h245.cnf"
+#line 176 "h245.cnf"
if(h223_lc_params_temp) {
h223_lc_params_temp->al_type = al3;
h223_lc_params_temp->al_params = se_alloc(sizeof(h223_al3_params));
@@ -9424,7 +9745,7 @@ static int dissect_al1M(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *
static int
dissect_h245_T_h223_al_type_al1M(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 198 "h245.cnf"
+#line 201 "h245.cnf"
if(h223_lc_params_temp)
h223_lc_params_temp->al_type = al1M;
@@ -9483,7 +9804,7 @@ static int dissect_al2M(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *
static int
dissect_h245_T_h223_al_type_al2M(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 203 "h245.cnf"
+#line 206 "h245.cnf"
if(h223_lc_params_temp)
h223_lc_params_temp->al_type = al2M;
@@ -9583,7 +9904,7 @@ static int dissect_al3M(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *
static int
dissect_h245_T_h223_al_type_al3M(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 208 "h245.cnf"
+#line 211 "h245.cnf"
if(h223_lc_params_temp)
h223_lc_params_temp->al_type = al3M;
@@ -9638,7 +9959,7 @@ static int dissect_adaptationLayerType(tvbuff_t *tvb, int offset, asn_ctx_t *act
static int
dissect_h245_T_h223_lc_segmentableFlag(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 215 "h245.cnf"
+#line 218 "h245.cnf"
guint32 value;
offset = dissect_per_boolean(tvb, offset, actx, tree, hf_index, &value);
@@ -9671,7 +9992,7 @@ dissect_h245_H223LogicalChannelParameters(tvbuff_t *tvb, int offset, asn_ctx_t *
static int
dissect_h245_OLC_fw_h223_params(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 135 "h245.cnf"
+#line 138 "h245.cnf"
h223_fw_lc_params = se_alloc(sizeof(h223_lc_params));
h223_fw_lc_params->al_type = al_nonStandard;
h223_fw_lc_params->al_params = NULL;
@@ -9872,7 +10193,7 @@ static int dissect_v76LogicalChannelParameters(tvbuff_t *tvb, int offset, asn_ct
static int
dissect_h245_Ipv4_network(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 512 "h245.cnf"
+#line 515 "h245.cnf"
tvbuff_t *value_tvb;
@@ -9897,7 +10218,7 @@ static int dissect_ip4_network(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto
static int
dissect_h245_TsapIdentifier(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 525 "h245.cnf"
+#line 528 "h245.cnf"
guint32 tsapIdentifier;
offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
@@ -10216,14 +10537,14 @@ static int dissect_signalAddress(tvbuff_t *tvb, int offset, asn_ctx_t *actx, pro
static int
dissect_h245_T_mediaChannel(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 543 "h245.cnf"
+#line 546 "h245.cnf"
media_channel = TRUE;
offset = dissect_h245_TransportAddress(tvb, offset, actx, tree, hf_index);
-#line 573 "h245.cnf"
+#line 576 "h245.cnf"
media_channel = FALSE;
@@ -10238,14 +10559,14 @@ static int dissect_mediaChannel(tvbuff_t *tvb, int offset, asn_ctx_t *actx, prot
static int
dissect_h245_T_mediaControlChannel(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 555 "h245.cnf"
+#line 558 "h245.cnf"
media_control_channel = TRUE;
offset = dissect_h245_TransportAddress(tvb, offset, actx, tree, hf_index);
-#line 579 "h245.cnf"
+#line 582 "h245.cnf"
media_control_channel = FALSE;
@@ -10434,7 +10755,7 @@ static const per_sequence_t T_forwardLogicalChannelParameters_sequence[] = {
static int
dissect_h245_T_forwardLogicalChannelParameters(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 126 "h245.cnf"
+#line 129 "h245.cnf"
h245_lc_dissector = NULL;
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_h245_T_forwardLogicalChannelParameters, T_forwardLogicalChannelParameters_sequence);
@@ -10455,7 +10776,7 @@ static int dissect_forwardLogicalChannelParameters(tvbuff_t *tvb, int offset, as
static int
dissect_h245_OLC_rev_h223_params(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 144 "h245.cnf"
+#line 147 "h245.cnf"
h223_rev_lc_params = se_alloc(sizeof(h223_lc_params));
h223_rev_lc_params->al_type = al_nonStandard;
h223_rev_lc_params->al_params = NULL;
@@ -10488,7 +10809,7 @@ static const per_choice_t OLC_rev_multiplexParameters_choice[] = {
static int
dissect_h245_OLC_rev_multiplexParameters(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 629 "h245.cnf"
+#line 632 "h245.cnf"
media_channel = FALSE;
@@ -10499,7 +10820,7 @@ dissect_h245_OLC_rev_multiplexParameters(tvbuff_t *tvb, int offset, asn_ctx_t *a
ett_h245_OLC_rev_multiplexParameters, OLC_rev_multiplexParameters_choice,
NULL);
-#line 637 "h245.cnf"
+#line 640 "h245.cnf"
if (!actx->pinfo->fd->flags.visited) {
if (codec_type && (strcmp(codec_type, "t38fax")==0)) {
@@ -10760,6 +11081,7 @@ static const per_sequence_t EncryptionSync_sequence[] = {
{ "synchFlag" , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_synchFlag },
{ "h235Key" , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_h235Key },
{ "escrowentry" , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_escrowentry },
+ { "genericParameter" , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_genericParameter },
{ NULL, 0, 0, NULL }
};
@@ -10784,12 +11106,13 @@ static const per_sequence_t OpenLogicalChannel_sequence[] = {
{ "reverseLogicalChannelParameters", ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_reverseLogicalChannelParameters },
{ "separateStack" , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_separateStack },
{ "encryptionSync" , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_encryptionSync },
+ { "genericInformation" , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_genericInformation },
{ NULL, 0, 0, NULL }
};
int
dissect_h245_OpenLogicalChannel(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 97 "h245.cnf"
+#line 100 "h245.cnf"
gint32 temp;
h223_fw_lc_num = 0;
@@ -10808,7 +11131,7 @@ dissect_h245_OpenLogicalChannel(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_,
}
-#line 487 "h245.cnf"
+#line 490 "h245.cnf"
if (h245_pi != NULL) h245_pi->msg_type = H245_OpenLogChn;
@@ -10883,7 +11206,7 @@ dissect_h245_CloseLogicalChannel(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_,
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_h245_CloseLogicalChannel, CloseLogicalChannel_sequence);
-#line 441 "h245.cnf"
+#line 444 "h245.cnf"
h245_pi->msg_type = H245_CloseLogChn;
@@ -10945,7 +11268,7 @@ static int dissect_requestChannelClose(tvbuff_t *tvb, int offset, asn_ctx_t *act
static int
dissect_h245_MultiplexTableEntryNumber(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 41 "h245.cnf"
+#line 44 "h245.cnf"
guint32 value;
offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
1U, 15U, &value, FALSE);
@@ -10969,7 +11292,7 @@ static int dissect_entryNumbers_item(tvbuff_t *tvb, int offset, asn_ctx_t *actx,
static int
dissect_h245_T_logicalChannelNum(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 67 "h245.cnf"
+#line 70 "h245.cnf"
/*MultiplexElement/type/logicalChannelNumber*/
guint32 value;
offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
@@ -10992,7 +11315,7 @@ static const per_sequence_t T_subElementList_sequence_of[1] = {
static int
dissect_h245_T_subElementList(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 75 "h245.cnf"
+#line 78 "h245.cnf"
h223_mux_element dummy_me, *parent_me = h223_me;
h223_me = &dummy_me;
offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
@@ -11039,7 +11362,7 @@ static int dissect_me_type(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tre
static int
dissect_h245_ME_finiteRepeatCount(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 90 "h245.cnf"
+#line 93 "h245.cnf"
guint32 value;
offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
1U, 65535U, &value, FALSE);
@@ -11059,7 +11382,7 @@ static int
dissect_h245_T_untilClosingFlag(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
offset = dissect_per_null(tvb, offset, actx, tree, hf_index);
-#line 84 "h245.cnf"
+#line 87 "h245.cnf"
h223_me->repeat_count = 0;
return offset;
@@ -11102,7 +11425,7 @@ static const per_sequence_t MultiplexElement_sequence[] = {
static int
dissect_h245_MultiplexElement(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 57 "h245.cnf"
+#line 60 "h245.cnf"
/*MultiplexElement*/
h223_mux_element* me = se_alloc(sizeof(h223_mux_element));
h223_me->next = me;
@@ -11122,7 +11445,7 @@ static const per_sequence_t T_elementList_sequence_of[1] = {
static int
dissect_h245_T_elementList(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 47 "h245.cnf"
+#line 50 "h245.cnf"
/* create a h223_mux_element to hold onto the head of the list, since
* h223_me will track the tail */
h223_mux_element dummy_me;
@@ -11150,7 +11473,7 @@ static const per_sequence_t MultiplexEntryDescriptor_sequence[] = {
static int
dissect_h245_MultiplexEntryDescriptor(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 29 "h245.cnf"
+#line 32 "h245.cnf"
/*MultiplexEntryDescriptor*/
h223_me = NULL;
h223_mc = 0;
@@ -11454,7 +11777,7 @@ static const per_choice_t VideoMode_choice[] = {
static int
dissect_h245_VideoMode(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 410 "h245.cnf"
+#line 413 "h245.cnf"
guint32 value;
offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
@@ -11817,7 +12140,7 @@ static const per_choice_t AudioMode_choice[] = {
static int
dissect_h245_AudioMode(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 402 "h245.cnf"
+#line 405 "h245.cnf"
guint32 value;
offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
@@ -11888,7 +12211,7 @@ static const per_choice_t DataModeApplication_choice[] = {
static int
dissect_h245_DataModeApplication(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 418 "h245.cnf"
+#line 421 "h245.cnf"
guint32 value;
offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
@@ -11971,6 +12294,25 @@ static int dissect_h235Mode(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tr
}
+static const per_sequence_t FECMode_sequence[] = {
+ { "protectedElement" , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_protectedElement },
+ { "fecScheme" , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_fecScheme },
+ { "rfc2733Format" , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_rfc2733Format },
+ { NULL, 0, 0, NULL }
+};
+
+static int
+dissect_h245_FECMode(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+ offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
+ ett_h245_FECMode, FECMode_sequence);
+
+ return offset;
+}
+static int dissect_fecMode(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
+ return dissect_h245_FECMode(tvb, offset, actx, tree, hf_h245_fecMode);
+}
+
+
static const value_string h245_Re_type_vals[] = {
{ 0, "nonStandard" },
{ 1, "videoMode" },
@@ -11978,6 +12320,7 @@ static const value_string h245_Re_type_vals[] = {
{ 3, "dataMode" },
{ 4, "encryptionMode" },
{ 5, "h235Mode" },
+ { 6, "fecMode" },
{ 0, NULL }
};
@@ -11988,6 +12331,7 @@ static const per_choice_t Re_type_choice[] = {
{ 3, "dataMode" , ASN1_EXTENSION_ROOT , dissect_dataMode },
{ 4, "encryptionMode" , ASN1_EXTENSION_ROOT , dissect_encryptionMode },
{ 5, "h235Mode" , ASN1_EXTENSION_ROOT , dissect_h235Mode },
+ { 6, "fecMode" , ASN1_NOT_EXTENSION_ROOT, dissect_fecMode },
{ 0, NULL, 0, NULL }
};
@@ -12151,26 +12495,26 @@ static int dissect_rfc2733Mode(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto
}
-static const value_string h245_FECMode_vals[] = {
+static const value_string h245_DepFECMode_vals[] = {
{ 0, "rfc2733Mode" },
{ 0, NULL }
};
-static const per_choice_t FECMode_choice[] = {
+static const per_choice_t DepFECMode_choice[] = {
{ 0, "rfc2733Mode" , ASN1_EXTENSION_ROOT , dissect_rfc2733Mode },
{ 0, NULL, 0, NULL }
};
static int
-dissect_h245_FECMode(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
+dissect_h245_DepFECMode(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
- ett_h245_FECMode, FECMode_choice,
+ ett_h245_DepFECMode, DepFECMode_choice,
NULL);
return offset;
}
-static int dissect_fecMode(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
- return dissect_h245_FECMode(tvb, offset, actx, tree, hf_h245_fecMode);
+static int dissect_depFecMode(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
+ return dissect_h245_DepFECMode(tvb, offset, actx, tree, hf_h245_depFecMode);
}
@@ -12184,7 +12528,8 @@ static const value_string h245_ModeElementType_vals[] = {
{ 6, "multiplexedStreamMode" },
{ 7, "redundancyEncodingDTMode" },
{ 8, "multiplePayloadStreamMode" },
- { 9, "fecMode" },
+ { 9, "depFecMode" },
+ { 10, "fecMode" },
{ 0, NULL }
};
@@ -12198,7 +12543,8 @@ static const per_choice_t ModeElementType_choice[] = {
{ 6, "multiplexedStreamMode" , ASN1_NOT_EXTENSION_ROOT, dissect_multiplexedStreamMode },
{ 7, "redundancyEncodingDTMode" , ASN1_NOT_EXTENSION_ROOT, dissect_redundancyEncodingDTMode },
{ 8, "multiplePayloadStreamMode" , ASN1_NOT_EXTENSION_ROOT, dissect_multiplePayloadStreamMode },
- { 9, "fecMode" , ASN1_NOT_EXTENSION_ROOT, dissect_fecMode },
+ { 9, "depFecMode" , ASN1_NOT_EXTENSION_ROOT, dissect_depFecMode },
+ { 10, "fecMode" , ASN1_NOT_EXTENSION_ROOT, dissect_fecMode },
{ 0, NULL, 0, NULL }
};
@@ -12970,51 +13316,6 @@ static int dissect_logicalChannelRateRequest(tvbuff_t *tvb, int offset, asn_ctx_
}
-
-static int
-dissect_h245_T_subMessageIdentifer(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 505 "h245.cnf"
- guint32 subMessageIdentifer;
-
-
- offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
- 0U, 127U, &subMessageIdentifer, FALSE);
-
- return offset;
-}
-static int dissect_subMessageIdentifer(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
- return dissect_h245_T_subMessageIdentifer(tvb, offset, actx, tree, hf_h245_subMessageIdentifer);
-}
-
-
-static const per_sequence_t GenericMessage_sequence[] = {
- { "messageIdentifier" , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_messageIdentifier },
- { "subMessageIdentifer" , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_subMessageIdentifer },
- { "messageContent" , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_messageContent },
- { NULL, 0, 0, NULL }
-};
-
-static int
-dissect_h245_GenericMessage(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
- offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
- ett_h245_GenericMessage, GenericMessage_sequence);
-
- return offset;
-}
-static int dissect_genericRequest(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
- return dissect_h245_GenericMessage(tvb, offset, actx, tree, hf_h245_genericRequest);
-}
-static int dissect_genericResponse(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
- return dissect_h245_GenericMessage(tvb, offset, actx, tree, hf_h245_genericResponse);
-}
-static int dissect_genericCommand(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
- return dissect_h245_GenericMessage(tvb, offset, actx, tree, hf_h245_genericCommand);
-}
-static int dissect_genericIndication(tvbuff_t *tvb, int offset, asn_ctx_t *actx, proto_tree *tree) {
- return dissect_h245_GenericMessage(tvb, offset, actx, tree, hf_h245_genericIndication);
-}
-
-
static const value_string h245_RequestMessage_vals[] = {
{ 0, "nonStandard" },
{ 1, "masterSlaveDetermination" },
@@ -13057,7 +13358,7 @@ static const per_choice_t RequestMessage_choice[] = {
static int
dissect_h245_RequestMessage(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 265 "h245.cnf"
+#line 268 "h245.cnf"
guint32 value;
offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
@@ -13140,7 +13441,7 @@ dissect_h245_MasterSlaveDeterminationAck(tvbuff_t *tvb, int offset, asn_ctx_t *a
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_h245_MasterSlaveDeterminationAck, MasterSlaveDeterminationAck_sequence);
-#line 426 "h245.cnf"
+#line 429 "h245.cnf"
h245_pi->msg_type = H245_MastSlvDetAck;
@@ -13184,7 +13485,7 @@ dissect_h245_MasterSlaveDeterminationReject(tvbuff_t *tvb, int offset, asn_ctx_t
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_h245_MasterSlaveDeterminationReject, MasterSlaveDeterminationReject_sequence);
-#line 431 "h245.cnf"
+#line 434 "h245.cnf"
h245_pi->msg_type = H245_MastSlvDetRjc;
@@ -13197,6 +13498,7 @@ static int dissect_masterSlaveDeterminationReject(tvbuff_t *tvb, int offset, asn
static const per_sequence_t TerminalCapabilitySetAck_sequence[] = {
{ "sequenceNumber" , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_sequenceNumber },
+ { "genericInformation" , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_genericInformation },
{ NULL, 0, 0, NULL }
};
@@ -13205,7 +13507,7 @@ dissect_h245_TerminalCapabilitySetAck(tvbuff_t *tvb, int offset, asn_ctx_t *actx
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_h245_TerminalCapabilitySetAck, TerminalCapabilitySetAck_sequence);
-#line 456 "h245.cnf"
+#line 459 "h245.cnf"
h245_pi->msg_type = H245_TermCapSetAck;
@@ -13273,6 +13575,7 @@ static int dissect_tcs_rej_cause(tvbuff_t *tvb, int offset, asn_ctx_t *actx, pro
static const per_sequence_t TerminalCapabilitySetReject_sequence[] = {
{ "sequenceNumber" , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_sequenceNumber },
{ "cause" , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_tcs_rej_cause },
+ { "genericInformation" , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_genericInformation },
{ NULL, 0, 0, NULL }
};
@@ -13281,7 +13584,7 @@ dissect_h245_TerminalCapabilitySetReject(tvbuff_t *tvb, int offset, asn_ctx_t *a
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_h245_TerminalCapabilitySetReject, TerminalCapabilitySetReject_sequence);
-#line 466 "h245.cnf"
+#line 469 "h245.cnf"
h245_pi->msg_type = H245_TermCapSetRjc;
@@ -13297,7 +13600,7 @@ static int
dissect_h245_OLC_ack_fw_lcn(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
offset = dissect_h245_LogicalChannelNumber(tvb, offset, actx, tree, hf_index);
-#line 253 "h245.cnf"
+#line 256 "h245.cnf"
h223_fw_lc_num = h245_lc_temp;
return offset;
@@ -13312,7 +13615,7 @@ static int
dissect_h245_T_reverseLogicalChannelNumber(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
offset = dissect_h245_LogicalChannelNumber(tvb, offset, actx, tree, hf_index);
-#line 257 "h245.cnf"
+#line 260 "h245.cnf"
h223_rev_lc_num = h245_lc_temp;
return offset;
@@ -13370,14 +13673,14 @@ static int dissect_olc_ack_reverseLogicalChannelParameters(tvbuff_t *tvb, int of
static int
dissect_h245_Ack_mediaChannel(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 537 "h245.cnf"
+#line 540 "h245.cnf"
media_channel = TRUE;
offset = dissect_h245_TransportAddress(tvb, offset, actx, tree, hf_index);
-#line 561 "h245.cnf"
+#line 564 "h245.cnf"
media_channel = FALSE;
@@ -13392,14 +13695,14 @@ static int dissect_ack_mediaChannel(tvbuff_t *tvb, int offset, asn_ctx_t *actx,
static int
dissect_h245_Ack_mediaControlChannel(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 549 "h245.cnf"
+#line 552 "h245.cnf"
media_control_channel = TRUE;
offset = dissect_h245_TransportAddress(tvb, offset, actx, tree, hf_index);
-#line 567 "h245.cnf"
+#line 570 "h245.cnf"
media_control_channel = FALSE;
@@ -13446,7 +13749,7 @@ static const per_choice_t T_forwardMultiplexAckParameters_choice[] = {
static int
dissect_h245_T_forwardMultiplexAckParameters(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 585 "h245.cnf"
+#line 588 "h245.cnf"
media_channel = FALSE;
@@ -13457,7 +13760,7 @@ dissect_h245_T_forwardMultiplexAckParameters(tvbuff_t *tvb, int offset, asn_ctx_
ett_h245_T_forwardMultiplexAckParameters, T_forwardMultiplexAckParameters_choice,
NULL);
-#line 593 "h245.cnf"
+#line 596 "h245.cnf"
if (!actx->pinfo->fd->flags.visited) {
if (codec_type && strcmp(codec_type, "t38fax")==0) {
@@ -13505,12 +13808,13 @@ static const per_sequence_t OpenLogicalChannelAck_sequence[] = {
{ "separateStack" , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_separateStack },
{ "forwardMultiplexAckParameters", ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_forwardMultiplexAckParameters },
{ "encryptionSync" , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_encryptionSync },
+ { "genericInformation" , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_genericInformation },
{ NULL, 0, 0, NULL }
};
static int
dissect_h245_OpenLogicalChannelAck(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 223 "h245.cnf"
+#line 226 "h245.cnf"
guint32 temp;
int p2p_dir;
h223_pending_olc *pend;
@@ -13542,7 +13846,7 @@ dissect_h245_OpenLogicalChannelAck(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U
actx->pinfo->p2p_dir = p2p_dir;
-#line 493 "h245.cnf"
+#line 496 "h245.cnf"
h245_pi->msg_type = H245_OpenLogChnAck;
@@ -13568,6 +13872,7 @@ static const value_string h245_OpenLogicalChannelRejectCause_vals[] = {
{ 11, "waitForCommunicationMode" },
{ 12, "invalidDependentChannel" },
{ 13, "replacementForRejected" },
+ { 14, "securityDenied" },
{ 0, NULL }
};
@@ -13586,6 +13891,7 @@ static const per_choice_t OpenLogicalChannelRejectCause_choice[] = {
{ 11, "waitForCommunicationMode" , ASN1_NOT_EXTENSION_ROOT, dissect_waitForCommunicationMode },
{ 12, "invalidDependentChannel" , ASN1_NOT_EXTENSION_ROOT, dissect_invalidDependentChannel },
{ 13, "replacementForRejected" , ASN1_NOT_EXTENSION_ROOT, dissect_replacementForRejected },
+ { 14, "securityDenied" , ASN1_NOT_EXTENSION_ROOT, dissect_securityDenied },
{ 0, NULL, 0, NULL }
};
@@ -13605,6 +13911,7 @@ static int dissect_olc_rej_cause(tvbuff_t *tvb, int offset, asn_ctx_t *actx, pro
static const per_sequence_t OpenLogicalChannelReject_sequence[] = {
{ "forwardLogicalChannelNumber" , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_forwardLogicalChannelNumber },
{ "cause" , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_olc_rej_cause },
+ { "genericInformation" , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_genericInformation },
{ NULL, 0, 0, NULL }
};
@@ -13613,7 +13920,7 @@ dissect_h245_OpenLogicalChannelReject(tvbuff_t *tvb, int offset, asn_ctx_t *actx
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_h245_OpenLogicalChannelReject, OpenLogicalChannelReject_sequence);
-#line 436 "h245.cnf"
+#line 439 "h245.cnf"
h245_pi->msg_type = H245_OpenLogChnRjc;
@@ -13634,7 +13941,7 @@ dissect_h245_CloseLogicalChannelAck(tvbuff_t *tvb, int offset, asn_ctx_t *actx _
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_h245_CloseLogicalChannelAck, CloseLogicalChannelAck_sequence);
-#line 446 "h245.cnf"
+#line 449 "h245.cnf"
h245_pi->msg_type = H245_CloseLogChnAck;
@@ -14943,7 +15250,7 @@ static const per_choice_t ResponseMessage_choice[] = {
static int
dissect_h245_ResponseMessage(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 303 "h245.cnf"
+#line 306 "h245.cnf"
guint32 value;
offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
@@ -15250,6 +15557,7 @@ static const value_string h245_EndSessionCommand_vals[] = {
{ 1, "disconnect" },
{ 2, "gstnOptions" },
{ 3, "isdnOptions" },
+ { 4, "genericInformation" },
{ 0, NULL }
};
@@ -15258,6 +15566,7 @@ static const per_choice_t EndSessionCommand_choice[] = {
{ 1, "disconnect" , ASN1_EXTENSION_ROOT , dissect_disconnect },
{ 2, "gstnOptions" , ASN1_EXTENSION_ROOT , dissect_gstnOptions },
{ 3, "isdnOptions" , ASN1_NOT_EXTENSION_ROOT, dissect_isdnOptions },
+ { 4, "genericInformation" , ASN1_NOT_EXTENSION_ROOT, dissect_genericInformation },
{ 0, NULL, 0, NULL }
};
@@ -16149,7 +16458,7 @@ static const per_choice_t CommandMessage_choice[] = {
static int
dissect_h245_CommandMessage(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 352 "h245.cnf"
+#line 355 "h245.cnf"
guint32 value;
offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
@@ -16219,7 +16528,7 @@ dissect_h245_MasterSlaveDeterminationRelease(tvbuff_t *tvb, int offset, asn_ctx_
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_h245_MasterSlaveDeterminationRelease, MasterSlaveDeterminationRelease_sequence);
-#line 471 "h245.cnf"
+#line 474 "h245.cnf"
h245_pi->msg_type = H245_MastSlvDetRls;
@@ -16231,6 +16540,7 @@ static int dissect_masterSlaveDeterminationRelease(tvbuff_t *tvb, int offset, as
static const per_sequence_t TerminalCapabilitySetRelease_sequence[] = {
+ { "genericInformation" , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_genericInformation },
{ NULL, 0, 0, NULL }
};
@@ -16239,7 +16549,7 @@ dissect_h245_TerminalCapabilitySetRelease(tvbuff_t *tvb, int offset, asn_ctx_t *
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_h245_TerminalCapabilitySetRelease, TerminalCapabilitySetRelease_sequence);
-#line 481 "h245.cnf"
+#line 484 "h245.cnf"
h245_pi->msg_type = H245_TermCapSetRls;
@@ -16252,6 +16562,7 @@ static int dissect_terminalCapabilitySetRelease(tvbuff_t *tvb, int offset, asn_c
static const per_sequence_t OpenLogicalChannelConfirm_sequence[] = {
{ "forwardLogicalChannelNumber" , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_forwardLogicalChannelNumber },
+ { "genericInformation" , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_genericInformation },
{ NULL, 0, 0, NULL }
};
@@ -16260,7 +16571,7 @@ dissect_h245_OpenLogicalChannelConfirm(tvbuff_t *tvb, int offset, asn_ctx_t *act
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_h245_OpenLogicalChannelConfirm, OpenLogicalChannelConfirm_sequence);
-#line 451 "h245.cnf"
+#line 454 "h245.cnf"
h245_pi->msg_type = H245_OpenLogChnCnf;
@@ -16851,6 +17162,7 @@ static const per_sequence_t T_signal_sequence[] = {
{ "rtpPayloadIndication" , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_rtpPayloadIndication },
{ "paramS" , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_paramS },
{ "encryptedSignalType" , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_encryptedSignalType },
+ { "algorithmOID" , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_algorithmOID },
{ NULL, 0, 0, NULL }
};
@@ -16947,6 +17259,7 @@ static const value_string h245_UserInputIndication_vals[] = {
{ 4, "signalUpdate" },
{ 5, "extendedAlphanumeric" },
{ 6, "encryptedAlphanumeric" },
+ { 7, "genericInformation" },
{ 0, NULL }
};
@@ -16958,6 +17271,7 @@ static const per_choice_t UserInputIndication_choice[] = {
{ 4, "signalUpdate" , ASN1_NOT_EXTENSION_ROOT, dissect_signalUpdate },
{ 5, "extendedAlphanumeric" , ASN1_NOT_EXTENSION_ROOT, dissect_extendedAlphanumeric },
{ 6, "encryptedAlphanumeric" , ASN1_NOT_EXTENSION_ROOT, dissect_encryptedAlphanumeric },
+ { 7, "genericInformation" , ASN1_NOT_EXTENSION_ROOT, dissect_genericInformation },
{ 0, NULL, 0, NULL }
};
@@ -17357,7 +17671,7 @@ static const per_choice_t IndicationMessage_choice[] = {
static int
dissect_h245_IndicationMessage(tvbuff_t *tvb, int offset, asn_ctx_t *actx _U_, proto_tree *tree, int hf_index) {
-#line 328 "h245.cnf"
+#line 331 "h245.cnf"
guint32 value;
offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
@@ -17821,10 +18135,10 @@ void proto_register_h245(void) {
{ "messageIdentifier", "h245.messageIdentifier",
FT_UINT32, BASE_DEC, VALS(h245_CapabilityIdentifier_vals), 0,
"GenericMessage/messageIdentifier", HFILL }},
- { &hf_h245_subMessageIdentifer,
- { "subMessageIdentifer", "h245.subMessageIdentifer",
+ { &hf_h245_subMessageIdentifier,
+ { "subMessageIdentifier", "h245.subMessageIdentifier",
FT_UINT32, BASE_DEC, NULL, 0,
- "GenericMessage/subMessageIdentifer", HFILL }},
+ "GenericMessage/subMessageIdentifier", HFILL }},
{ &hf_h245_messageContent,
{ "messageContent", "h245.messageContent",
FT_UINT32, BASE_DEC, NULL, 0,
@@ -17921,6 +18235,14 @@ void proto_register_h245(void) {
{ "Item", "h245.capabilityDescriptors_item",
FT_NONE, BASE_NONE, NULL, 0,
"TerminalCapabilitySet/capabilityDescriptors/_item", HFILL }},
+ { &hf_h245_genericInformation,
+ { "genericInformation", "h245.genericInformation",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "", HFILL }},
+ { &hf_h245_genericInformation_item,
+ { "Item", "h245.genericInformation_item",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "", HFILL }},
{ &hf_h245_capabilityTableEntryNumber,
{ "capabilityTableEntryNumber", "h245.capabilityTableEntryNumber",
FT_UINT32, BASE_DEC, NULL, 0,
@@ -18073,14 +18395,26 @@ void proto_register_h245(void) {
{ "receiveRTPAudioToneCapability", "h245.receiveRTPAudioToneCapability",
FT_NONE, BASE_NONE, NULL, 0,
"Capability/receiveRTPAudioToneCapability", HFILL }},
- { &hf_h245_fecCapability,
- { "fecCapability", "h245.fecCapability",
- FT_UINT32, BASE_DEC, VALS(h245_FECCapability_vals), 0,
- "Capability/fecCapability", HFILL }},
+ { &hf_h245_depFecCapability,
+ { "depFecCapability", "h245.depFecCapability",
+ FT_UINT32, BASE_DEC, VALS(h245_DepFECCapability_vals), 0,
+ "Capability/depFecCapability", HFILL }},
{ &hf_h245_multiplePayloadStreamCapability,
{ "multiplePayloadStreamCapability", "h245.multiplePayloadStreamCapability",
FT_NONE, BASE_NONE, NULL, 0,
"Capability/multiplePayloadStreamCapability", HFILL }},
+ { &hf_h245_fecCapability,
+ { "fecCapability", "h245.fecCapability",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "Capability/fecCapability", HFILL }},
+ { &hf_h245_redundancyEncodingCap,
+ { "redundancyEncodingCap", "h245.redundancyEncodingCap",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "Capability/redundancyEncodingCap", HFILL }},
+ { &hf_h245_oneOfCapabilities,
+ { "oneOfCapabilities", "h245.oneOfCapabilities",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "Capability/oneOfCapabilities", HFILL }},
{ &hf_h245_encryptionAuthenticationAndIntegrity,
{ "encryptionAuthenticationAndIntegrity", "h245.encryptionAuthenticationAndIntegrity",
FT_NONE, BASE_NONE, NULL, 0,
@@ -19985,6 +20319,10 @@ void proto_register_h245(void) {
{ "integrityCapability", "h245.integrityCapability",
FT_NONE, BASE_NONE, NULL, 0,
"EncryptionAuthenticationAndIntegrity/integrityCapability", HFILL }},
+ { &hf_h245_genericH235SecurityCapability,
+ { "genericH235SecurityCapability", "h245.genericH235SecurityCapability",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "EncryptionAuthenticationAndIntegrity/genericH235SecurityCapability", HFILL }},
{ &hf_h245_EncryptionCapability_item,
{ "Item", "h245.EncryptionCapability_item",
FT_UINT32, BASE_DEC, VALS(h245_MediaEncryptionAlgorithm_vals), 0,
@@ -20045,6 +20383,10 @@ void proto_register_h245(void) {
{ "secureDTMF", "h245.secureDTMF",
FT_NONE, BASE_NONE, NULL, 0,
"UserInputCapability/secureDTMF", HFILL }},
+ { &hf_h245_genericUserInputCapability,
+ { "genericUserInputCapability", "h245.genericUserInputCapability",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "UserInputCapability/genericUserInputCapability", HFILL }},
{ &hf_h245_nonStandardParams,
{ "nonStandardData", "h245.nonStandardData",
FT_UINT32, BASE_DEC, NULL, 0,
@@ -20157,11 +20499,11 @@ void proto_register_h245(void) {
{ "octetString", "h245.octetString",
FT_BYTES, BASE_HEX, NULL, 0,
"ParameterValue/octetString", HFILL }},
- { &hf_h245_genericParameter,
+ { &hf_h245_genericParameters,
{ "genericParameter", "h245.genericParameter",
FT_UINT32, BASE_DEC, NULL, 0,
"ParameterValue/genericParameter", HFILL }},
- { &hf_h245_genericParameter_item,
+ { &hf_h245_genericParameters_item,
{ "Item", "h245.genericParameter_item",
FT_NONE, BASE_NONE, NULL, 0,
"ParameterValue/genericParameter/_item", HFILL }},
@@ -20200,23 +20542,47 @@ void proto_register_h245(void) {
{ &hf_h245_fecc_rfc2733,
{ "rfc2733", "h245.rfc2733",
FT_NONE, BASE_NONE, NULL, 0,
- "FECCapability/rfc2733", HFILL }},
+ "DepFECCapability/rfc2733", HFILL }},
{ &hf_h245_redundancyEncodingBool,
{ "redundancyEncoding", "h245.redundancyEncoding",
FT_BOOLEAN, 8, NULL, 0,
- "FECCapability/rfc2733/redundancyEncoding", HFILL }},
+ "DepFECCapability/rfc2733/redundancyEncoding", HFILL }},
{ &hf_h245_separateStreamBool,
{ "separateStream", "h245.separateStream",
FT_NONE, BASE_NONE, NULL, 0,
- "FECCapability/rfc2733/separateStream", HFILL }},
+ "DepFECCapability/rfc2733/separateStream", HFILL }},
{ &hf_h245_separatePort,
{ "separatePort", "h245.separatePort",
FT_BOOLEAN, 8, NULL, 0,
- "FECCapability/rfc2733/separateStream/separatePort", HFILL }},
+ "DepFECCapability/rfc2733/separateStream/separatePort", HFILL }},
{ &hf_h245_samePortBool,
{ "samePort", "h245.samePort",
FT_BOOLEAN, 8, NULL, 0,
- "FECCapability/rfc2733/separateStream/samePort", HFILL }},
+ "DepFECCapability/rfc2733/separateStream/samePort", HFILL }},
+ { &hf_h245_protectedCapability,
+ { "protectedCapability", "h245.protectedCapability",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "FECCapability/protectedCapability", HFILL }},
+ { &hf_h245_fecScheme,
+ { "fecScheme", "h245.fecScheme",
+ FT_OID, BASE_NONE, NULL, 0,
+ "", HFILL }},
+ { &hf_h245_rfc2733rfc2198,
+ { "rfc2733rfc2198", "h245.rfc2733rfc2198",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "Rfc2733Format/rfc2733rfc2198", HFILL }},
+ { &hf_h245_rfc2733sameport,
+ { "rfc2733sameport", "h245.rfc2733sameport",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "Rfc2733Format/rfc2733sameport", HFILL }},
+ { &hf_h245_rfc2733diffport,
+ { "rfc2733diffport", "h245.rfc2733diffport",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "Rfc2733Format/rfc2733diffport", HFILL }},
+ { &hf_h245_rfc2733Format,
+ { "rfc2733Format", "h245.rfc2733Format",
+ FT_UINT32, BASE_DEC, VALS(h245_Rfc2733Format_vals), 0,
+ "", HFILL }},
{ &hf_h245_olc_fw_lcn,
{ "forwardLogicalChannelNumber", "h245.forwardLogicalChannelNumber",
FT_UINT32, BASE_DEC, NULL, 0,
@@ -20397,6 +20763,10 @@ void proto_register_h245(void) {
{ "multiplePayloadStream", "h245.multiplePayloadStream",
FT_NONE, BASE_NONE, NULL, 0,
"", HFILL }},
+ { &hf_h245_depFec,
+ { "depFec", "h245.depFec",
+ FT_UINT32, BASE_DEC, VALS(h245_DepFECData_vals), 0,
+ "", HFILL }},
{ &hf_h245_fec,
{ "fec", "h245.fec",
FT_UINT32, BASE_DEC, VALS(h245_FECData_vals), 0,
@@ -20753,14 +21123,14 @@ void proto_register_h245(void) {
{ "Item", "h245.elements_item",
FT_NONE, BASE_NONE, NULL, 0,
"MultiplePayloadStream/elements/_item", HFILL }},
- { &hf_h245_rfc2733,
+ { &hf_h245_dep_rfc2733,
{ "rfc2733", "h245.rfc2733",
FT_NONE, BASE_NONE, NULL, 0,
- "FECData/rfc2733", HFILL }},
+ "DepFECData/rfc2733", HFILL }},
{ &hf_h245_fec_data_mode,
{ "mode", "h245.mode",
FT_UINT32, BASE_DEC, VALS(h245_FECdata_mode_vals), 0,
- "FECData/rfc2733/mode", HFILL }},
+ "DepFECData/rfc2733/mode", HFILL }},
{ &hf_h245_redundancyEncodingFlag,
{ "redundancyEncoding", "h245.redundancyEncoding",
FT_NONE, BASE_NONE, NULL, 0,
@@ -20768,11 +21138,11 @@ void proto_register_h245(void) {
{ &hf_h245_differentPort,
{ "differentPort", "h245.differentPort",
FT_NONE, BASE_NONE, NULL, 0,
- "SeparateStream/differentPort", HFILL }},
+ "DepSeparateStream/differentPort", HFILL }},
{ &hf_h245_protectedSessionID,
{ "protectedSessionID", "h245.protectedSessionID",
FT_UINT32, BASE_DEC, NULL, 0,
- "SeparateStream/differentPort/protectedSessionID", HFILL }},
+ "DepSeparateStream/differentPort/protectedSessionID", HFILL }},
{ &hf_h245_protectedPayloadType,
{ "protectedPayloadType", "h245.protectedPayloadType",
FT_UINT32, BASE_DEC, NULL, 0,
@@ -20780,11 +21150,35 @@ void proto_register_h245(void) {
{ &hf_h245_samePort,
{ "samePort", "h245.samePort",
FT_NONE, BASE_NONE, NULL, 0,
- "SeparateStream/samePort", HFILL }},
+ "DepSeparateStream/samePort", HFILL }},
{ &hf_h245_separateStream,
{ "separateStream", "h245.separateStream",
- FT_UINT32, BASE_DEC, VALS(h245_SeparateStream_vals), 0,
+ FT_UINT32, BASE_DEC, VALS(h245_DepSeparateStream_vals), 0,
"", HFILL }},
+ { &hf_h245_rfc2733,
+ { "rfc2733", "h245.rfc2733",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "FECData/rfc2733", HFILL }},
+ { &hf_h245_pktMode,
+ { "pktMode", "h245.pktMode",
+ FT_UINT32, BASE_DEC, VALS(h245_T_pktMode_vals), 0,
+ "FECData/rfc2733/pktMode", HFILL }},
+ { &hf_h245_rfc2198coding,
+ { "rfc2198coding", "h245.rfc2198coding",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "FECData/rfc2733/pktMode/rfc2198coding", HFILL }},
+ { &hf_h245_mode_rfc2733sameport,
+ { "rfc2733sameport", "h245.rfc2733sameport",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "FECData/rfc2733/pktMode/rfc2733sameport", HFILL }},
+ { &hf_h245_mode_rfc2733diffport,
+ { "rfc2733diffport", "h245.rfc2733diffport",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "FECData/rfc2733/pktMode/rfc2733diffport", HFILL }},
+ { &hf_h245_protectedChannel,
+ { "protectedChannel", "h245.protectedChannel",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ "FECData/rfc2733/pktMode/rfc2733diffport/protectedChannel", HFILL }},
{ &hf_h245_unicastAddress,
{ "unicastAddress", "h245.unicastAddress",
FT_UINT32, BASE_DEC, VALS(h245_UnicastAddress_vals), 0,
@@ -20917,6 +21311,10 @@ void proto_register_h245(void) {
{ "Item", "h245.escrowentry_item",
FT_NONE, BASE_NONE, NULL, 0,
"EncryptionSync/escrowentry/_item", HFILL }},
+ { &hf_h245_genericParameter,
+ { "genericParameter", "h245.genericParameter",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "EncryptionSync/genericParameter", HFILL }},
{ &hf_h245_escrowID,
{ "escrowID", "h245.escrowID",
FT_OID, BASE_NONE, NULL, 0,
@@ -21009,6 +21407,10 @@ void proto_register_h245(void) {
{ "replacementForRejected", "h245.replacementForRejected",
FT_NONE, BASE_NONE, NULL, 0,
"OpenLogicalChannelReject/cause/replacementForRejected", HFILL }},
+ { &hf_h245_securityDenied,
+ { "securityDenied", "h245.securityDenied",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "OpenLogicalChannelReject/cause/securityDenied", HFILL }},
{ &hf_h245_sessionID,
{ "sessionID", "h245.sessionID",
FT_UINT32, BASE_DEC, NULL, 0,
@@ -21237,10 +21639,14 @@ void proto_register_h245(void) {
{ "multiplePayloadStreamMode", "h245.multiplePayloadStreamMode",
FT_NONE, BASE_NONE, NULL, 0,
"ModeElementType/multiplePayloadStreamMode", HFILL }},
+ { &hf_h245_depFecMode,
+ { "depFecMode", "h245.depFecMode",
+ FT_UINT32, BASE_DEC, VALS(h245_DepFECMode_vals), 0,
+ "ModeElementType/depFecMode", HFILL }},
{ &hf_h245_fecMode,
{ "fecMode", "h245.fecMode",
- FT_UINT32, BASE_DEC, VALS(h245_FECMode_vals), 0,
- "ModeElementType/fecMode", HFILL }},
+ FT_NONE, BASE_NONE, NULL, 0,
+ "", HFILL }},
{ &hf_h245_type,
{ "type", "h245.type",
FT_UINT32, BASE_DEC, VALS(h245_ModeElementType_vals), 0,
@@ -21300,11 +21706,15 @@ void proto_register_h245(void) {
{ &hf_h245_rfc2733Mode,
{ "rfc2733Mode", "h245.rfc2733Mode",
FT_NONE, BASE_NONE, NULL, 0,
- "FECMode/rfc2733Mode", HFILL }},
+ "DepFECMode/rfc2733Mode", HFILL }},
{ &hf_h245_fec_mode,
{ "mode", "h245.mode",
FT_UINT32, BASE_DEC, VALS(h245_FEC_mode_vals), 0,
- "FECMode/rfc2733Mode/mode", HFILL }},
+ "DepFECMode/rfc2733Mode/mode", HFILL }},
+ { &hf_h245_protectedElement,
+ { "protectedElement", "h245.protectedElement",
+ FT_UINT32, BASE_DEC, VALS(h245_ModeElementType_vals), 0,
+ "FECMode/protectedElement", HFILL }},
{ &hf_h245_adaptationLayer,
{ "adaptationLayerType", "h245.adaptationLayerType",
FT_UINT32, BASE_DEC, VALS(h245_AdaptationLayerType_vals), 0,
@@ -22869,6 +23279,10 @@ void proto_register_h245(void) {
{ "encryptedSignalType", "h245.encryptedSignalType",
FT_BYTES, BASE_HEX, NULL, 0,
"UserInputIndication/signal/encryptedSignalType", HFILL }},
+ { &hf_h245_algorithmOID,
+ { "algorithmOID", "h245.algorithmOID",
+ FT_OID, BASE_NONE, NULL, 0,
+ "", HFILL }},
{ &hf_h245_signalUpdate,
{ "signalUpdate", "h245.signalUpdate",
FT_NONE, BASE_NONE, NULL, 0,
@@ -22881,10 +23295,6 @@ void proto_register_h245(void) {
{ "extendedAlphanumeric", "h245.extendedAlphanumeric",
FT_NONE, BASE_NONE, NULL, 0,
"UserInputIndication/extendedAlphanumeric", HFILL }},
- { &hf_h245_algorithmOID,
- { "algorithmOID", "h245.algorithmOID",
- FT_OID, BASE_NONE, NULL, 0,
- "EncryptedAlphanumeric/algorithmOID", HFILL }},
{ &hf_h245_encrypted,
{ "encrypted", "h245.encrypted",
FT_BYTES, BASE_HEX, NULL, 0,
@@ -22924,6 +23334,7 @@ void proto_register_h245(void) {
&ett_h245_TerminalCapabilitySet,
&ett_h245_SET_SIZE_1_256_OF_CapabilityTableEntry,
&ett_h245_SET_SIZE_1_256_OF_CapabilityDescriptor,
+ &ett_h245_SEQUENCE_OF_GenericInformation,
&ett_h245_CapabilityTableEntry,
&ett_h245_CapabilityDescriptor,
&ett_h245_SET_SIZE_1_256_OF_AlternativeCapabilitySet,
@@ -23066,9 +23477,11 @@ void proto_register_h245(void) {
&ett_h245_NoPTAudioTelephonyEventCapability,
&ett_h245_NoPTAudioToneCapability,
&ett_h245_MultiplePayloadStreamCapability,
- &ett_h245_FECCapability,
+ &ett_h245_DepFECCapability,
&ett_h245_FECC_rfc2733,
&ett_h245_T_separateStreamBool,
+ &ett_h245_FECCapability,
+ &ett_h245_Rfc2733Format,
&ett_h245_OpenLogicalChannel,
&ett_h245_T_forwardLogicalChannelParameters,
&ett_h245_OLC_forw_multiplexParameters,
@@ -23119,12 +23532,17 @@ void proto_register_h245(void) {
&ett_h245_MultiplePayloadStream,
&ett_h245_SEQUENCE_OF_MultiplePayloadStreamElement,
&ett_h245_MultiplePayloadStreamElement,
- &ett_h245_FECData,
+ &ett_h245_DepFECData,
&ett_h245_RFC2733Data,
&ett_h245_FECdata_mode,
- &ett_h245_SeparateStream,
+ &ett_h245_DepSeparateStream,
&ett_h245_T_differentPort,
&ett_h245_T_samePort,
+ &ett_h245_FECData,
+ &ett_h245_T_rfc2733,
+ &ett_h245_T_pktMode,
+ &ett_h245_T_mode_rfc2733sameport,
+ &ett_h245_T_mode_rfc2733diffport,
&ett_h245_TransportAddress,
&ett_h245_UnicastAddress,
&ett_h245_T_iPAddress,
@@ -23199,9 +23617,10 @@ void proto_register_h245(void) {
&ett_h245_MultiplePayloadStreamMode,
&ett_h245_SEQUENCE_OF_MultiplePayloadStreamElementMode,
&ett_h245_MultiplePayloadStreamElementMode,
- &ett_h245_FECMode,
+ &ett_h245_DepFECMode,
&ett_h245_T_rfc2733Mode,
&ett_h245_FEC_mode,
+ &ett_h245_FECMode,
&ett_h245_H223ModeParameters,
&ett_h245_AdaptationLayerType,
&ett_h245_V76ModeParameters,