mirror of
https://github.com/pi-hole/dnsmasq.git
synced 2025-12-19 10:18:25 +00:00
Add --enable-ubus option.
This commit is contained in:
committed by
Simon Kelley
parent
aba8bbb6e3
commit
8dcdb33be9
@@ -243,6 +243,10 @@ IPv4 or IPv6 address of the lease to remove.
|
|||||||
Note that this function will trigger the DhcpLeaseRemoved signal and the
|
Note that this function will trigger the DhcpLeaseRemoved signal and the
|
||||||
configured DHCP lease script will be run with the "del" action.
|
configured DHCP lease script will be run with the "del" action.
|
||||||
|
|
||||||
|
GetMetrics
|
||||||
|
----------
|
||||||
|
|
||||||
|
Returns an array with various metrics for DNS and DHCP.
|
||||||
|
|
||||||
|
|
||||||
2. SIGNALS
|
2. SIGNALS
|
||||||
|
|||||||
@@ -366,6 +366,11 @@ been built with DBus support. If the service name is given, dnsmasq
|
|||||||
provides service at that name, rather than the default which is
|
provides service at that name, rather than the default which is
|
||||||
.B uk.org.thekelleys.dnsmasq
|
.B uk.org.thekelleys.dnsmasq
|
||||||
.TP
|
.TP
|
||||||
|
.B --enable-ubus
|
||||||
|
Enable dnsmasq UBus interface. It sends notifications via UBus on
|
||||||
|
DHCPACK and DHCPRELEASE events. Furthermore it offers metrics.
|
||||||
|
Requires that dnsmasq has been built with UBus support.
|
||||||
|
.TP
|
||||||
.B \-o, --strict-order
|
.B \-o, --strict-order
|
||||||
By default, dnsmasq will send queries to any of the upstream servers
|
By default, dnsmasq will send queries to any of the upstream servers
|
||||||
it knows about and tries to favour servers that are known to
|
it knows about and tries to favour servers that are known to
|
||||||
|
|||||||
@@ -225,6 +225,11 @@ int main (int argc, char **argv)
|
|||||||
die(_("loop detection not available: set HAVE_LOOP in src/config.h"), NULL, EC_BADCONF);
|
die(_("loop detection not available: set HAVE_LOOP in src/config.h"), NULL, EC_BADCONF);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef HAVE_UBUS
|
||||||
|
if (option_bool(OPT_UBUS))
|
||||||
|
die(_("Ubus not available: set HAVE_UBUS in src/config.h"), NULL, EC_BADCONF);
|
||||||
|
#endif
|
||||||
|
|
||||||
if (daemon->max_port < daemon->min_port)
|
if (daemon->max_port < daemon->min_port)
|
||||||
die(_("max_port cannot be smaller than min_port"), NULL, EC_BADCONF);
|
die(_("max_port cannot be smaller than min_port"), NULL, EC_BADCONF);
|
||||||
|
|
||||||
@@ -950,7 +955,8 @@ int main (int argc, char **argv)
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef HAVE_UBUS
|
#ifdef HAVE_UBUS
|
||||||
set_ubus_listeners();
|
if (option_bool(OPT_UBUS)
|
||||||
|
set_ubus_listeners();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef HAVE_DHCP
|
#ifdef HAVE_DHCP
|
||||||
@@ -1084,7 +1090,8 @@ int main (int argc, char **argv)
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef HAVE_UBUS
|
#ifdef HAVE_UBUS
|
||||||
check_ubus_listeners();
|
if (daemon->enable_ubus)
|
||||||
|
check_ubus_listeners();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
check_dns_listeners(now);
|
check_dns_listeners(now);
|
||||||
|
|||||||
@@ -255,7 +255,8 @@ struct event_desc {
|
|||||||
#define OPT_MAC_HEX 55
|
#define OPT_MAC_HEX 55
|
||||||
#define OPT_TFTP_APREF_MAC 56
|
#define OPT_TFTP_APREF_MAC 56
|
||||||
#define OPT_RAPID_COMMIT 57
|
#define OPT_RAPID_COMMIT 57
|
||||||
#define OPT_LAST 58
|
#define OPT_UBUS 58
|
||||||
|
#define OPT_LAST 59
|
||||||
|
|
||||||
/* extra flags for my_syslog, we use a couple of facilities since they are known
|
/* extra flags for my_syslog, we use a couple of facilities since they are known
|
||||||
not to occupy the same bits as priorities, no matter how syslog.h is set up. */
|
not to occupy the same bits as priorities, no matter how syslog.h is set up. */
|
||||||
|
|||||||
@@ -163,6 +163,7 @@ struct myoption {
|
|||||||
#define LOPT_RAPID_COMMIT 351
|
#define LOPT_RAPID_COMMIT 351
|
||||||
#define LOPT_DUMPFILE 352
|
#define LOPT_DUMPFILE 352
|
||||||
#define LOPT_DUMPMASK 353
|
#define LOPT_DUMPMASK 353
|
||||||
|
#define LOPT_UBUS 354
|
||||||
|
|
||||||
#ifdef HAVE_GETOPT_LONG
|
#ifdef HAVE_GETOPT_LONG
|
||||||
static const struct option opts[] =
|
static const struct option opts[] =
|
||||||
@@ -233,6 +234,7 @@ static const struct myoption opts[] =
|
|||||||
{ "txt-record", 1, 0, 'Y' },
|
{ "txt-record", 1, 0, 'Y' },
|
||||||
{ "dns-rr", 1, 0, LOPT_RR },
|
{ "dns-rr", 1, 0, LOPT_RR },
|
||||||
{ "enable-dbus", 2, 0, '1' },
|
{ "enable-dbus", 2, 0, '1' },
|
||||||
|
{ "enable-ubus", 0, 0, LOPT_UBUS },
|
||||||
{ "bootp-dynamic", 2, 0, '3' },
|
{ "bootp-dynamic", 2, 0, '3' },
|
||||||
{ "dhcp-mac", 1, 0, '4' },
|
{ "dhcp-mac", 1, 0, '4' },
|
||||||
{ "no-ping", 0, 0, '5' },
|
{ "no-ping", 0, 0, '5' },
|
||||||
@@ -420,6 +422,7 @@ static struct {
|
|||||||
{ 'z', OPT_NOWILD, NULL, gettext_noop("Bind only to interfaces in use."), NULL },
|
{ 'z', OPT_NOWILD, NULL, gettext_noop("Bind only to interfaces in use."), NULL },
|
||||||
{ 'Z', OPT_ETHERS, NULL, gettext_noop("Read DHCP static host information from %s."), ETHERSFILE },
|
{ 'Z', OPT_ETHERS, NULL, gettext_noop("Read DHCP static host information from %s."), ETHERSFILE },
|
||||||
{ '1', ARG_ONE, "[=<busname>]", gettext_noop("Enable the DBus interface for setting upstream servers, etc."), NULL },
|
{ '1', ARG_ONE, "[=<busname>]", gettext_noop("Enable the DBus interface for setting upstream servers, etc."), NULL },
|
||||||
|
{ LOPT_UBUS, OPT_UBUS, NULL, gettext_noop("Enable the UBus interface."), NULL },
|
||||||
{ '2', ARG_DUP, "<interface>", gettext_noop("Do not provide DHCP on this interface, only provide DNS."), NULL },
|
{ '2', ARG_DUP, "<interface>", gettext_noop("Do not provide DHCP on this interface, only provide DNS."), NULL },
|
||||||
{ '3', ARG_DUP, "[=tag:<tag>]...", gettext_noop("Enable dynamic address allocation for bootp."), NULL },
|
{ '3', ARG_DUP, "[=tag:<tag>]...", gettext_noop("Enable dynamic address allocation for bootp."), NULL },
|
||||||
{ '4', ARG_DUP, "set:<tag>,<mac address>", gettext_noop("Map MAC address (with wildcards) to option set."), NULL },
|
{ '4', ARG_DUP, "set:<tag>,<mac address>", gettext_noop("Map MAC address (with wildcards) to option set."), NULL },
|
||||||
|
|||||||
Reference in New Issue
Block a user