18d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt/* 28d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt * IP address processing 38d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt * Copyright (c) 2003-2006, Jouni Malinen <j@w1.fi> 48d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt * 5c5ec7f57ead87efa365800228aa0b09a12d9e6c4Dmitry Shmidt * This software may be distributed under the terms of the BSD license. 6c5ec7f57ead87efa365800228aa0b09a12d9e6c4Dmitry Shmidt * See README for more details. 78d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt */ 88d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 98d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt#ifndef IP_ADDR_H 108d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt#define IP_ADDR_H 118d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 128d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtstruct hostapd_ip_addr { 138d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt int af; /* AF_INET / AF_INET6 */ 148d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt union { 158d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt struct in_addr v4; 168d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt#ifdef CONFIG_IPV6 178d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt struct in6_addr v6; 188d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt#endif /* CONFIG_IPV6 */ 198d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt u8 max_len[16]; 208d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt } u; 218d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt}; 228d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 238d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtconst char * hostapd_ip_txt(const struct hostapd_ip_addr *addr, char *buf, 248d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt size_t buflen); 258d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidtint hostapd_parse_ip_addr(const char *txt, struct hostapd_ip_addr *addr); 268d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 278d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt#endif /* IP_ADDR_H */ 28