| Wireshark 4.7.0 The Wireshark network protocol analyzer

Loading...
Searching...
No Matches
iana-ip.h
1/* iana-ip.h
2 *
3 * Wireshark - Network traffic analyzer
4 * By Gerald Combs <gerald@wireshark.org>
5 * Copyright 1998 Gerald Combs
6 *
7 * SPDX-License-Identifier: GPL-2.0-or-later
8 */
9#ifndef __IANA_IP_H__
10#define __IANA_IP_H__
11
12#include <wireshark.h>
13#include <wsutil/inet_cidr.h>
14
15#ifdef __cplusplus
16extern "C" {
17#endif /* __cplusplus */
18
19enum iana_ip {
20 WS_IANA_IPv4 = 4,
21 WS_IANA_IPv6 = 6,
22};
23
24 struct ws_iana_ip_special_block {
25 enum iana_ip type;
26 union {
27 ipv4_addr_and_mask ipv4;
28 ipv6_addr_and_prefix ipv6;
29 } u_ip;
30 const char *name;
31 /* true = 1; false = 0; n/a = -1 */
32 int source, destination, forwardable, global, reserved;
33};
34
35WS_DLL_PUBLIC
36const struct ws_iana_ip_special_block *
37ws_iana_ipv4_special_block_lookup(uint32_t ipnum);
38
39WS_DLL_PUBLIC
40const struct ws_iana_ip_special_block *
41ws_iana_ipv6_special_block_lookup(const ws_in6_addr *addr);
42
43#ifdef __cplusplus
44}
45#endif /* __cplusplus */
46
47#endif
inet_cidr.h
e_in6_addr
Represents a 128-bit IPv6 address.
Definition inet_addr.h:27
ipv4_addr_and_mask
Definition inet_cidr.h:22
ipv6_addr_and_prefix
Definition inet_cidr.h:27
ws_iana_ip_special_block
Definition iana-ip.h:24