Tom Gundersen [Thu, 19 Jun 2014 12:39:05 +0000 (15:39 +0300)]
network-internal: split out net_get_name()
Tom Gundersen [Thu, 19 Jun 2014 12:39:01 +0000 (15:39 +0300)]
sd-dhcp6-client: Initialize DUID
Initialize DHCP Unique Identifier when creating the client. The
DUID is generated based on the machine-id, which satisfies all the
requirements of what an DUID should be. The DUID type is DUID-EN.
Based on patch by Patrik Flykt.
Patrik Flykt [Thu, 19 Jun 2014 12:38:59 +0000 (15:38 +0300)]
sd-icmp6-nd: Add initial Router Advertisement test case
Feed a Router Advertisement to the code and expect proper events
each time. The sending part is ignored, as all of it is static code
in the real dhcp_network_icmp6_send_rs() function.
Patrik Flykt [Thu, 19 Jun 2014 12:38:55 +0000 (15:38 +0300)]
sd-icmp6-nd: Add Router Solicitation and Advertisement support
Provide functions to bind the ICMPv6 socket to the approriate interface
and set multicast sending and receiving according to RFC 3493, section
5.2. and RFC 3542, sections 3. and 3.3. Filter out all ICMPv6 messages
except Router Advertisements for the socket in question according to
RFC 3542, section 3.2.
Send Router Solicitations to the all routers multicast group as
described in RFC 4861, section 6. and act on the received Router
Advertisments according to section 6.3.7.
Implement a similar API for ICMPv6 handling as is done for DHCPv4 and
DHCPv6.
Patrik Flykt [Thu, 19 Jun 2014 12:38:50 +0000 (15:38 +0300)]
sd-dhcp6-client: Add initial DHCPv6 client files
Add initial structure definition and functions for setting index, MAC
address, callback and event loop. Define protocol values and states.
Lennart Poettering [Thu, 19 Jun 2014 11:47:07 +0000 (13:47 +0200)]
build-sys: run forgotten 'make update-man-list'
Lennart Poettering [Thu, 19 Jun 2014 11:46:01 +0000 (13:46 +0200)]
coredump: coredumpctl is so useful now, make it a first-class citizen
Drop the "systemd-" prefix, renaming it from "systemd-coredumpctl" to
"coredumpctl".
Lennart Poettering [Thu, 19 Jun 2014 10:38:22 +0000 (12:38 +0200)]
update TODO
Lennart Poettering [Thu, 19 Jun 2014 10:36:35 +0000 (12:36 +0200)]
journald: make SplitMode=uid the default
Now that we actually can distuingish system and normal users there's no
point in taking session information into account anymore when splitting
up logs.
This has the beenfit with that coredump information will actually end up
in each user's own journal.
Lennart Poettering [Thu, 19 Jun 2014 10:25:42 +0000 (12:25 +0200)]
update TODO
Lennart Poettering [Thu, 19 Jun 2014 10:24:00 +0000 (12:24 +0200)]
coredumpctl: introduce new -1 switch for showing a single, most recent entry only
"coredumpctl info -1" is now incredibly useful for showing the most recent
stacktrace.
Lennart Poettering [Thu, 19 Jun 2014 10:13:09 +0000 (12:13 +0200)]
coredump: simplify how we apply extended attributes to coredumps
Lennart Poettering [Thu, 19 Jun 2014 10:07:12 +0000 (12:07 +0200)]
coredump: include stacktrace of coredumps in the log message
elfutils' libdw is maintained, can read DWARF debug data and appears to
be the library of choice for generating backtraces today.
Thomas Hindoe Paaboel Andersen [Wed, 18 Jun 2014 21:35:01 +0000 (23:35 +0200)]
bootchart: add assert
since
376cd3b89c62f580a6f576cecfbbb28d3944118f LIST_FIND_TAIL accepts
an empty list. That removed an assert in LIST_FIND_TAIL and we now
theoretically risk a null pointer deref. This adds the assert directly
to protect against that.
Lennart Poettering [Wed, 18 Jun 2014 21:55:36 +0000 (23:55 +0200)]
coredump: add 3 more metadata fields to coredump entries
Lennart Poettering [Wed, 18 Jun 2014 21:34:59 +0000 (23:34 +0200)]
coredump: add new "info" verb to coredumpctl showing detailed information about a coredump
Lennart Poettering [Wed, 18 Jun 2014 21:05:15 +0000 (23:05 +0200)]
coredump: make sure coredumpctl can handle externally stored coredumps
Lennart Poettering [Wed, 18 Jun 2014 20:06:25 +0000 (22:06 +0200)]
tmpfiles: automatically clean up /var/lib/systemd/coredump after 3d
Lennart Poettering [Wed, 18 Jun 2014 20:02:18 +0000 (22:02 +0200)]
coredump: optionally store coredumps on disk, not in the journal
Introduce a new configuration file /etc/systemd/coredump.conf to
configure when to place coredumps in the journal and when on disk.
Since the coredumps are quite large, default to storing them only on
disk.
Lennart Poettering [Wed, 18 Jun 2014 16:54:52 +0000 (18:54 +0200)]
dhcp-server: simplify dhcp server unref call
No need to use HASHMAP_ITERATE when we destruct all entries anyway.
Thomas Hindoe Paaboel Andersen [Wed, 18 Jun 2014 21:18:19 +0000 (23:18 +0200)]
TODO: update
Thomas Hindoe Paaboel Andersen [Wed, 18 Jun 2014 18:34:52 +0000 (20:34 +0200)]
socket: check return from exec_spawn
Thomas Hindoe Paaboel Andersen [Wed, 18 Jun 2014 18:26:54 +0000 (20:26 +0200)]
sd-dhcp-client: check return from dhcp_option_append
Thomas Hindoe Paaboel Andersen [Fri, 13 Jun 2014 20:54:22 +0000 (22:54 +0200)]
sd-dhcp-server: fix a leak
We must use free instead of dhcp_lease_free here to avoid freeing
client_id.data.
Lennart Poettering [Wed, 18 Jun 2014 16:27:55 +0000 (18:27 +0200)]
network: automatically assign each container veth link a /28 IP address range
Lennart Poettering [Wed, 18 Jun 2014 16:26:03 +0000 (18:26 +0200)]
networkd: configure dhcp server range only after successfully setting an IP address on the interface
This way we can make use of the addresses of the IP pool.
Lennart Poettering [Wed, 18 Jun 2014 16:22:14 +0000 (18:22 +0200)]
networkd: add address pool support
When an address is configured to be all zeroes, networkd will now
automatically find a locally unused network of the right size from a
list of pre-configured pools. Currently those pools are 10.0.0.0/8,
172.16.0.0/12, 192.168.0.0/16 and fc00::/7, i.e. the network ranges for
private networks. They are compiled in, but should be configurable
eventually.
This allows applying the same configuration to a large number of
interfaces with each time a different IP range block, and management of
these IP ranges is fully automatic.
When allocating an address range from the pool it is made sure the range
is not used otherwise.
Lennart Poettering [Wed, 18 Jun 2014 16:17:39 +0000 (18:17 +0200)]
networkd: add a number of calls to manipulate in_addr_union structs
Lennart Poettering [Wed, 18 Jun 2014 10:34:02 +0000 (12:34 +0200)]
socket-util: introduce in_addr_union similar to sockaddr_union and make use of it everywhere
Michal Sekletar [Wed, 18 Jun 2014 16:14:51 +0000 (18:14 +0200)]
dhcp-network: remove TODO
There is no need to explicitly check version of L3 protocol in the
ethernet header because we bind socket with .sll_protocol set to
ETH_P_IP, thus we only receive IPv4 packets on the socket.
Marcel Holtmann [Wed, 18 Jun 2014 11:55:32 +0000 (13:55 +0200)]
hwdb: Update database of Bluetooth company identifiers
Kay Sievers [Wed, 18 Jun 2014 01:46:44 +0000 (03:46 +0200)]
TODO: update
Kay Sievers [Wed, 18 Jun 2014 01:37:32 +0000 (03:37 +0200)]
rules: add loop-control and btrfs-control to "disk" group
Lennart Poettering [Tue, 17 Jun 2014 22:07:56 +0000 (00:07 +0200)]
cryptsetup: introduce new cryptsetup-pre.traget unit so that services can make sure they are started before and stopped after any LUKS setup
https://bugzilla.redhat.com/show_bug.cgi?id=1097938
Lennart Poettering [Tue, 17 Jun 2014 22:02:08 +0000 (00:02 +0200)]
tmpfiles: create directories already with the right label, instead of creating them first, and relabeling them afterwards
Lennart Poettering [Tue, 17 Jun 2014 22:01:39 +0000 (00:01 +0200)]
tmpfiles: w lines should allow following symlinks
Lennart Poettering [Tue, 17 Jun 2014 22:01:07 +0000 (00:01 +0200)]
update TODO
Lennart Poettering [Tue, 17 Jun 2014 21:51:21 +0000 (23:51 +0200)]
namespace: properly label device nodes we create
https://bugzilla.redhat.com/show_bug.cgi?id=1081429
Lennart Poettering [Tue, 17 Jun 2014 21:50:22 +0000 (23:50 +0200)]
tmpfiles: add "+" modifier support to b, c, p lines in addition to L
Zbigniew Jędrzejewski-Szmek [Sat, 7 Jun 2014 20:37:50 +0000 (16:37 -0400)]
man: fix typo
Ronny Chevalier [Tue, 17 Jun 2014 17:26:14 +0000 (19:26 +0200)]
build-sys: add missing backslash
Tom Gundersen [Tue, 17 Jun 2014 17:42:30 +0000 (19:42 +0200)]
networkd: veth - fix parsing verification
Tom Gundersen [Tue, 17 Jun 2014 17:40:40 +0000 (19:40 +0200)]
networkd: vxlan - fix parsing verification
Tom Gundersen [Tue, 17 Jun 2014 17:40:12 +0000 (19:40 +0200)]
networkd: veth - fix memleak
Thomas Hindoe Paaboel Andersen [Tue, 17 Jun 2014 19:22:01 +0000 (21:22 +0200)]
install: remove unused variable
Lennart Poettering [Tue, 17 Jun 2014 10:58:32 +0000 (12:58 +0200)]
tmpfiles: remove line for automatic clean-ups for /var/cache/man/
Management of /var/cache/man should move to the distribution package
owning the directory (for example, man-db). As man pages are a
non-essential part of the system and unnecessary for minimal setups,
there's no point in having systemd ship these lines.
Distribution packages should make sure the appropriate package for their
distribution adopts this line. Ideally, the line is adopted by the
upstream package.
For Fedora I have filed this bug:
https://bugzilla.redhat.com/show_bug.cgi?id=1110274
Frederic Crozat [Mon, 16 Jun 2014 16:49:12 +0000 (18:49 +0200)]
bootchart: set white background
In programs like eog and gimp the transparant background did not
look very good.
Similar fix from the one done in systemd-analyze (
418e3750)
Tom Gundersen [Tue, 17 Jun 2014 06:54:44 +0000 (08:54 +0200)]
networkd: link - fix carrier check on new link
We were comparing against our own internal enum rather than the kernel exposed one.
Found by Thomas Ritter.
Tom Gundersen [Mon, 16 Jun 2014 13:24:28 +0000 (15:24 +0200)]
sd-dhcp: checksum - make endianess-neutral
For efficiency, we group bytes together before adding them up. This
is guaranteed to always work (regardless of the byte order) as long
as the i-th byte in each group lign up with the i-th byte in each
other group.
On big-endian machines this broke when handling the trailing few bytes
which did not make up a full group of 4 bytes. This patch fixes the
problem by explicitly creating a 4 byte zero-padded group out of the
trailing bytes.
Reported and tested by Thomas Ritter <th.ritter@gmx.at>.
Dave Reisner [Tue, 17 Jun 2014 03:29:27 +0000 (23:29 -0400)]
systemctl: reverse order of args when verbosely creating symlinks
This was backwards. The symlink itself points to the source unit, not
the other way around.
Kay Sievers [Tue, 17 Jun 2014 01:34:09 +0000 (03:34 +0200)]
timesyncd: do not start in virtualized environments
Lennart Poettering [Tue, 17 Jun 2014 01:30:11 +0000 (03:30 +0200)]
update TODO
Lennart Poettering [Tue, 17 Jun 2014 01:25:34 +0000 (03:25 +0200)]
core: populate unit file set with preset data if we boot with empty /etc
Lennart Poettering [Tue, 17 Jun 2014 01:25:02 +0000 (03:25 +0200)]
machine-id-setup: allow passing NULL as function argument, for simplicity
Lennart Poettering [Tue, 17 Jun 2014 01:23:23 +0000 (03:23 +0200)]
kmod: conditionalize kmod setup on CAP_SYS_MODULE, not whether we run in a container
It's generally preferrable to conditionalize on the actual ability to do
something then the context we run in.
Lennart Poettering [Tue, 17 Jun 2014 01:09:27 +0000 (03:09 +0200)]
build-sys: touch /usr on "make install"
this way, the "make install" will be detected as offline update on next
boot.
Lennart Poettering [Tue, 17 Jun 2014 00:18:33 +0000 (02:18 +0200)]
units: minor cleanups
Lennart Poettering [Tue, 17 Jun 2014 00:15:03 +0000 (02:15 +0200)]
install: improve paths we show the user when enabling/disabling
Lennart Poettering [Tue, 17 Jun 2014 00:13:08 +0000 (02:13 +0200)]
networkd: don't pull in systemd-networkd-wait-online service from systemd-networkd when enabling
networkd-wait-online should never exist in the default transaction,
unless explicitly enable or pulled in via things like NFS. However, just
enabling networkd shouldn't enable networkd-wait-online, since it's
common to use the former without the latter.
Lennart Poettering [Mon, 16 Jun 2014 23:56:44 +0000 (01:56 +0200)]
conf-files: fix when for --root= logic
This is based on parts of similar patches from Michael Marineau and
Lukas Nykrin, but simply uses strappenda3().
Lennart Poettering [Mon, 16 Jun 2014 23:38:07 +0000 (01:38 +0200)]
systemctl: output human readable strings in "systemctl enable" and "systemctl disable"
Lennart Poettering [Mon, 16 Jun 2014 23:37:54 +0000 (01:37 +0200)]
install: simplify symlink --root= logic
Lennart Poettering [Mon, 16 Jun 2014 23:22:55 +0000 (01:22 +0200)]
install: "systemctl enable" should be a nop for template units lacking a DefaultInstance= setting
Lennart Poettering [Mon, 16 Jun 2014 23:14:44 +0000 (01:14 +0200)]
preset: ship a minimal preset file upstream
This is useful so that distros have something to base their own policy
of. It also useful to make sure that minimal installs always get useful
configuration in place.
Lennart Poettering [Mon, 16 Jun 2014 23:05:39 +0000 (01:05 +0200)]
log: don't downgrade log level in non-PID 1 if "quiet" is passed on kernel cmdline
"debug" should apply to all tools, but "quiet" only to PID1.
Lennart Poettering [Mon, 16 Jun 2014 22:53:49 +0000 (00:53 +0200)]
install: make sure that --root= mode doesn't make us consider all units outside of search path
Lennart Poettering [Mon, 16 Jun 2014 22:33:39 +0000 (00:33 +0200)]
install: make sure "systemctl disable foobar@.service" actually removes all instances
Lennart Poettering [Mon, 16 Jun 2014 22:15:31 +0000 (00:15 +0200)]
install: introduce new DefaultInstance= field for [Install] sections
The DefaultInstance= name is used when enabling template units when only
specifying the template name, but no instance.
Add DefaultInstance=tty1 to getty@.service, so that when the template
itself is enabled an instance for tty1 is created.
This is useful so that we "systemctl preset-all" can work properly,
because we can operate on getty@.service after finding it, and the right
instance is created.
Lennart Poettering [Mon, 16 Jun 2014 22:13:48 +0000 (00:13 +0200)]
install: when looking for a unit file for enabling, search for templates only after traversing all search directories
Let's always make sure to look in all search directories for the full
unit names first, before looking for templates for them.
Lennart Poettering [Mon, 16 Jun 2014 22:11:47 +0000 (00:11 +0200)]
install: use symlink_atomic() instead of unlink()+symlink() when force creating a symlink
Lennart Poettering [Mon, 16 Jun 2014 22:10:54 +0000 (00:10 +0200)]
install: various modernizations
Lennart Poettering [Mon, 16 Jun 2014 18:33:29 +0000 (20:33 +0200)]
install: teach preset query logic --root= support
Lennart Poettering [Mon, 16 Jun 2014 17:49:31 +0000 (19:49 +0200)]
install: beef up preset logic to limit to only enable or only disable, and do all-unit preset operations
The new "systemctl preset-all" command may now be used to put all
installed units back into the enable/disable state the vendor/admin
encoded in preset files.
Also, introduce "systemctl --preset-mode=enable-only" and "systemctl
--preset-mode=disable-only" to only apply the enable or only the disable
operations of a "systemctl preset" or "systemctl preset-all" operation.
"systemctl preset-all" implements this RFE:
https://bugzilla.redhat.com/show_bug.cgi?id=630174
Lennart Poettering [Mon, 16 Jun 2014 17:48:31 +0000 (19:48 +0200)]
install: simplify and clarify disabling logic for instanced units
Lennart Poettering [Mon, 16 Jun 2014 15:19:30 +0000 (17:19 +0200)]
install: various modernizations
Lennart Poettering [Mon, 16 Jun 2014 15:04:49 +0000 (17:04 +0200)]
update TODO
Lennart Poettering [Mon, 16 Jun 2014 15:04:30 +0000 (17:04 +0200)]
unit-name: various modernizations
Lennart Poettering [Mon, 16 Jun 2014 15:01:26 +0000 (17:01 +0200)]
unit-name: fix detection of unit templates/instances
We need to check for the last dot, not the first one in a unit name, for
the suffix. Correct that.
Thomas Hindoe Paaboel Andersen [Mon, 16 Jun 2014 21:49:10 +0000 (23:49 +0200)]
journal-remote: fix memleak
Ronny Chevalier [Sun, 15 Jun 2014 20:47:49 +0000 (22:47 +0200)]
tests: unlink temp file used in test
Ronny Chevalier [Sun, 15 Jun 2014 20:46:05 +0000 (22:46 +0200)]
tests: add tests to test-hashmap
add tests for:
- hashmap_remove_and_put
- hashmap_first_key
- hashmap_last
- hashmap_steal_first_key
- hashmap_clear_free_free
Ronny Chevalier [Sat, 14 Jun 2014 20:10:45 +0000 (22:10 +0200)]
tests: add test-fdset
Ronny Chevalier [Sat, 14 Jun 2014 20:10:44 +0000 (22:10 +0200)]
tests: add test-socket-util
Susant Sahani [Mon, 16 Jun 2014 06:24:34 +0000 (11:54 +0530)]
networkd: unref tunnel
Unref tunnel while shutting down
Susant Sahani [Mon, 16 Jun 2014 06:24:33 +0000 (11:54 +0530)]
networkd: introduce vxlan
This patch enables netwokd to create vxlan
Changes:
Added:
1. File networkd networkd-vxlan.c
2. to netdev
bool learning
struct in_addr group
uint64_t vxlanid;
3. VXLAN subsection and config
parameters
Susant Sahani [Mon, 16 Jun 2014 06:24:32 +0000 (11:54 +0530)]
networkd: rename netdev variables
Rename the netdev variables. Remove tunnel_
so that it can be reused .
Susant Sahani [Mon, 16 Jun 2014 06:24:31 +0000 (11:54 +0530)]
sd-rtnl: add support for vxlan rtnl attributes
This patch adds vxlan rtnl attributes to sd-rtnl
Kay Sievers [Mon, 16 Jun 2014 14:03:30 +0000 (16:03 +0200)]
bus-proxy: policy - ignore unsupported tags and attributes
Ruediger Oertel [Fri, 13 Jun 2014 14:41:06 +0000 (16:41 +0200)]
Reset signal-mask on re-exec to init=..
Process 1 (aka init) needs to be started with an empty signal mask.
That includes the process 1 that's started after the initrd is finished.
When the initrd is using systemd (as it does with dracut based initrds)
then it is systemd that calls the real init. Normally this is systemd
again, except when the user uses for instance "init=/bin/bash" on the
kernel command line.
David Herrmann [Fri, 13 Jun 2014 16:43:22 +0000 (18:43 +0200)]
util: add realloc_multiply() helper
This is similar to malloc_multiply() and friends. It is realloc() with a
multiplication-overflow check.
David Herrmann [Fri, 13 Jun 2014 16:38:15 +0000 (18:38 +0200)]
util: fix multiply-alloc helpers with size==0
Passing 0 to malloc() is not required to return NULL. Therefore, don't
bail out if "b" is 0. This is not of importance to the existing helpers,
but the upcoming realloc_multiply() requires this. To keep consistence, we
keep the same behavior for the other helpers.
David Herrmann [Thu, 12 Jun 2014 15:54:48 +0000 (17:54 +0200)]
macro: add DISABLE_WARNING_SHADOW
As it turns out, we cannot use _Pragma in compound-statements. Therefore,
constructs like MIN(MAX(a, b), x) will warn due to shadowed variable
declarations. The DISABLE_WARNING_SHADOW macro can be used to suppress
these.
Note that using UNIQUE(_var) does not work either as GCC uses the last
line of a macro-expansion for __LINE__, therefore, still causing both
macros to have the same variables. We could use different variable-names
for MIN and MAX, but that just hides the problem and still fails for
MIN(something(MIN(a, b)), c).
The only working solution is to use __COUNTER__ and pass it pre-evaluated
as extra argument to a macro to use as name-prefix. This, however, makes
all these macros much more complicated so I'll go with manual
DISABLE_WARNING_SHADOW so far.
Lennart Poettering [Mon, 16 Jun 2014 11:21:07 +0000 (13:21 +0200)]
tmpfiles: add new "L+" command as stronger version of "L", that removes the destination before creating a symlink
Also, make use of this for mtab as long as mount insists on creating it
even if we invoke it with "-n".
Lennart Poettering [Mon, 16 Jun 2014 11:20:38 +0000 (13:20 +0200)]
tmpfiles: set up selinux label proeprly when creating fifos
Lennart Poettering [Mon, 16 Jun 2014 10:29:51 +0000 (12:29 +0200)]
update TODO
Lennart Poettering [Mon, 16 Jun 2014 10:29:35 +0000 (12:29 +0200)]
build-sys: add missing Makefile link
Lennart Poettering [Mon, 16 Jun 2014 10:28:44 +0000 (12:28 +0200)]
units: add a service to invoke ldconfig on system updates at boot
Lennart Poettering [Mon, 16 Jun 2014 10:25:49 +0000 (12:25 +0200)]
units: drop RefuseManualStart= from a couple of update services
The only update service we really need to guard like this is
systemd-tmpfiles-setup.service since if invoked manually might create
/var/run/nologin and thus blocking the user from login. The other
services are pretty much idempotent and don't suffer by this problem,
hence let's simplify them.
Lennart Poettering [Sun, 15 Jun 2014 23:03:38 +0000 (01:03 +0200)]
update TODO
Lennart Poettering [Sun, 15 Jun 2014 23:02:27 +0000 (01:02 +0200)]
mount: add new SloppyOptions= setting for mount units, mapping to mount(8)'s "-s" switch