diff options
author | etxrab <etxrab@f5534014-38df-0310-8fa8-9805f1628bb7> | 2005-02-02 20:02:46 +0000 |
---|---|---|
committer | etxrab <etxrab@f5534014-38df-0310-8fa8-9805f1628bb7> | 2005-02-02 20:02:46 +0000 |
commit | 6ecaec3e0975cac874e60118b264684cf8c93e02 (patch) | |
tree | 313f853a6fd23515cc216c6421903251f5964386 /asn1 | |
parent | d340216e3467baa62e5345773c780d67cd7dd691 (diff) |
From Jon Ringle:
1) Added a setup_frame parameter to conversation_t
2) Used the conversation_t next to maintain a list of conversations with the
same src/dest tuple but different setup_frame number.
3) Changed the signature of find_conversation() and conversation_new() to pass
in the frame number.
4) Adjusted packet-sdp to select RTP conversation if both m=audio and m=image
are present, and T.38 conversation if only m=image is present. I expect that
RTP/T.38 dissecting to be better, but I don't have a way to generate T.38
packets.
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@13242 f5534014-38df-0310-8fa8-9805f1628bb7
Diffstat (limited to 'asn1')
-rw-r--r-- | asn1/h225/h225.cnf | 7 | ||||
-rw-r--r-- | asn1/h225/packet-h225-template.c | 6 |
2 files changed, 8 insertions, 5 deletions
diff --git a/asn1/h225/h225.cnf b/asn1/h225/h225.cnf index 781fbdf0ff..2217d34d76 100644 --- a/asn1/h225/h225.cnf +++ b/asn1/h225/h225.cnf @@ -43,6 +43,9 @@ RasUsageSpecification/callStartingPoint RasUsageSpecificationcallStartingPoint CapacityReportingSpecification/when CapacityReportingSpecification_when RasUsageSpecification/when RasUsageSpecification_when TransportAddress/ipAddress/ip IpV4 +Connect-UUIE/language Language +Setup-UUIE/language Language +AdmissionConfirm/language Language #---------------------------------------------------------------------------------------- #.FIELD_RENAME RasUsageSpecification/callStartingPoint/alerting alerting_flg @@ -347,9 +350,9 @@ guint32 value_len; src_addr.len=4; src_addr.data=(const guint8 *)&ipv4_address; - conv=find_conversation(&src_addr, &src_addr, PT_TCP, ipv4_port, ipv4_port, NO_ADDR_B|NO_PORT_B); + conv=find_conversation(pinfo->fd->num, &src_addr, &src_addr, PT_TCP, ipv4_port, ipv4_port, NO_ADDR_B|NO_PORT_B); if(!conv){ - conv=conversation_new(&src_addr, &src_addr, PT_TCP, ipv4_port, ipv4_port, NO_ADDR2|NO_PORT2); + conv=conversation_new(pinfo->fd->num, &src_addr, &src_addr, PT_TCP, ipv4_port, ipv4_port, NO_ADDR2|NO_PORT2); conversation_set_dissector(conv, h245_handle); } } diff --git a/asn1/h225/packet-h225-template.c b/asn1/h225/packet-h225-template.c index 0d2ec536e3..94ced2434f 100644 --- a/asn1/h225/packet-h225-template.c +++ b/asn1/h225/packet-h225-template.c @@ -341,13 +341,13 @@ static void ras_call_matching(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tre msg_category = pi->msg_tag / 3; if(pi->msg_tag % 3 == 0) { /* Request Message */ - conversation = find_conversation(&pinfo->src, + conversation = find_conversation(pinfo->fd->num, &pinfo->src, &pinfo->dst, pinfo->ptype, pinfo->srcport, pinfo->destport, 0); if (conversation == NULL) { /* It's not part of any conversation - create a new one. */ - conversation = conversation_new(&pinfo->src, + conversation = conversation_new(pinfo->fd->num, &pinfo->src, &pinfo->dst, pinfo->ptype, pinfo->srcport, pinfo->destport, 0); @@ -414,7 +414,7 @@ static void ras_call_matching(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tre /* end of request message handling*/ } else { /* Confirm or Reject Message */ - conversation = find_conversation(&pinfo->src, + conversation = find_conversation(pinfo->fd->num, &pinfo->src, &pinfo->dst, pinfo->ptype, pinfo->srcport, pinfo->destport, 0); if (conversation != NULL) { |