2012-04-06 15:31:24 +00:00
|
|
|
/* $Id: miniupnpdtypes.h,v 1.4 2012/04/06 15:27:21 nanard Exp $ */
|
2011-09-28 19:13:20 +00:00
|
|
|
/* MiniUPnP project
|
|
|
|
* http://miniupnp.free.fr/ or http://miniupnp.tuxfamily.org/
|
2012-04-06 15:31:24 +00:00
|
|
|
* (c) 2006-2012 Thomas Bernard
|
2011-09-28 19:13:20 +00:00
|
|
|
* This software is subject to the conditions detailed
|
|
|
|
* in the LICENCE file provided within the distribution */
|
2012-09-20 20:52:51 +00:00
|
|
|
#ifndef MINIUPNPDTYPES_H_INCLUDED
|
|
|
|
#define MINIUPNPDTYPES_H_INCLUDED
|
2011-09-28 19:13:20 +00:00
|
|
|
|
|
|
|
#include "config.h"
|
|
|
|
#include <netinet/in.h>
|
2012-04-06 15:31:24 +00:00
|
|
|
#include <net/if.h>
|
2011-09-28 19:13:20 +00:00
|
|
|
#include <sys/queue.h>
|
|
|
|
|
|
|
|
/* structure and list for storing lan addresses
|
|
|
|
* with ascii representation and mask */
|
|
|
|
struct lan_addr_s {
|
2012-04-06 15:31:24 +00:00
|
|
|
char ifname[IFNAMSIZ]; /* example: eth0 */
|
|
|
|
#ifdef ENABLE_IPV6
|
|
|
|
unsigned int index; /* use if_nametoindex() */
|
|
|
|
#endif
|
2011-09-28 19:13:20 +00:00
|
|
|
char str[16]; /* example: 192.168.0.1 */
|
|
|
|
struct in_addr addr, mask; /* ip/mask */
|
|
|
|
#ifdef MULTIPLE_EXTERNAL_IP
|
|
|
|
char ext_ip_str[16];
|
|
|
|
struct in_addr ext_ip_addr;
|
|
|
|
#endif
|
|
|
|
LIST_ENTRY(lan_addr_s) list;
|
|
|
|
};
|
|
|
|
LIST_HEAD(lan_addr_list, lan_addr_s);
|
|
|
|
|
|
|
|
#endif
|