wireguard-go/device
Josh Bleecher Snyder 7139279cd0 device: change logging interface to use functions
This commit overhauls wireguard-go's logging.

The primary, motivating change is to use a function instead
of a *log.Logger as the basic unit of logging.
Using functions provides a lot more flexibility for
people to bring their own logging system.

It also introduces logging helper methods on Device.
These reduce line noise at the call site.
They also allow for log functions to be nil;
when nil, instead of generating a log line and throwing it away,
we don't bother generating it at all.
This spares allocation and pointless work.

This is a breaking change, although the fix required
of clients is fairly straightforward.

Signed-off-by: Josh Bleecher Snyder <josh@tailscale.com>
2021-01-26 22:40:20 +01:00
..
allowedips.go global: update header comments and modules 2020-05-02 02:08:26 -06:00
allowedips_rand_test.go all: use ++ to increment 2021-01-07 14:49:44 +01:00
allowedips_test.go device: remove unused trie test code 2021-01-20 20:03:40 +01:00
bind_test.go device: remove unused fields from DummyDatagram and DummyBind 2021-01-20 20:03:40 +01:00
constants.go replay: account for fqcodel reordering 2020-05-19 17:46:35 -06:00
cookie.go global: update header comments and modules 2020-05-02 02:08:26 -06:00
cookie_test.go global: update header comments and modules 2020-05-02 02:08:26 -06:00
device.go device: change logging interface to use functions 2021-01-26 22:40:20 +01:00
device_test.go device: add benchmark for UAPI Device.IpcGetOperation 2021-01-26 11:40:24 -08:00
endpoint_test.go global: update header comments and modules 2020-05-02 02:08:26 -06:00
indextable.go device: remove some unnecessary unsafe 2020-07-15 06:59:44 +10:00
ip.go global: update header comments and modules 2020-05-02 02:08:26 -06:00
kdf_test.go global: update header comments and modules 2020-05-02 02:08:26 -06:00
keypair.go device: fix races from changing private_key 2021-01-07 14:49:44 +01:00
logger.go device: change logging interface to use functions 2021-01-26 22:40:20 +01:00
misc.go global: update header comments and modules 2020-05-02 02:08:26 -06:00
mobilequirks.go device: format a few things 2020-11-06 18:01:27 +01:00
noise-helpers.go global: update header comments and modules 2020-05-02 02:08:26 -06:00
noise-protocol.go device: change logging interface to use functions 2021-01-26 22:40:20 +01:00
noise-types.go global: update header comments and modules 2020-05-02 02:08:26 -06:00
noise_test.go device: check returned errors from NewPeer in TestNoiseHandshake 2021-01-20 19:57:01 +01:00
peer.go device: change logging interface to use functions 2021-01-26 22:40:20 +01:00
peer_test.go device: avoid copying lock in tests 2020-12-08 14:25:10 -08:00
pools.go all: use ++ to increment 2021-01-07 14:49:44 +01:00
queueconstants_android.go global: update header comments and modules 2020-05-02 02:08:26 -06:00
queueconstants_default.go global: update header comments and modules 2020-05-02 02:08:26 -06:00
queueconstants_ios.go global: update header comments and modules 2020-05-02 02:08:26 -06:00
receive.go device: change logging interface to use functions 2021-01-26 22:40:20 +01:00
send.go device: change logging interface to use functions 2021-01-26 22:40:20 +01:00
sticky_default.go device: do not include sticky sockets on android 2020-06-07 01:50:20 -06:00
sticky_linux.go device: use RTMGRP_IPV4_ROUTE to specify multicast groups mask 2020-07-13 17:58:10 -06:00
timers.go device: change logging interface to use functions 2021-01-26 22:40:20 +01:00
tun.go device: change logging interface to use functions 2021-01-26 22:40:20 +01:00
tun_test.go global: update header comments and modules 2020-05-02 02:08:26 -06:00
uapi.go device: change logging interface to use functions 2021-01-26 22:40:20 +01:00
version.go version: bump snapshot 2020-11-18 14:24:17 +01:00