diff options
author | Jakub Zawadzki <darkjames-ws@darkjames.pl> | 2013-12-21 16:16:56 +0000 |
---|---|---|
committer | Jakub Zawadzki <darkjames-ws@darkjames.pl> | 2013-12-21 16:16:56 +0000 |
commit | 3d6fdc55d06aba5a8a73c7d77792963a941ad58a (patch) | |
tree | 87c3615c3e63ce2fbf46709ffb1cb96f79c4b6a1 /epan/dissectors/packet-sdp.c | |
parent | aa4b08e2ca2785e22e8e49271b7513a28275bbe1 (diff) |
New functions: str_to_ip6(), str_to_ip()
This way we can avoid including lot of system header files in some dissectors
and it might fix bug #9581
svn path=/trunk/; revision=54330
Diffstat (limited to 'epan/dissectors/packet-sdp.c')
-rw-r--r-- | epan/dissectors/packet-sdp.c | 30 |
1 files changed, 4 insertions, 26 deletions
diff --git a/epan/dissectors/packet-sdp.c b/epan/dissectors/packet-sdp.c index dadfbaea86..d6f7f165aa 100644 --- a/epan/dissectors/packet-sdp.c +++ b/epan/dissectors/packet-sdp.c @@ -28,27 +28,6 @@ #include "config.h" -#ifdef HAVE_SYS_TYPES_H -#include <sys/types.h> -#endif -#ifdef HAVE_SYS_SOCKET_H -#include <sys/socket.h> -#endif -#ifdef HAVE_NETINET_IN_H -# include <netinet/in.h> -#endif -#ifdef HAVE_ARPA_INET_H -#include <arpa/inet.h> -#endif - -#ifdef HAVE_WINSOCK2_H -#include <winsock2.h> /* needed to define AF_ values on Windows */ -#endif - -#ifdef NEED_INET_V6DEFS_H -# include "wsutil/inet_v6defs.h" -#endif - #include <glib.h> #include <epan/packet.h> @@ -1357,9 +1336,8 @@ static void dissect_sdp_media_attribute(tvbuff_t *tvb, packet_info *pinfo, proto port_end_offset = tvb_find_guint8(tvb, port_offset, -1, ';'); } /* Attempt to convert address */ - if (inet_pton(AF_INET, - (char*)tvb_get_string(wmem_packet_scope(), tvb, address_offset, port_offset-address_offset), - &media_info->msrp_ipaddr) > 0) { + if (str_to_ip((char*)tvb_get_string(wmem_packet_scope(), tvb, address_offset, port_offset-address_offset), + &media_info->msrp_ipaddr)) { /* Get port number */ media_info->msrp_port_number = atoi((char*)tvb_get_string(wmem_packet_scope(), tvb, port_offset + 1, port_end_offset - port_offset - 1)); /* Set flag so this info can be used */ @@ -1663,7 +1641,7 @@ convert_disposable_media(transport_info_t* transport_info, disposable_media_info (media_info->connection_type != NULL)) { if (strcmp(media_info->connection_type, "IP4") == 0) { transport_info->src_addr[transport_index].data = wmem_alloc(wmem_file_scope(), 4); - if (inet_pton(AF_INET, media_info->connection_address, (void*)transport_info->src_addr[transport_index].data) > 0) { + if (str_to_ip(media_info->connection_address, (void*)transport_info->src_addr[transport_index].data)) { /* connection_address could be converted to a valid ipv4 address*/ transport_info->proto_bitmask[transport_index] |= SDP_IPv4; transport_info->src_addr[transport_index].type = AT_IPv4; @@ -1671,7 +1649,7 @@ convert_disposable_media(transport_info_t* transport_info, disposable_media_info } } else if (strcmp(media_info->connection_type, "IP6") == 0) { transport_info->src_addr[transport_index].data = wmem_alloc(wmem_file_scope(), 16); - if (inet_pton(AF_INET6, media_info->connection_address, (void*)transport_info->src_addr[transport_index].data) > 0) { + if (str_to_ip6(media_info->connection_address, (void*)transport_info->src_addr[transport_index].data)) { /* connection_address could be converted to a valid ipv6 address*/ transport_info->proto_bitmask[transport_index] |= SDP_IPv6; transport_info->src_addr[transport_index].type = AT_IPv6; |