Electroneum
Loading...
Searching...
No Matches
options.h
Go to the documentation of this file.
1/* $Id: options.h,v 1.21 2012/06/29 19:26:09 nanard Exp $ */
2/* MiniUPnP project
3 * http://miniupnp.free.fr/ or http://miniupnp.tuxfamily.org/
4 * author: Ryan Wagoner
5 * (c) 2006-2014 Thomas Bernard
6 * This software is subject to the conditions detailed
7 * in the LICENCE file provided within the distribution */
8
9#ifndef OPTIONS_H_INCLUDED
10#define OPTIONS_H_INCLUDED
11
12#include "config.h"
13
14#ifndef DISABLE_CONFIG_FILE
15/* enum of option available in the miniupnpd.conf */
18 UPNPEXT_IFNAME = 1, /* ext_ifname */
19 UPNPEXT_IP, /* ext_ip */
20 UPNPLISTENING_IP, /* listening_ip */
21#ifdef ENABLE_IPV6
22 UPNPIPV6_LISTENING_IP, /* listening address for IPv6 */
23#endif /* ENABLE_IPV6 */
24 UPNPPORT, /* "port" / "http_port" */
25#ifdef ENABLE_HTTPS
26 UPNPHTTPSPORT, /* "https_port" */
27#endif
28 UPNPBITRATE_UP, /* "bitrate_up" */
29 UPNPBITRATE_DOWN, /* "bitrate_down" */
30 UPNPPRESENTATIONURL, /* presentation_url */
31#ifdef ENABLE_MANUFACTURER_INFO_CONFIGURATION
32 UPNPFRIENDLY_NAME, /* "friendly_name" */
33 UPNPMANUFACTURER_NAME, /* "manufacturer_name" */
34 UPNPMANUFACTURER_URL, /* "manufacturer_url" */
35 UPNPMODEL_NAME, /* "model_name" */
36 UPNPMODEL_DESCRIPTION, /* "model_description" */
37 UPNPMODEL_URL, /* "model_url" */
38#endif
39 UPNPNOTIFY_INTERVAL, /* notify_interval */
40 UPNPSYSTEM_UPTIME, /* "system_uptime" */
41 UPNPPACKET_LOG, /* "packet_log" */
42 UPNPUUID, /* uuid */
43 UPNPSERIAL, /* serial */
44 UPNPMODEL_NUMBER, /* model_number */
45 UPNPCLEANTHRESHOLD, /* clean_ruleset_threshold */
46 UPNPCLEANINTERVAL, /* clean_ruleset_interval */
47 UPNPENABLENATPMP, /* enable_natpmp */
48 UPNPPCPMINLIFETIME, /* minimum lifetime for PCP mapping */
49 UPNPPCPMAXLIFETIME, /* maximum lifetime for PCP mapping */
50 UPNPPCPALLOWTHIRDPARTY, /* allow third-party requests */
51#ifdef USE_NETFILTER
52 UPNPFORWARDCHAIN,
53 UPNPNATCHAIN,
54 UPNPNATPOSTCHAIN,
55#endif
56#ifdef USE_PF
57 UPNPANCHOR, /* anchor */
58 UPNPQUEUE, /* queue */
59 UPNPTAG, /* tag */
60#endif
61#ifdef PF_ENABLE_FILTER_RULES
62 UPNPQUICKRULES, /* quickrules */
63#endif
64 UPNPSECUREMODE, /* secure_mode */
65#ifdef ENABLE_LEASEFILE
66 UPNPLEASEFILE, /* lease_file */
67#endif
68 UPNPMINISSDPDSOCKET, /* minissdpdsocket */
69#ifdef IGD_V2
70 UPNPFORCEIGDDESCV1,
71#endif
72 UPNPENABLE /* enable_upnp */
73};
74
75/* readoptionsfile()
76 * parse and store the option file values
77 * returns: 0 success, -1 failure */
78int
79readoptionsfile(const char * fname);
80
81/* freeoptions()
82 * frees memory allocated to option values */
83void
85
86struct option
87{
89 const char * value;
90};
91
92extern struct option * ary_options;
93extern unsigned int num_options;
94
95#endif /* DISABLE_CONFIG_FILE */
96
97#endif /* OPTIONS_H_INCLUDED */
98
unsigned int num_options
upnpconfigoptions
Definition options.h:16
@ UPNPPORT
Definition options.h:24
@ UPNPEXT_IFNAME
Definition options.h:18
@ UPNPBITRATE_DOWN
Definition options.h:29
@ UPNPPRESENTATIONURL
Definition options.h:30
@ UPNPUUID
Definition options.h:42
@ UPNPPACKET_LOG
Definition options.h:41
@ UPNP_INVALID
Definition options.h:17
@ UPNPBITRATE_UP
Definition options.h:28
@ UPNPSECUREMODE
Definition options.h:64
@ UPNPPCPMAXLIFETIME
Definition options.h:49
@ UPNPMODEL_NUMBER
Definition options.h:44
@ UPNPEXT_IP
Definition options.h:19
@ UPNPNOTIFY_INTERVAL
Definition options.h:39
@ UPNPENABLE
Definition options.h:72
@ UPNPLISTENING_IP
Definition options.h:20
@ UPNPENABLENATPMP
Definition options.h:47
@ UPNPPCPMINLIFETIME
Definition options.h:48
@ UPNPPCPALLOWTHIRDPARTY
Definition options.h:50
@ UPNPSYSTEM_UPTIME
Definition options.h:40
@ UPNPCLEANINTERVAL
Definition options.h:46
@ UPNPSERIAL
Definition options.h:43
@ UPNPCLEANTHRESHOLD
Definition options.h:45
@ UPNPMINISSDPDSOCKET
Definition options.h:68
struct option * ary_options
int readoptionsfile(const char *fname)
void freeoptions(void)
enum upnpconfigoptions id
Definition options.h:88
const char * value
Definition options.h:89