Before this patch we could exit the process without waiting for
file writing task to complete.
As a result a file could become corrupted or a large chunk of data
could be missing.
Now the main thread either waits until file writing task completes
or it writes log buffer to file itself.
* dnsforward: prioritize host files over null filter
* dnsforward, config: adjust setting variable to blocking_mode
* dnsforward: use net.IPv4zero for null IP
1. Added --workdir command-line argument that lets configure the working dir.
2. Made "dnsforward" use this workdir parameter when saving/reading querylog.
3. Reworked "dnsforward" -- moved http handlers out of there to control.go
* commit 'b0c4d88d5454f8dd5a92a73615cce3a31450f56b': (45 commits)
Indicate that DHCP is experimental
Update dnsproxy and dnscrypt, and run go mod tidy.
Fix race conditions found by -race
move log wrapper library outside into hmage/golibs/log
Added check for active DHCP before enable
Use new log wrapper and add more functions to it.
Implement a log wrapper
/dhcp/status -- give out hostname for UI
dhcpd -- Remember hostname, for UI.
Update comment why filter_conn.go is needed.
Fixup of previous commit.
/dhcp/find_active_dhcp -- use interface name from request body
Don't try to start DHCP server if it's not enabled.
Get rid of logrus, it's TTY output is not friendly or human parseable if we will want users to send us logs.
Flag parser -- support options without values, move code for help and verbose into table.
verbose output parameter
Pretty-format leases so it shows human readable MAC address.
Start DHCP on launch if it's enabled in config.
Update makefile to detect changes in dhcpd/*.go
DHCPD — don't forget to make Lease fields public.
...