ip_addr.h revision 8d520ff1dc2da35cdca849e982051b86468016d8
1/*
2 * IP address processing
3 * Copyright (c) 2003-2006, Jouni Malinen <j@w1.fi>
4 *
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License version 2 as
7 * published by the Free Software Foundation.
8 *
9 * Alternatively, this software may be distributed under the terms of BSD
10 * license.
11 *
12 * See README and COPYING for more details.
13 */
14
15#ifndef IP_ADDR_H
16#define IP_ADDR_H
17
18struct hostapd_ip_addr {
19	int af; /* AF_INET / AF_INET6 */
20	union {
21		struct in_addr v4;
22#ifdef CONFIG_IPV6
23		struct in6_addr v6;
24#endif /* CONFIG_IPV6 */
25		u8 max_len[16];
26	} u;
27};
28
29const char * hostapd_ip_txt(const struct hostapd_ip_addr *addr, char *buf,
30			    size_t buflen);
31int hostapd_ip_diff(struct hostapd_ip_addr *a, struct hostapd_ip_addr *b);
32int hostapd_parse_ip_addr(const char *txt, struct hostapd_ip_addr *addr);
33
34#endif /* IP_ADDR_H */
35