diff options
author | João Valverde <joao.valverde@tecnico.ulisboa.pt> | 2016-02-10 09:11:12 +0000 |
---|---|---|
committer | João Valverde <j@v6e.pt> | 2016-02-19 15:55:09 +0000 |
commit | 8bee8bad813446bbf75428a8cdd756fe6063ca6f (patch) | |
tree | d6a335bcf1bf745c36fcefefab3356f6c1705a05 /wsutil/inet_addr-int.h | |
parent | 5fec8fa74619a69e3faeca01fd483157d39f7b13 (diff) |
Add inet_pton/inet_ntop interface to libwsutil
Change-Id: Ifc344ed33f2f7ca09a6912a5adb49dc35f07c81f
Reviewed-on: https://code.wireshark.org/review/13881
Petri-Dish: João Valverde <j@v6e.pt>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: João Valverde <j@v6e.pt>
Diffstat (limited to 'wsutil/inet_addr-int.h')
-rw-r--r-- | wsutil/inet_addr-int.h | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/wsutil/inet_addr-int.h b/wsutil/inet_addr-int.h new file mode 100644 index 0000000000..631787dfca --- /dev/null +++ b/wsutil/inet_addr-int.h @@ -0,0 +1,62 @@ +/* inet_addr-int.h + * + * Wireshark - Network traffic analyzer + * By Gerald Combs <gerald@wireshark.org> + * Copyright 1998 Gerald Combs + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + */ + +#ifndef __WS_INET_ADDR_INT_H__ +#define __WS_INET_ADDR_INT_H__ + +#include "config.h" + +#ifdef HAVE_ARPA_INET_H +#include <arpa/inet.h> +#endif + +#ifdef HAVE_SYS_SOCKET_H +#include <sys/socket.h> /* needed to define AF_ values on UNIX */ +#endif + +#ifdef HAVE_WINSOCK2_H +#include <winsock2.h> /* needed to define AF_ values on Windows */ +#if _MSC_VER < 1600 /* errno.h defines EAFNOSUPPORT in Windows VC10 (and presumably eventually in VC11 ...) */ +#define EAFNOSUPPORT WSAEAFNOSUPPORT +#endif +#endif + +/* + * Versions of "inet_pton()" and "inet_ntop()", for the benefit of OSes that + * don't have it. + */ +#ifndef HAVE_INET_PTON +extern int inet_pton(int af, const char *src, void *dst); +#endif + +#ifndef HAVE_INET_NTOP_PROTO +extern const char *inet_ntop(int af, const void *src, char *dst, size_t size); +#endif + +/* + * Those OSes may also not have AF_INET6, so declare it here if it's not + * already declared, so that we can pass it to "inet_ntop()" and "inet_pton()". + */ +#ifndef AF_INET6 +#define AF_INET6 127 /* pick a value unlikely to duplicate an existing AF_ value */ +#endif + +#endif |