diff options
author | Guy Harris <guy@alum.mit.edu> | 2004-08-30 10:03:54 +0000 |
---|---|---|
committer | Guy Harris <guy@alum.mit.edu> | 2004-08-30 10:03:54 +0000 |
commit | 344dddb12472768b88d16d853d315e090d240108 (patch) | |
tree | 7c765788891ec88840ef8d06b1a132bb3ef96906 /epan/dissectors | |
parent | e74f18ee9be6df91e5e04fe65deea6ca36dceb73 (diff) |
Pass an "address *" to "rtp_add_address()" and "rtcp_add_address()", so
so that they could handle IPv6 addresses.
Clean up white space.
svn path=/trunk/; revision=11854
Diffstat (limited to 'epan/dissectors')
-rw-r--r-- | epan/dissectors/packet-h245.c | 4 | ||||
-rw-r--r-- | epan/dissectors/packet-rtcp.c | 12 | ||||
-rw-r--r-- | epan/dissectors/packet-rtcp.h | 3 | ||||
-rw-r--r-- | epan/dissectors/packet-rtp.c | 12 | ||||
-rw-r--r-- | epan/dissectors/packet-rtp.h | 2 | ||||
-rw-r--r-- | epan/dissectors/packet-rtsp.c | 7 | ||||
-rw-r--r-- | epan/dissectors/packet-sdp.c | 4 | ||||
-rw-r--r-- | epan/dissectors/packet-skinny.c | 108 |
8 files changed, 77 insertions, 75 deletions
diff --git a/epan/dissectors/packet-h245.c b/epan/dissectors/packet-h245.c index 0d4c0d9272..13b9dbb983 100644 --- a/epan/dissectors/packet-h245.c +++ b/epan/dissectors/packet-h245.c @@ -14374,7 +14374,7 @@ dissect_h245_mediaChannel(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_t src_addr.len=4; src_addr.data=(char *)&ipv4_address; - rtp_add_address(pinfo, (char *)&ipv4_address, ipv4_port, 0, "H245", pinfo->fd->num); + rtp_add_address(pinfo, &src_addr, ipv4_port, 0, "H245", pinfo->fd->num); } return offset; } @@ -14393,7 +14393,7 @@ dissect_h245_mediaControlChannel(tvbuff_t *tvb, int offset, packet_info *pinfo, src_addr.len=4; src_addr.data=(char *)&ipv4_address; - rtcp_add_address(pinfo, (char *)&ipv4_address, ipv4_port, 0, "H245", pinfo->fd->num); + rtcp_add_address(pinfo, &src_addr, ipv4_port, 0, "H245", pinfo->fd->num); } return offset; } diff --git a/epan/dissectors/packet-rtcp.c b/epan/dissectors/packet-rtcp.c index db5c819dd9..03774e2913 100644 --- a/epan/dissectors/packet-rtcp.c +++ b/epan/dissectors/packet-rtcp.c @@ -241,11 +241,11 @@ static GMemChunk *rtcp_conversations = NULL; void rtcp_add_address( packet_info *pinfo, - const unsigned char* ip_addr, int port, + address *addr, int port, int other_port, gchar *setup_method, guint32 setup_frame_number) { - address src_addr; + address null_addr; conversation_t* p_conv; struct _rtcp_conversation_info *p_conv_data = NULL; @@ -259,22 +259,20 @@ void rtcp_add_address( packet_info *pinfo, return; } - src_addr.type = pinfo->net_src.type; - src_addr.len = pinfo->net_src.len; - src_addr.data = ip_addr; + SET_ADDRESS(&null_addr, AT_NONE, 0, NULL); /* * Check if the ip address and port combination is not * already registered as a conversation. */ - p_conv = find_conversation( &src_addr, &src_addr, PT_UDP, port, other_port, + p_conv = find_conversation( addr, &null_addr, PT_UDP, port, other_port, NO_ADDR_B | (!other_port ? NO_PORT_B : 0)); /* * If not, create a new conversation. */ if ( ! p_conv ) { - p_conv = conversation_new( &src_addr, &src_addr, PT_UDP, + p_conv = conversation_new( addr, &null_addr, PT_UDP, (guint32)port, (guint32)other_port, NO_ADDR2 | (!other_port ? NO_PORT2 : 0)); } diff --git a/epan/dissectors/packet-rtcp.h b/epan/dissectors/packet-rtcp.h index 30e0ee5dd9..b997ab6738 100644 --- a/epan/dissectors/packet-rtcp.h +++ b/epan/dissectors/packet-rtcp.h @@ -38,7 +38,6 @@ struct _rtcp_conversation_info /* Add an RTCP conversation with the given details */ void rtcp_add_address(packet_info *pinfo, - const unsigned char* ip_addr, int port, + address *addr, int port, int other_port, gchar *setup_method, guint32 setup_frame_number); - diff --git a/epan/dissectors/packet-rtp.c b/epan/dissectors/packet-rtp.c index 761f9e4f94..a18ee50780 100644 --- a/epan/dissectors/packet-rtp.c +++ b/epan/dissectors/packet-rtp.c @@ -194,11 +194,11 @@ static address fake_addr; /* Set up an RTP conversation */ void rtp_add_address(packet_info *pinfo, - const unsigned char* ip_addr, int port, + address *addr, int port, int other_port, gchar *setup_method, guint32 setup_frame_number) { - address src_addr; + address null_addr; conversation_t* p_conv; struct _rtp_conversation_info *p_conv_data = NULL; @@ -212,22 +212,20 @@ void rtp_add_address(packet_info *pinfo, return; } - src_addr.type = pinfo->net_src.type; - src_addr.len = pinfo->net_src.len; - src_addr.data = ip_addr; + SET_ADDRESS(&null_addr, AT_NONE, 0, NULL); /* * Check if the ip address and port combination is not * already registered as a conversation. */ - p_conv = find_conversation( &src_addr, &src_addr, PT_UDP, port, other_port, + p_conv = find_conversation( addr, &null_addr, PT_UDP, port, other_port, NO_ADDR_B | (!other_port ? NO_PORT_B : 0)); /* * If not, create a new conversation. */ if ( ! p_conv ) { - p_conv = conversation_new( &src_addr, &src_addr, PT_UDP, + p_conv = conversation_new( addr, &null_addr, PT_UDP, (guint32)port, (guint32)other_port, NO_ADDR2 | (!other_port ? NO_PORT2 : 0)); } diff --git a/epan/dissectors/packet-rtp.h b/epan/dissectors/packet-rtp.h index 788e060f1c..42ce2aa2c4 100644 --- a/epan/dissectors/packet-rtp.h +++ b/epan/dissectors/packet-rtp.h @@ -60,6 +60,6 @@ struct _rtp_conversation_info /* Add an RTP conversation with the given details */ void rtp_add_address(packet_info *pinfo, - const unsigned char* ip_addr, int port, + address *addr, int port, int other_port, gchar *setup_method, guint32 setup_frame_number); diff --git a/epan/dissectors/packet-rtsp.c b/epan/dissectors/packet-rtsp.c index bcfef06fa1..9ef6c856ea 100644 --- a/epan/dissectors/packet-rtsp.c +++ b/epan/dissectors/packet-rtsp.c @@ -352,7 +352,6 @@ rtsp_create_conversation(packet_info *pinfo, const guchar *line_begin, guchar *tmp; guint c_data_port, c_mon_port; guint s_data_port, s_mon_port; - address null_addr; if (line_len > sizeof(buf) - 1) { /* @@ -441,15 +440,13 @@ rtsp_create_conversation(packet_info *pinfo, const guchar *line_begin, * sent the packet, so we construct a conversation with no * second address. */ - SET_ADDRESS(&null_addr, pinfo->src.type, 0, NULL); - - rtp_add_address(pinfo, (char *)pinfo->dst.data, c_data_port, s_data_port, + rtp_add_address(pinfo, &pinfo->dst, c_data_port, s_data_port, "RTSP", pinfo->fd->num); if (!c_mon_port) return; - rtcp_add_address(pinfo, (char *)pinfo->dst.data, c_mon_port, s_mon_port, + rtcp_add_address(pinfo, &pinfo->dst, c_mon_port, s_mon_port, "RTSP", pinfo->fd->num); } diff --git a/epan/dissectors/packet-sdp.c b/epan/dissectors/packet-sdp.c index 3460bca5f7..b61ce963aa 100644 --- a/epan/dissectors/packet-sdp.c +++ b/epan/dissectors/packet-sdp.c @@ -383,13 +383,13 @@ dissect_sdp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) src_addr.data=(char *)&ipv4_address; if(rtp_handle){ - rtp_add_address(pinfo, (char *)&ipv4_address, ipv4_port, 0, + rtp_add_address(pinfo, &src_addr, ipv4_port, 0, "SDP", pinfo->fd->num); } if(rtcp_handle){ ipv4_port++; - rtcp_add_address(pinfo, (char *)&ipv4_address, ipv4_port, 0, + rtcp_add_address(pinfo, &src_addr, ipv4_port, 0, "SDP", pinfo->fd->num); } } diff --git a/epan/dissectors/packet-skinny.c b/epan/dissectors/packet-skinny.c index 0ffb1b100c..426b01f928 100644 --- a/epan/dissectors/packet-skinny.c +++ b/epan/dissectors/packet-skinny.c @@ -1389,9 +1389,14 @@ static void dissect_skinny_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tr proto_tree_add_item(skinny_tree, hf_skinny_portNumber, tvb, offset+20, 4, TRUE); proto_tree_add_item(skinny_tree, hf_skinny_passThruPartyID, tvb, offset+24, 4, TRUE); if((!pinfo->fd->flags.visited) && rtp_handle){ - guint32 ipv4_address; - tvb_memcpy(tvb, (char*)&ipv4_address, offset+16, 4); - rtp_add_address(pinfo, (char *)&ipv4_address, tvb_get_letohl(tvb, offset+20), 0, "Skinny", pinfo->fd->num); + address src_addr; + guint32 ipv4_address; + + src_addr.type=AT_IPv4; + src_addr.len=4; + src_addr.data=(char *)&ipv4_address; + tvb_memcpy(tvb, (char *)&ipv4_address, offset+16, 4); + rtp_add_address(pinfo, &src_addr, tvb_get_letohl(tvb, offset+20), 0, "Skinny", pinfo->fd->num); } break; @@ -1480,8 +1485,8 @@ static void dissect_skinny_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tr proto_tree_add_item(skinny_tree, hf_skinny_customPictureFormatCount, tvb, offset+28, 4, TRUE); count = offset+32; for ( i = 0; i < MAX_CUSTOM_PICTURES; i++ ) { - ti_sub = proto_tree_add_text(skinny_tree, tvb, offset, 20, "customPictureFormat[%d]", i); - skinny_sub_tree = proto_item_add_subtree(ti_sub, ett_skinny_tree); + ti_sub = proto_tree_add_text(skinny_tree, tvb, offset, 20, "customPictureFormat[%d]", i); + skinny_sub_tree = proto_item_add_subtree(ti_sub, ett_skinny_tree); proto_tree_add_item(skinny_sub_tree, hf_skinny_pictureWidth, tvb, count, 4, TRUE); count+= 4; proto_tree_add_item(skinny_sub_tree, hf_skinny_pictureHeight, tvb, count, 4, TRUE); @@ -1493,8 +1498,8 @@ static void dissect_skinny_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tr proto_tree_add_item(skinny_sub_tree, hf_skinny_clockDivisor, tvb, count, 4, TRUE); count+= 4; } - ti_sub = proto_tree_add_text(skinny_tree, tvb, offset, 8, "confResources"); - skinny_sub_tree = proto_item_add_subtree(ti_sub, ett_skinny_tree); + ti_sub = proto_tree_add_text(skinny_tree, tvb, offset, 8, "confResources"); + skinny_sub_tree = proto_item_add_subtree(ti_sub, ett_skinny_tree); proto_tree_add_item(skinny_sub_tree, hf_skinny_activeStreamsOnRegistration, tvb, count, 4, TRUE); count+= 4; proto_tree_add_item(skinny_sub_tree, hf_skinny_maxBW, tvb, count, 4, TRUE); @@ -1503,14 +1508,14 @@ static void dissect_skinny_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tr count+= 4; skinny_sub_tree_sav = skinny_sub_tree; for ( i = 0; i < MAX_SERVICE_TYPE; i++ ) { - ti_sub = proto_tree_add_text(skinny_sub_tree_sav, tvb, offset, 20, "serviceResource[%d]", i); - skinny_sub_tree = proto_item_add_subtree(ti_sub, ett_skinny_tree); + ti_sub = proto_tree_add_text(skinny_sub_tree_sav, tvb, offset, 20, "serviceResource[%d]", i); + skinny_sub_tree = proto_item_add_subtree(ti_sub, ett_skinny_tree); proto_tree_add_item(skinny_sub_tree, hf_skinny_layoutCount, tvb, count, 4, TRUE); count+= 4; skinny_sub_tree_sav_sav = skinny_sub_tree_sav; for ( t = 0; t < MAX_LAYOUT_WITH_SAME_SERVICE; t++ ) { - ti_sub = proto_tree_add_text(skinny_sub_tree_sav, tvb, offset, 20, "layouts[%d]", t); - skinny_sub_tree = proto_item_add_subtree(ti_sub, ett_skinny_tree); + ti_sub = proto_tree_add_text(skinny_sub_tree_sav, tvb, offset, 20, "layouts[%d]", t); + skinny_sub_tree = proto_item_add_subtree(ti_sub, ett_skinny_tree); proto_tree_add_item(skinny_sub_tree, hf_skinny_layout, tvb, count, 4, TRUE); count+= 4; } @@ -1525,79 +1530,79 @@ static void dissect_skinny_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tr count+= 4; } for ( i = 0; i < StationMaxCapabilities; i++ ) { - ti_sub = proto_tree_add_text(skinny_tree, tvb, offset, 20, "audiocaps[%d]", i); - skinny_sub_tree = proto_item_add_subtree(ti_sub, ett_skinny_tree); - proto_tree_add_item(skinny_sub_tree, hf_skinny_payloadCapability, tvb, count, 4, TRUE); + ti_sub = proto_tree_add_text(skinny_tree, tvb, offset, 20, "audiocaps[%d]", i); + skinny_sub_tree = proto_item_add_subtree(ti_sub, ett_skinny_tree); + proto_tree_add_item(skinny_sub_tree, hf_skinny_payloadCapability, tvb, count, 4, TRUE); count+= 4; - proto_tree_add_item(skinny_sub_tree, hf_skinny_maxFramesPerPacket, tvb, count, 2, TRUE); + proto_tree_add_item(skinny_sub_tree, hf_skinny_maxFramesPerPacket, tvb, count, 2, TRUE); count+= 4; /* skip past union it is only for G723 */ count+= 8; } for ( i = 0; i < StationMaxVideoCapabilities; i++ ) { - ti_sub = proto_tree_add_text(skinny_tree, tvb, offset, 20, "vidCaps[%d]", i); - skinny_sub_tree = proto_item_add_subtree(ti_sub, ett_skinny_tree); - proto_tree_add_item(skinny_sub_tree, hf_skinny_payloadCapability, tvb, count, 4, TRUE); + ti_sub = proto_tree_add_text(skinny_tree, tvb, offset, 20, "vidCaps[%d]", i); + skinny_sub_tree = proto_item_add_subtree(ti_sub, ett_skinny_tree); + proto_tree_add_item(skinny_sub_tree, hf_skinny_payloadCapability, tvb, count, 4, TRUE); count+= 4; - proto_tree_add_item(skinny_sub_tree, hf_skinny_transmitOrReceive, tvb, count, 4, TRUE); + proto_tree_add_item(skinny_sub_tree, hf_skinny_transmitOrReceive, tvb, count, 4, TRUE); count+= 4; - proto_tree_add_item(skinny_sub_tree, hf_skinny_levelPreferenceCount, tvb, count, 4, TRUE); + proto_tree_add_item(skinny_sub_tree, hf_skinny_levelPreferenceCount, tvb, count, 4, TRUE); count+= 4; skinny_sub_tree_sav = skinny_sub_tree; for ( t = 0; t < MAX_LEVEL_PREFERENCE; t++ ) { - ti_sub = proto_tree_add_text(skinny_sub_tree_sav, tvb, offset, 20, "levelPreference[%d]", t); - skinny_sub_tree = proto_item_add_subtree(ti_sub, ett_skinny_tree); - proto_tree_add_item(skinny_sub_tree, hf_skinny_transmitPreference, tvb, count, 4, TRUE); + ti_sub = proto_tree_add_text(skinny_sub_tree_sav, tvb, offset, 20, "levelPreference[%d]", t); + skinny_sub_tree = proto_item_add_subtree(ti_sub, ett_skinny_tree); + proto_tree_add_item(skinny_sub_tree, hf_skinny_transmitPreference, tvb, count, 4, TRUE); count+= 4; - proto_tree_add_item(skinny_sub_tree, hf_skinny_format, tvb, count, 4, TRUE); + proto_tree_add_item(skinny_sub_tree, hf_skinny_format, tvb, count, 4, TRUE); count+= 4; - proto_tree_add_item(skinny_sub_tree, hf_skinny_maxBitRate, tvb, count, 4, TRUE); + proto_tree_add_item(skinny_sub_tree, hf_skinny_maxBitRate, tvb, count, 4, TRUE); count+= 4; - proto_tree_add_item(skinny_sub_tree, hf_skinny_minBitRate, tvb, count, 4, TRUE); + proto_tree_add_item(skinny_sub_tree, hf_skinny_minBitRate, tvb, count, 4, TRUE); count+= 4; - proto_tree_add_item(skinny_sub_tree, hf_skinny_MPI, tvb, count, 4, TRUE); + proto_tree_add_item(skinny_sub_tree, hf_skinny_MPI, tvb, count, 4, TRUE); count+= 4; - proto_tree_add_item(skinny_sub_tree, hf_skinny_serviceNumber, tvb, count, 4, TRUE); + proto_tree_add_item(skinny_sub_tree, hf_skinny_serviceNumber, tvb, count, 4, TRUE); count+= 4; } val = count; /* H.261 */ - ti_sub = proto_tree_add_text(skinny_sub_tree_sav, tvb, offset, 8, "h261VideoCapability"); - skinny_sub_tree = proto_item_add_subtree(ti_sub, ett_skinny_tree); - proto_tree_add_item(skinny_sub_tree, hf_skinny_temporalSpatialTradeOffCapability, tvb, count, 4, TRUE); + ti_sub = proto_tree_add_text(skinny_sub_tree_sav, tvb, offset, 8, "h261VideoCapability"); + skinny_sub_tree = proto_item_add_subtree(ti_sub, ett_skinny_tree); + proto_tree_add_item(skinny_sub_tree, hf_skinny_temporalSpatialTradeOffCapability, tvb, count, 4, TRUE); count+= 4; - proto_tree_add_item(skinny_sub_tree, hf_skinny_stillImageTransmission, tvb, count, 4, TRUE); + proto_tree_add_item(skinny_sub_tree, hf_skinny_stillImageTransmission, tvb, count, 4, TRUE); count+= 4; /* H.263 */ count = val; - ti_sub = proto_tree_add_text(skinny_sub_tree_sav, tvb, offset, 8, "h263VideoCapability"); - skinny_sub_tree = proto_item_add_subtree(ti_sub, ett_skinny_tree); - proto_tree_add_item(skinny_sub_tree, hf_skinny_h263_capability_bitfield, tvb, count, 4, TRUE); + ti_sub = proto_tree_add_text(skinny_sub_tree_sav, tvb, offset, 8, "h263VideoCapability"); + skinny_sub_tree = proto_item_add_subtree(ti_sub, ett_skinny_tree); + proto_tree_add_item(skinny_sub_tree, hf_skinny_h263_capability_bitfield, tvb, count, 4, TRUE); count+= 4; - proto_tree_add_item(skinny_sub_tree, hf_skinny_annexNandWFutureUse, tvb, count, 4, TRUE); + proto_tree_add_item(skinny_sub_tree, hf_skinny_annexNandWFutureUse, tvb, count, 4, TRUE); count+= 4; /* Video */ count = val; - ti_sub = proto_tree_add_text(skinny_sub_tree_sav, tvb, offset, 8, "vieoVideoCapability"); - skinny_sub_tree = proto_item_add_subtree(ti_sub, ett_skinny_tree); - proto_tree_add_item(skinny_sub_tree, hf_skinny_modelNumber, tvb, count, 4, TRUE); + ti_sub = proto_tree_add_text(skinny_sub_tree_sav, tvb, offset, 8, "vieoVideoCapability"); + skinny_sub_tree = proto_item_add_subtree(ti_sub, ett_skinny_tree); + proto_tree_add_item(skinny_sub_tree, hf_skinny_modelNumber, tvb, count, 4, TRUE); count+= 4; - proto_tree_add_item(skinny_sub_tree, hf_skinny_bandwidth, tvb, count, 4, TRUE); + proto_tree_add_item(skinny_sub_tree, hf_skinny_bandwidth, tvb, count, 4, TRUE); count+= 4; } for ( i = 0; i < StationMaxDataCapabilities; i++ ) { - ti_sub = proto_tree_add_text(skinny_tree, tvb, offset, 20, "dataCaps[%d]", i); - skinny_sub_tree = proto_item_add_subtree(ti_sub, ett_skinny_tree); - proto_tree_add_item(skinny_sub_tree, hf_skinny_payloadCapability, tvb, count, 4, TRUE); + ti_sub = proto_tree_add_text(skinny_tree, tvb, offset, 20, "dataCaps[%d]", i); + skinny_sub_tree = proto_item_add_subtree(ti_sub, ett_skinny_tree); + proto_tree_add_item(skinny_sub_tree, hf_skinny_payloadCapability, tvb, count, 4, TRUE); count+= 4; - proto_tree_add_item(skinny_sub_tree, hf_skinny_transmitOrReceive, tvb, count, 4, TRUE); + proto_tree_add_item(skinny_sub_tree, hf_skinny_transmitOrReceive, tvb, count, 4, TRUE); count+= 4; - proto_tree_add_item(skinny_sub_tree, hf_skinny_protocolDependentData, tvb, count, 4, TRUE); + proto_tree_add_item(skinny_sub_tree, hf_skinny_protocolDependentData, tvb, count, 4, TRUE); count+= 4; - proto_tree_add_item(skinny_sub_tree, hf_skinny_maxBitRate, tvb, count, 4, TRUE); + proto_tree_add_item(skinny_sub_tree, hf_skinny_maxBitRate, tvb, count, 4, TRUE); count+= 4; } break; @@ -1765,9 +1770,14 @@ static void dissect_skinny_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tr proto_tree_add_item(skinny_tree, hf_skinny_maxFramesPerPacket, tvb, offset+44, 2, TRUE); proto_tree_add_item(skinny_tree, hf_skinny_g723BitRate, tvb, offset+48, 4, TRUE); if((!pinfo->fd->flags.visited) && rtp_handle){ - guint32 ipv4_address; - tvb_memcpy(tvb, (char*)&ipv4_address, offset+20, 4); - rtp_add_address(pinfo, (char *)&ipv4_address, tvb_get_letohl(tvb, offset+24), 0, "Skinny", pinfo->fd->num); + address src_addr; + guint32 ipv4_address; + + src_addr.type=AT_IPv4; + src_addr.len=4; + src_addr.data=(char *)&ipv4_address; + tvb_memcpy(tvb, (char *)&ipv4_address, offset+20, 4); + rtp_add_address(pinfo, &src_addr, tvb_get_letohl(tvb, offset+24), 0, "Skinny", pinfo->fd->num); } break; |