Zbigniew Jędrzejewski-Szmek [Fri, 11 Jul 2014 13:21:15 +0000 (09:21 -0400)]
util: fix has cc check and add test
Zbigniew Jędrzejewski-Szmek [Fri, 11 Jul 2014 13:08:47 +0000 (09:08 -0400)]
shell-completion: add hostnamectl set-deployment
Jóhann B. Guðmundsson [Tue, 8 Jul 2014 21:26:05 +0000 (21:26 +0000)]
Add DEPLOYMENT to hostnamectl
[zj: remove the check against a fixed list of environments.]
Zbigniew Jędrzejewski-Szmek [Fri, 11 Jul 2014 12:25:20 +0000 (08:25 -0400)]
shell-completion,man: beef up chassis completions and description
Parameters to hostnamectl command are not optional and should not be marked
as such in the man page.
Zbigniew Jędrzejewski-Szmek [Fri, 11 Jul 2014 02:34:43 +0000 (22:34 -0400)]
man: document x-systemd.device-timeout for crypttab
https://bugs.freedesktop.org/show_bug.cgi?id=54210
Zbigniew Jędrzejewski-Szmek [Fri, 11 Jul 2014 02:18:32 +0000 (22:18 -0400)]
man: proper link for dmesg
Zbigniew Jędrzejewski-Szmek [Thu, 10 Jul 2014 12:50:32 +0000 (08:50 -0400)]
sysusers: allow overrides in /etc and /run
An administrator might want to block a certain sysusers config file from
being executed, e.g. to block the creation of a certain user.
Only a relatively short description is added in the man page, since
overrides should be relatively rare.
Lennart Poettering [Fri, 11 Jul 2014 01:15:21 +0000 (03:15 +0200)]
nss-mymachines: add new NSS module for automatically resolving addresses of all local containers
Lennart Poettering [Fri, 11 Jul 2014 01:13:24 +0000 (03:13 +0200)]
build-sys: export sd_path APIs
Lennart Poettering [Thu, 10 Jul 2014 21:33:55 +0000 (23:33 +0200)]
nss-myhostname: move NSS boilerplate to nss-util.h
Lennart Poettering [Thu, 10 Jul 2014 21:12:32 +0000 (23:12 +0200)]
machinectl: show network interface name for containers
Also, append the if indexes as scope field to the addresses we show.
That way they may be used for connecting to the containers directly.
Lennart Poettering [Thu, 10 Jul 2014 20:48:30 +0000 (22:48 +0200)]
nspawn: register external network interface with machined
Lennart Poettering [Thu, 10 Jul 2014 20:47:55 +0000 (22:47 +0200)]
machined: allow registering host-side network interfaces for communication with containers
Lennart Poettering [Thu, 10 Jul 2014 19:32:44 +0000 (21:32 +0200)]
networkd: always prefer dhcp routes over ipv4ll routes
Lennart Poettering [Thu, 10 Jul 2014 19:27:14 +0000 (21:27 +0200)]
machined: when querying addresses of a container, use same code as nss-myhostname uses
Lennart Poettering [Thu, 10 Jul 2014 19:16:40 +0000 (21:16 +0200)]
libsystemd: make use of our common sockaddr_union everywhere
Lennart Poettering [Thu, 10 Jul 2014 19:15:26 +0000 (21:15 +0200)]
shared: split out in_addr related calls from socket-util.[ch] into its private in-addr-util.[ch]
These are enough calls for a new file, and they are sufficiently
different from the sockaddr-related calls, hence let's split this out.
Lennart Poettering [Thu, 10 Jul 2014 19:01:25 +0000 (21:01 +0200)]
nss-myhostname: move local address listing logic into shared, so that we can make use of it from machined
Lennart Poettering [Thu, 10 Jul 2014 18:38:07 +0000 (20:38 +0200)]
nss-myhostname: only export the NSS entry point symbols, nothing else
Lennart Poettering [Thu, 10 Jul 2014 18:21:20 +0000 (20:21 +0200)]
machined: various modernizations when enumerating container addresses
Lennart Poettering [Thu, 10 Jul 2014 18:12:07 +0000 (20:12 +0200)]
nss-myhostname: following the usual naming scheme for .c/.h files
Lennart Poettering [Thu, 10 Jul 2014 17:55:53 +0000 (19:55 +0200)]
nss-myhostname: various modernizations
Lennart Poettering [Thu, 10 Jul 2014 16:25:51 +0000 (18:25 +0200)]
resolved: properly free network monitor
Lennart Poettering [Thu, 10 Jul 2014 16:25:08 +0000 (18:25 +0200)]
event: pull in sd-event.h from event-util.h
Lennart Poettering [Thu, 10 Jul 2014 16:24:55 +0000 (18:24 +0200)]
update TODO
Lennart Poettering [Wed, 9 Jul 2014 17:21:42 +0000 (19:21 +0200)]
sysusers: don't allow control characters in gecos fields
Lennart Poettering [Wed, 9 Jul 2014 17:20:58 +0000 (19:20 +0200)]
sysusers: don't allow user names longer than UT_NAMESIZE
As pointed out by Miloslav Trmač it might be a good idea to make sure
that usernames stay with in the utmp-defined limits.
Lennart Poettering [Wed, 9 Jul 2014 17:20:48 +0000 (19:20 +0200)]
update TODO
Michal Sekletar [Tue, 8 Jul 2014 15:42:23 +0000 (17:42 +0200)]
units: make ExecStopPost action part of ExecStart
Currently after exiting rescue shell we isolate default target. User
might want to isolate to some other target than default one. However
issuing systemctl isolate command to desired target would bring system
to default target as a consequence of running ExecStopPost action.
Having common ancestor for rescue shell and possible followup systemctl
default command should fix this. If user exits rescue shell we will
proceed with isolating default target, otherwise, on manual isolate,
parent shell process is terminated and we don't isolate default target,
but target chosen by user.
Suggested-by: Michal Schmidt <mschmidt@redhat.com>
Kay Sievers [Wed, 9 Jul 2014 12:29:20 +0000 (14:29 +0200)]
timedated: manage systemd-timesyncd directly instead of lists of alternatives
Alternative NTP implementations should add a:
Conflicts=systemd-timesyncd.service
to take over the built-in NTP functionality of systemd.
Tomasz Torcz [Wed, 9 Jul 2014 11:37:50 +0000 (13:37 +0200)]
hostnamed: update documentation with new "watch" chassis type
Lennart Poettering [Wed, 9 Jul 2014 11:20:05 +0000 (13:20 +0200)]
hostnamed: add a new chassis type for watches
Jon Severinsson [Tue, 8 Jul 2014 16:29:46 +0000 (18:29 +0200)]
journal/compress: improve xz compression performance
The new lzma2 compression options at the top of compress_blob_xz are
equivalent to using preset "0", exept for using a 1 MiB dictionary
(the same as preset "1"). This makes the memory usage at most 7.5 MiB
in the compressor, and 1 MiB in the decompressor, instead of the
previous 92 MiB in the compressor and 8 MiB in the decompressor.
According to test-compress-benchmark this commit makes XZ compression
20 times faster, with no increase in compressed data size.
Using more realistic test data (an ELF binary rather than repeating
ASCII letters 'a' through 'z' in order) it only provides a factor 10
speedup, and at a cost if a 10% increase in compressed data size.
But that is still a worthwhile trade-off.
According to test-compress-benchmark XZ compression is still 25 times
slower than LZ4, but the compressed data is one eighth the size.
Using more realistic test data XZ compression is only 18 times slower
than LZ4, and the compressed data is only one quarter the size.
$ ./test-compress-benchmark
XZ: compressed & decompressed
2535300963 bytes in 42.30s (57.15MiB/s), mean compresion 99.95%, skipped 3570 bytes
LZ4: compressed & decompressed
2535303543 bytes in 1.60s (1510.60MiB/s), mean compresion 99.60%, skipped 990 bytes
Ronny Chevalier [Tue, 8 Jul 2014 07:22:25 +0000 (09:22 +0200)]
fix #ifdef
Ronny Chevalier [Mon, 7 Jul 2014 08:04:33 +0000 (10:04 +0200)]
update .gitignore
Michael Biebl [Tue, 8 Jul 2014 19:06:07 +0000 (21:06 +0200)]
escape: move to rootbindir
The systemd-escape utility might be used during early boot (e.g. when
being triggered from udev rules), so move it to rootbindir to support
systems with a split /usr setup.
Bastien Nocera [Tue, 8 Jul 2014 16:29:06 +0000 (18:29 +0200)]
accelerometer: Don't wait for new data from the sensor
Instead of waiting for new data from the sensor, which might be
a long time coming, depending on the sensor device, ask the kernel
for the last state for that particular input device.
Michal Schmidt [Tue, 8 Jul 2014 15:17:14 +0000 (17:17 +0200)]
load-fragment: ConditionFirstBoot wants a bool string, not a path
Michal Schmidt [Tue, 8 Jul 2014 13:17:36 +0000 (15:17 +0200)]
systemctl: fix visual alignment for lines prefixed with color dots
David Herrmann [Tue, 8 Jul 2014 10:56:55 +0000 (12:56 +0200)]
logind: allow switching to unused VTs via SwitchTo()
If compositors use the new SwitchTo() logic to map F1-F12, we should allow
them to switch to unregistered VTs, too. Otherwise, the auto-spawn logic
of gettys won't trigger.
Reported-by: Jasper St. Pierre <jstpierre@mecheye.net>
Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
Zbigniew Jędrzejewski-Szmek [Mon, 7 Jul 2014 22:25:54 +0000 (18:25 -0400)]
man: add a mapping for external manpages
It is annoying when we have dead links on fd.o.
Add project='man-pages|die-net|archlinux' to <citerefentry>-ies.
In generated html, add external links to
http://man7.org/linux/man-pages/man, http://linux.die.net/man/,
https://www.archlinux.org/.
By default, pages in sections 2 and 4 go to man7, since Michael
Kerrisk is the autorative source on kernel related stuff.
The rest of links goes to linux.die.net, because they have the
manpages.
Except for the pacman stuff, since it seems to be only available from
archlinux.org.
Poor gummiboot gets no link, because gummitboot(8) ain't to be found
on the net. According to common wisdom, that would mean that it does
not exist. But I have seen Kay using it, so I know it does, and
deserves to be found. Can somebody be nice and put it up somewhere?
Zbigniew Jędrzejewski-Szmek [Mon, 7 Jul 2014 22:30:41 +0000 (18:30 -0400)]
Fix typo
Zbigniew Jędrzejewski-Szmek [Mon, 7 Jul 2014 22:36:03 +0000 (18:36 -0400)]
fstab-generator: fix trivial leak
Zbigniew Jędrzejewski-Szmek [Mon, 7 Jul 2014 22:29:19 +0000 (18:29 -0400)]
README: add liblz4
Zbigniew Jędrzejewski-Szmek [Mon, 7 Jul 2014 22:31:10 +0000 (18:31 -0400)]
journal/compress: fix calls to decompress_blob
Lennart Poettering [Mon, 7 Jul 2014 21:11:48 +0000 (23:11 +0200)]
resolved: make use of union in_addr_union in resolved, too
Lennart Poettering [Mon, 7 Jul 2014 21:11:03 +0000 (23:11 +0200)]
networkd: simplify signal handling of SIGTERM/SIGINT
sd-event makes handling SIGTERM/SIGINT a lot easier than it used to,
let's make use of this
Lennart Poettering [Mon, 7 Jul 2014 21:09:02 +0000 (23:09 +0200)]
resolved: make sure SIGTER/SIGINT actually can be caught and processed
Lennart Poettering [Mon, 7 Jul 2014 21:03:17 +0000 (23:03 +0200)]
resolved: let config_parse() open the configuration file for us
Lennart Poettering [Mon, 7 Jul 2014 20:49:59 +0000 (22:49 +0200)]
shared: fix format string for usec_t type
Lennart Poettering [Mon, 7 Jul 2014 20:48:25 +0000 (22:48 +0200)]
man: document systemd-escape(1)
Lennart Poettering [Mon, 7 Jul 2014 20:23:00 +0000 (22:23 +0200)]
escape: beef up new systemd-escape tool
Add various options for making it easy unescape, or mangle, or format as
template instance or append a suffix.
Michael Biebl [Tue, 3 Jun 2014 23:57:11 +0000 (01:57 +0200)]
add new systemd-escape tool
Lennart Poettering [Mon, 7 Jul 2014 19:20:29 +0000 (21:20 +0200)]
update TODO
Thomas Hindoe Paaboel Andersen [Mon, 7 Jul 2014 19:40:00 +0000 (21:40 +0200)]
dropin: add format attribute and fix a wrong caller
Zbigniew Jędrzejewski-Szmek [Mon, 7 Jul 2014 20:10:38 +0000 (16:10 -0400)]
fstab-generator: add comma when removed option is in the middle
xxx,x-systemd.default-timeout=y,zzz was filtered to xxxzzz,
but should be xxx,zzz, of course.
Susant Sahani [Fri, 4 Jul 2014 16:19:08 +0000 (21:49 +0530)]
networkd TODO: add more bonding options
Add more bonding option in TODO section
Susant Sahani [Fri, 4 Jul 2014 16:17:17 +0000 (21:47 +0530)]
networkd todo : remove tun/tap
Remove tun/tap from todo
Susant Sahani [Fri, 4 Jul 2014 17:05:02 +0000 (22:35 +0530)]
networkd: add support for mode
This patch adds supports networkd to configure bond mode
during creation via persistent conf. Mode can be configured
with conf param 'Mode'. A new section Bond is added to the
conf to support bond mode.
These modes can be configured now.
balance-rr
active-backup
balance-xor
broadcast
802.3ad
balance-tlb
balance-alb
Example conf file: test-bond.conf
[NetDev]
Name=bond1
Kind=bond
[Bond]
Mode=balance-xor
Test case:
1. start networkd service:
12: bond1: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 1500 qdisc
noqueue state UNKNOWN mode DEFAULT group default
link/ether 22:89:6c:47:23:d2 brd ff:ff:ff:ff:ff:ff
2. find bond mode:
cat /proc/net/bonding/bond1
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)
Bonding Mode: load balancing (xor)
Transmit Hash Policy: layer2 (0)
MII Status: up
MII Polling Interval (ms): 0
Up Delay (ms): 0
Down Delay (ms): 0
Changes:
1. Added file networkd-bond.c
2. Bond mode enum BondMode
3. conf section [Bond]
[tomegun: whitespace]
Susant Sahani [Mon, 7 Jul 2014 16:37:39 +0000 (22:07 +0530)]
networkd veth: Make kind assert
It's more appropriate to make it's assert than -ENOTSUP
Lennart Poettering [Mon, 7 Jul 2014 19:07:23 +0000 (21:07 +0200)]
update TODO
Lennart Poettering [Mon, 7 Jul 2014 17:25:31 +0000 (19:25 +0200)]
firstboot: get rid of firstboot generator again, introduce ConditionFirstBoot= instead
As Zbigniew pointed out a new ConditionFirstBoot= appears like the nicer
way to hook in systemd-firstboot.service on first boots (those with /etc
unpopulated), so let's do this, and get rid of the generator again.
Lennart Poettering [Mon, 7 Jul 2014 16:57:09 +0000 (18:57 +0200)]
firstboot: follow lock protocol when changing /etc/shadow
Lennart Poettering [Mon, 7 Jul 2014 16:45:53 +0000 (18:45 +0200)]
man: document systemd-firstboot(1)
Lennart Poettering [Mon, 7 Jul 2014 16:45:07 +0000 (18:45 +0200)]
man: drop references to the --priviliged command line option which has been removed a while back
Harald Hoyer [Mon, 7 Jul 2014 15:45:53 +0000 (17:45 +0200)]
base-filesystem.c: terminate string array elements with \0
NULSTR_FOREACH() looks for a terminating zero and the element also needs
one.
Lennart Poettering [Mon, 7 Jul 2014 15:33:46 +0000 (17:33 +0200)]
service: flush status text and errno values each time a service is started
We shouldn't show status texts from previous service starts
Lennart Poettering [Mon, 7 Jul 2014 15:33:26 +0000 (17:33 +0200)]
systemctl: show StatusErrno value in "systemctl status"
Lennart Poettering [Mon, 7 Jul 2014 15:32:44 +0000 (17:32 +0200)]
service: don't accept negative ERRNO= notification messages
Lennart Poettering [Mon, 7 Jul 2014 15:03:34 +0000 (17:03 +0200)]
service: minor modernization
Miguel Angel Ajo [Mon, 7 Jul 2014 12:20:36 +0000 (14:20 +0200)]
core: Added support for ERRNO NOTIFY_SOCKET message parsing, and added StatusErrno dbus property along StatusText to allow notification of numeric status condition while degraded service operation or any other special situation.
Lennart Poettering [Mon, 7 Jul 2014 14:54:09 +0000 (16:54 +0200)]
firstboot: change /etc/shadow access mode to 000
It appears to be customary to remove all access bits from /etc/shadow
including those for the root owner), hence let's do the same.
Michal Sekletar [Mon, 7 Jul 2014 13:27:24 +0000 (15:27 +0200)]
dhcp-network: make clear that we are ANDing Fragment offset field with mask
Reading BPF assembly written as C macros is inherently difficult. Don't
make it harder than necessary and provide clearer explanation in the
comment.
Michal Sekletar [Mon, 7 Jul 2014 12:15:41 +0000 (14:15 +0200)]
dhcp-network: ignore IP packets with More Fragments (MF) flag set
We already ignore IP fragments, because we expect that Fragment
offset (FO) field is not set. However first fragment in a fragmented IP
flow will have all zeroes in FO field. We should ignore such packet as
well, thus we need to look at MF flag in the IP header. Checking MF flag
will filter out all except last packet in fragmented flows. Last one
will be ruled out by next check for value of FO.
Lennart Poettering [Mon, 7 Jul 2014 13:05:37 +0000 (15:05 +0200)]
firstboot: add new component to query basic system settings on first boot, or when creating OS images offline
A new tool "systemd-firstboot" can be used either interactively on boot,
where it will query basic locale, timezone, hostname, root password
information and set it. Or it can be used non-interactively from the
command line when prepareing disk images for booting. When used
non-inertactively the tool can either copy settings from the host, or
take settings on the command line.
$ systemd-firstboot --root=/path/to/my/new/root --copy-locale --copy-root-password --hostname=waldi
The tool will be automatically invoked (interactively) now on first boot
if /etc is found unpopulated.
This also creates the infrastructure for generators to be notified via
an environment variable whether they are running on the first boot, or
not.
Lennart Poettering [Mon, 7 Jul 2014 12:59:06 +0000 (14:59 +0200)]
architecture: add string table entries for mips-le archs which were missing
Lennart Poettering [Mon, 7 Jul 2014 12:58:36 +0000 (14:58 +0200)]
man: chroot jails are no longer detected by ConditionVirtualization=
Lennart Poettering [Mon, 7 Jul 2014 12:58:13 +0000 (14:58 +0200)]
man: add missing archs to ConditionArchitecture= description
Lennart Poettering [Mon, 7 Jul 2014 10:05:41 +0000 (12:05 +0200)]
fileio: simplify write_env_file()
Lennart Poettering [Mon, 7 Jul 2014 10:04:55 +0000 (12:04 +0200)]
util: don't consider tabs special in string_has_cc() anymore
Instead, take a list of exceptions to our usual CC check
Lennart Poettering [Mon, 7 Jul 2014 09:49:48 +0000 (11:49 +0200)]
shared: make timezone and locale enumeration and validation generic
This way we can reuse it other code thatn just localectl/localed +
timedatectl/timedated.
Lennart Poettering [Mon, 7 Jul 2014 09:48:06 +0000 (11:48 +0200)]
update TODO
Lennart Poettering [Mon, 7 Jul 2014 09:47:46 +0000 (11:47 +0200)]
main: explain our /etc empty check a bit in a comment
Lennart Poettering [Mon, 7 Jul 2014 09:47:10 +0000 (11:47 +0200)]
util: consider 0x7F a control chracter (which it is: DEL)
Let's better be safe than sorry.
Tom Gundersen [Mon, 7 Jul 2014 12:50:16 +0000 (14:50 +0200)]
udev: link_config - ignore errors due to missing MAC address
Otherwis, we get misleading error messages on links with MACs.
Reported by Leonid Isaev.
Zbigniew Jędrzejewski-Szmek [Mon, 7 Jul 2014 12:55:30 +0000 (08:55 -0400)]
vconsole-setup: fix inverted error messages
Introduced in
abee28c56d.
Pointed-out-by: Werner Fink <werner@suse.de>
Tom Gundersen [Mon, 7 Jul 2014 12:24:07 +0000 (14:24 +0200)]
man: network - document Peer key
Tom Gundersen [Mon, 7 Jul 2014 12:18:26 +0000 (14:18 +0200)]
networkd: netdev - add missing refs
Without this, the underlying device would get freed (and hence
fail).
Susant Sahani [Mon, 7 Jul 2014 09:28:56 +0000 (14:58 +0530)]
networkd: add support for peer address
This patch adds peer address support for
networkd . In the [Address] a new configurable
param is Peer.
[Match]
Name=ipip-tun
[Address]
Address=10.0.0.1/32
Peer=10.0.0.2/32
Michal Sekletar [Thu, 19 Jun 2014 13:14:14 +0000 (15:14 +0200)]
dhcp-network: add check for DHCP.chaddr
Check that received DHCP packets actually include our MAC address in
chaddr field. BPF interpreter has 32 bit wide registers but MAC address
is 48 bits long so we have to do check in two steps.
Zbigniew Jędrzejewski-Szmek [Sun, 6 Jul 2014 22:35:46 +0000 (18:35 -0400)]
coredumpctl: show a useful error on permission problems
Zbigniew Jędrzejewski-Szmek [Sat, 5 Jul 2014 18:29:56 +0000 (14:29 -0400)]
compress: add benchmark-style test
This is useful to test the behaviour of the compressor for various buffer
sizes.
Time is limited to a minute per compression, since otherwise, when LZ4
takes more than a second which is necessary to reduce the noise, XZ
takes more than 10 minutes.
% build/test-compress-benchmark (without time limit)
XZ: compressed & decompressed
2535300963 bytes in 794.57s (3.04MiB/s), mean compresion 99.95%, skipped 3570 bytes
LZ4: compressed & decompressed
2535303543 bytes in 1.56s (1550.07MiB/s), mean compresion 99.60%, skipped 990 bytes
% build/test-compress-benchmark (with time limit)
XZ: compressed & decompressed
174321481 bytes in 60.02s (2.77MiB/s), mean compresion 99.76%, skipped 3570 bytes
LZ4: compressed & decompressed
2535303543 bytes in 1.63s (1480.83MiB/s), mean compresion 99.60%, skipped 990 bytes
It appears that there's a bug in lzma_end where it leaks 32 bytes.
Zbigniew Jędrzejewski-Szmek [Fri, 4 Jul 2014 02:42:22 +0000 (22:42 -0400)]
journal: add LZ4 as optional compressor
Add liblz4 as an optional dependency when requested with --enable-lz4,
and use it in preference to liblzma for journal blob and coredump
compression. To retain backwards compatibility, XZ is used to
decompress old blobs.
Things will function correctly only with lz4-119.
Based on the benchmarks found on the web, lz4 seems to be the best
choice for "quick" compressors atm.
For pkg-config status, see http://code.google.com/p/lz4/issues/detail?id=135.
Zbigniew Jędrzejewski-Szmek [Fri, 4 Jul 2014 23:53:58 +0000 (19:53 -0400)]
journal/compress: return early in uncompress_startswith
uncompress_startswith would always decode the whole stream, even
if it did not start with the given prefix.
Reallocation policy was also strange.
Zbigniew Jędrzejewski-Szmek [Wed, 2 Jul 2014 02:20:11 +0000 (22:20 -0400)]
vconsole-setup: run setfont before loadkeys
https://bugs.freedesktop.org/show_bug.cgi?id=80685
Ronny Chevalier [Sun, 6 Jul 2014 11:33:38 +0000 (13:33 +0200)]
sysusers: fix uninitialized warning
Tom Gundersen [Sun, 6 Jul 2014 12:12:28 +0000 (14:12 +0200)]
machine: don't return uninitialized variable
Repotred by Ronny Chevalier
Lennart Poettering [Fri, 4 Jul 2014 10:17:12 +0000 (12:17 +0200)]
man: document nspawn's new --volatile switch
Steven Noonan [Fri, 4 Jul 2014 02:42:19 +0000 (19:42 -0700)]
networkd: accept section DHCP in systemd.network files
Steven Noonan [Fri, 4 Jul 2014 02:43:56 +0000 (19:43 -0700)]
networkd: don't clear dhcpv6 lease timers if there's no previous lease
If client->lease is NULL, dhcp6_lease_clear_timers will cause a segmentation
fault.