summaryrefslogtreecommitdiffhomepage
path: root/src/config.c
AgeCommit message (Collapse)Author
2017-01-05config: respect ignore uci optionJo-Philipp Wich
The odhcpd documentation currently implies that "option ignore 1" in a section of type "dhcp" will disable any services on the referenced interface while the code actually ignores the setting when initializing referenced interfaces. This commonly leads to situations where users think that "option disabled" will prevent any server activity on a given interface while in reality odhcpd effectively acts as rogue DHCPv6 server in its default configuration. To fully inhibit any activity, one has to specify both "option ignore 1" as well as "option ra disabled", "option ndp disabled" and "option dhcpv6 disabled" which is highly counter intuitive at best. A previous commit (5f425ed Respect interface "ignore" settings as documented.) attempted to address the problem by observing the value of i->ignore instead of unconditionally enabling all protocols but broke the ability to use DHCPv6 relay mode while having DHCPv4 disabled. This patch changes ... - the enabling of services on an interface to use the value of the ignore option as default choice instead of hardcoding "true" - the options "ra", "ndp", "dhcpv4" and "dhcpv6" to take precedence over the default "ignore" state to allow selectively enabling services on ignored interfaces - the README to clarify the fact that "ra", "ndp", "dhcpv4" and "dhcpv6" can now override "option ignore" Signed-off-by: Jo-Philipp Wich <jo@mein.io> Acked-by: Karl Palsson <karlp@etactica.com> Tested-by: Stijn Tintel <stijn@linux-ipv6.be> Tested-by: Hans Dedecker <dedeckeh@gmail.com>
2016-12-29config: use free_lease to delete a leaseHans Dedecker
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2016-12-29config: coding style fixesHans Dedecker
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2016-12-29config: Create statefile dirHans Dedecker
Create statefile dir if the specified dir does not yet exist Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2016-12-27Revert "Respect interface "ignore" settings as documented."Stijn Tintel
This reverts commit 5f425ed1e5f92397e27ec4f44820b6ef677b8134. Both dnsmasq and odhcpd use the ignore option. This is fine for normal operation, but it breaks DHCPv6 relay when dnsmasq is disabled on the wan interface. Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2016-12-12config: Fix RA interface config being overwrittenHans Dedecker
In case multiple dhcp uci sections are configured and one section contains RA config while the other section does not; the RA interface config of the first section will be overwritten by the second section. Fix this by setting the default values for ra_management and ndp_proxy_routing uci parameters when the interface is created and by removing the overwrite check Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2016-11-21Respect interface "ignore" settings as documented.Karl Palsson
The "ignore" option is correctly loaded. Actually observe it as documented. Signed-off-by: Karl Palsson <karlp@etactica.com>
2016-11-21config: Support infinite as DHCP pool leasetime valueHans Dedecker
Add support for infinite leasetime value; this can be done by specifying "infinite" as leasetime value which is similar to dnsmasq infinite leasetime support. Specifying "infinite" as leasetime is valid for both the host and dhcp uci sections. A DHCPv4/DHCPv6 assignment is now considered infinite if valid_unil holds the value 0. Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2016-05-19Add per-host leasetime supportSteven Barth
Patch by Daniel Dickinson Signed-off-by: Steven Barth <steven@midlink.org>
2015-12-15config: blobmsg_check_attr expects bool type as last argumentHans Dedecker
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2015-11-27config: Prioritize ifname resolving via ubus over ifname/networkid attributesHans Dedecker
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2015-11-27config: Close interface when ifindex cannot be resolvedHans Dedecker
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2015-07-14Remove unsolicited unicast RAs, adjust intervalsSteven Barth
2015-04-21config: fix typo in reload_cbSteven Barth
2015-03-30properly handle return codesJohn Crispin
Signed-off-by: John Crispin <blogic@openwrt.org>
2014-10-17ndp: more fixesSteven Barth
2014-10-16Begin rewrite of NDP-relaySteven Barth
2014-10-16router: add support for router addressSteven Barth
2014-09-25config: remove spurious free() callSteven Barth
2014-08-12dhcpv4: implement router configuration optionChristian Mehlis
RFC 2132 defines: 3.5. Router Option The router option specifies a list of IP addresses for routers on the client's subnet. Routers SHOULD be listed in order of preference. The code for the router option is 3. The minimum length for the router option is 4 octets, and the length MUST always be a multiple of 4. Code Len Address 1 Address 2 +-----+-----+-----+-----+-----+-----+-----+-----+-- | 3 | n | a1 | a2 | a3 | a4 | a1 | a2 | ... +-----+-----+-----+-----+-----+-----+-----+-----+--
2014-07-22Revert "rewrite of NDP proxy" for nowSteven Barth
2014-07-16Initial rewrite of NDP proxySteven Barth
2014-06-17Make hostid more convenientSteven Barth
2014-06-16config: accept domains with trailing .Steven Barth
2014-05-30Make filtering customizableSteven Barth
2014-05-25Add support for raw DHCPv6 attributesSteven Barth
2014-04-09config: use correct defaults if interface is not in UCISteven Barth
2014-04-01Complete managed PD/CER-ID supportSteven Barth
2014-02-25config: more static ndp fixesSteven Barth
2014-01-23Fix ra_management and ndproxy_routing config overwriteHans Dedecker
Set default values for the ra_management and ndproxy_routing config parameters if no attributes are present and overwrite is to true.
2014-01-18Fix memory corruption when reloading static leasesSteven Barth
2014-01-17Don't enable relay master if no slaves are presentSteven Barth
2014-01-17Use hybrid management mode by defaultSteven Barth
2014-01-17Fix prefix detection for hybrid modeSteven Barth
2014-01-13Fix interface ignore overwriteHans Dedecker
Don't overwrite interface ignore uci parameter when resolving ifindex. Don't put interface in use when ifindex is unknown as interface cannot be setup and needs to be closed.
2014-01-07Rename legacy to maindhcpSteven Barth
2014-01-03Use OpenWrt standard lease formatSteven Barth
2014-01-03Learn routes in NDP-proxy by defaultSteven Barth
2014-01-03Remove ula_compat featureSteven Barth
2014-01-03fix ifindex detectionSteven Barth
2013-12-05Fix possible SEGFAULT conditionsHans Dedecker
2013-12-05Fix uci odhcpd config parsingHans Dedecker
2013-10-23Fix cleanup of interfacesSteven Barth
2013-10-16Loop until ubus connection succeedsSteven Barth
2013-10-16Minor fixesSteven Barth
2013-10-16Rewrite reload logicSteven Barth
2013-10-15Handle reload mechanismSteven Barth
2013-10-15ubus: register subscriberSteven Barth
2013-10-15Fix illegal memory accessSteven Barth
2013-10-15Ignore missing ifname from netifdSteven Barth