Wireshark  4.3.0
The Wireshark network protocol analyzer
inet_cidr.h
Go to the documentation of this file.
1 
16 #ifndef __IPV4_H__
17 #define __IPV4_H__
18 
19 #include <wireshark.h>
20 #include <wsutil/inet_addr.h>
21 
22 typedef struct {
23  guint32 addr; /* stored in host order */
24  guint32 nmask; /* stored in host order */
26 
27 typedef struct {
28  ws_in6_addr addr;
29  guint32 prefix;
31 
32 /*
33  ********** IPv4 *********
34  */
35 
42 WS_DLL_PUBLIC
43 uint32_t
44 ws_ipv4_get_subnet_mask(const uint32_t mask_length);
45 
46 WS_DLL_PUBLIC
47 void
48 ws_ipv4_addr_and_mask_init(ipv4_addr_and_mask *dst, ws_in4_addr src_addr, int src_bits);
49 
50 WS_DLL_PUBLIC
51 bool
52 ws_ipv4_addr_and_mask_contains(const ipv4_addr_and_mask *ipv4, const ws_in4_addr *addr);
53 
54 /*
55  ********** IPv6 *********
56  */
57 
58 WS_DLL_PUBLIC
59 bool
60 ws_ipv6_addr_and_prefix_contains(const ipv6_addr_and_prefix *ipv6, const ws_in6_addr *addr);
61 
62 #endif
WS_DLL_PUBLIC uint32_t ws_ipv4_get_subnet_mask(const uint32_t mask_length)
Definition: inet_cidr.c:14
Definition: inet_addr.h:21
Definition: inet_cidr.h:22
Definition: inet_cidr.h:27