1
0
mirror of https://github.com/systemd/systemd.git synced 2024-11-07 09:56:51 +03:00
Commit Graph

10699 Commits

Author SHA1 Message Date
Jan Synacek
4aab5d0cbd nspawn: fix whitespace and typo in partition table blurb 2015-02-23 15:26:58 +01:00
Piotr Drąg
6be9b36068 logind: fix a typo in a polkit description 2015-02-21 14:02:23 +01:00
Kay Sievers
11d63aea3a build-sys: update gitignore 2015-02-20 15:42:32 +01:00
Michal Schmidt
710708a54c shared: handle unnamed sockets in socket_address_equal()
Make sure we don't inspect sun_path of unnamed sockets.
Since we cannot know if two unnamed sockets' adresses refer to the same
socket, just return false.
2015-02-20 03:35:12 +01:00
Michal Schmidt
02233928a5 shared: avoid semi-duplicating socket_address_equal()
Just call socket_address_equal() from socket_address_matches_fd()
instead of implementing similar comparing of addresses.
2015-02-20 03:35:11 +01:00
Michal Schmidt
dbafedacba shared: use SocketAddress in socket_address_matches_fd()
Cleanup. No behavior change.
2015-02-20 03:35:11 +01:00
Michal Schmidt
c78e47a61f core, shared: in deserializing, match same files reached via different paths
When dbus.socket is updated like this:
-ListenStream=/var/run/dbus/system_bus_socket
+ListenStream=/run/dbus/system_bus_socket
... and daemon-reload is performed, bad things happen.
During deserialization systemd does not recognize that the two paths
refer to the same named socket and replaces the socket file with a new
one. As a result, applications hang when they try talking to dbus.

Fix this by finding a match not only when the path names are equal, but
also when they point to the same inode.
In socket_address_equal() it is necessary to move the address size
comparison into the abstract sockets branch. For path name sockets the
comparison must not be done and for other families it is redundant
(their sizes are constant and checked by socket_address_verify()).

FIFOs and special files can also have multiple pathnames, so compare the
inodes for them as well. Note that previously the pathname checks used
streq_ptr(), but the paths cannot be NULL.

Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1186018
2015-02-20 03:35:04 +01:00
David Herrmann
00d053d3ca bus: sync with kdbus.git (ABI break)
This syncs up the new KDBUS_CMD_CONN_INFO behavior:
 - attach-flags are passed in .attach_flags, instead of directly merged
   with the command flags.
2015-02-19 20:02:40 +01:00
Lennart Poettering
6278cf6048 nspawn: chown basic device nodes to userns root 2015-02-19 12:03:39 +01:00
Lennart Poettering
d15d65a01f nspawn: fix build on non-selinux systems 2015-02-19 12:03:12 +01:00
Lennart Poettering
6dac160c0a nspawn: add basic user namespacing support
(This is incomplete, /proc and /sys are still owned by root from outside
the container, not inside)
2015-02-19 11:31:08 +01:00
Martin Pitt
4e5589836c sysv-generator: fix wrong "Overwriting existing symlink" warnings
Fix result testing of is_symlink() to ignore negative results, which happen if
the file name does not exist at all. In this case we do not want a warning and
unlink the non-existing link.

https://bugs.debian.org/778700
2015-02-19 11:06:24 +01:00
Lennart Poettering
9c857b9d16 nspawn: when connected to pipes for stdin/stdout, pass them as-is to PID 1
Previously we always invoked the container PID 1 on /dev/console of the
container. With this change we do so only if nspawn was invoked
interactively (i.e. its stdin/stdout was connected to a TTY). In all other
cases we directly pass through the fds unmodified.

This has the benefit that nspawn can be added into shell pipelines.

https://bugs.freedesktop.org/show_bug.cgi?id=87732
2015-02-18 23:36:20 +01:00
Thomas Hindoe Paaboel Andersen
04155c6713 systemd-boot: fix alignment of version in table 2015-02-18 22:19:17 +01:00
Lennart Poettering
d5d8429a12 everywhere: remove configurability of sysv runlevel to target mapping
With this change runlevel 2, 3, 4 are mapped to multi-user.target for
good, and 5 to graphical.target. This was already the previous mapping
but is now no longer reconfigurable, but hard-coded into the core.

This should generally simplify things, but also fix one bug: the
sysv-generator previously generated symlinks to runlevel[2-5].target
units, which possibly weren't picked up if these aliases were otherwise
only referenced by the real names "multi-user.target" and
"graphical.target".

We keep compat aliases "runlevel[2345].target" arround for cases where
this target name is explicitly requested.
2015-02-18 20:20:14 +01:00
Lennart Poettering
8962620e5e run: if we fail to set a property assignment then really fail 2015-02-18 19:42:25 +01:00
Lennart Poettering
f36933fef6 nspawn: add support for --property= to set scope properties
This is similar to systemd-run's --property= setting.
2015-02-18 19:42:24 +01:00
Lennart Poettering
1c8da04446 shared: introduce cmsg_close_all() call
The call iterates through cmsg list and closes all fds passed via
SCM_RIGHTS.

This patch also ensures the call is used wherever appropriate, where we
might get spurious fds sent and we should better close them, then leave
them lying around.
2015-02-18 19:42:24 +01:00
Lennart Poettering
6e646d22f6 systemctl: allow interactive authorization for all bus calls
Make use of the new sd_bus_set_allow_interactive_authorization() call to
globally enable interactive authorization. Also, turn on PK agent for
more calls.

This allows us to make use of the sd_bus_call_method() convencience
helper at more places.
2015-02-18 18:56:27 +01:00
Lennart Poettering
1cfa9a4cbb systemctl: let's make use of FOREACH_STRING() where we can 2015-02-18 18:56:27 +01:00
Lennart Poettering
1d22e9068c core: rework policykit hookup
- Always issue selinux access check as early as possible, and PK check
  as late as possible.

- Introduce a new policykit action for altering environment

- Open most remaining bus calls to unprivileged clients via PK
2015-02-18 18:56:27 +01:00
Didier Roche
b0d9246486 Translate fsckd messages for plymouth
For plymouth themes not supporting i18n (like .script), send translated
messages to display to user, which is equivalent to the sent machine
readable data.
2015-02-18 16:33:46 +01:00
Didier Roche
20f56fddcd Add gettext support 2015-02-18 16:33:46 +01:00
Didier Roche
07f9a21b6d Connect to plymouth and support cancellation of in progress fsck
Try to connect and send to plymouth (if running) some checked report progress,
using direct plymouth protocole.

Update message is the following:
fsckd:<num_devices>:<progress>:<string>
* num_devices corresponds to the current number of devices being checked (int)
* progress corresponds to the current minimum percentage of all devices being
  checked (float, from 0 to 100)
* string is a translated message ready to be displayed by the plymouth theme
  displaying the information above. It can be overriden by plymouth themes
  supporting i18n.

Grab in fsckd plymouth watch key Control+C, and propagate this cancel request
to systemd-fsck which will terminate fsck.

Send a message to signal to user what key we are grabbing for fsck cancel.

Message is: fsckd-cancel-msg:<string>
Where string is a translated string ready to be displayed by the plymouth theme
indicating that Control+C can be used to cancel current checks. It can be
overriden (matching only fsckd-cancel-msg prefix) for themes supporting i18n.
2015-02-18 16:33:46 +01:00
Didier Roche
19e887e709 systemd-fsck: always connect to systemd-fsckd
Remove the plymouth running or show-status checks from systemd-fsck. Instead,
always connect to systemd-fsckd socket, and let this one decide if we display
progress or not.
2015-02-18 16:33:46 +01:00
Didier Roche
ac6e2f0dfc fsckd daemon for inter-fsckd communication
Add systemd-fsckd multiplexer which accepts multiple systemd-fsck
instances to connect to it and sends progress report. systemd-fsckd then
computes and writes to /dev/console the number of devices currently being
checked and the minimum fsck progress. This will be used for interactive
progress report and cancelling in plymouth.

systemd-fsckd stops on idle when no systemd-fsck is connected.

Make the necessary changes to systemd-fsck to connect to the systemd-fsckd
socket.
2015-02-18 16:33:46 +01:00
Tom Gundersen
502184de0f test: utf8 - fix utf16 tests on BE machines 2015-02-18 15:23:23 +01:00
Tom Gundersen
e7dd673d1e gummiboot/sd-boot/systemd-boot: rename galore
What used to be gummiboot, was renamed sd-boot when it was merged into
systemd. Let's try to be a bit more consistent with the rest of systemd
and rename it again as follows:

The EFI bootloader is now called 'systemd-bootx64.efi', and its sources are in
'src/boot/efi/'. The drop-in directory where bootctl will find EFI loaders
is now /usr/lib/systemd/boot/efi/.
2015-02-18 15:23:23 +01:00
Lennart Poettering
c529695e7a logind: open up most bus calls for unpriviliged processes, using PolicyKit
Also, allow clients to alter their own objects without any further
priviliges. i.e. this allows clients to kill and lock their own sessions
without involving PK.
2015-02-18 12:55:25 +01:00
Lennart Poettering
2723b3b51d machinectl: issue all bus commands while allowing interactive auth 2015-02-18 11:43:18 +01:00
Lennart Poettering
70244d1d25 machined: open up most of machined's commands to unprivileged clients via PolicyKit 2015-02-18 11:43:18 +01:00
Lennart Poettering
c0765ddb74 sd-bus: allow setting a per-connection default value for the "allow-interactive-authentication" message flag
Most of our client tools want to set this bit for all their method
calls, even though it defaults to off in sd-bus, and rightfully so.
Hence, to simplify thing, introduce a per sd_bus-object flag that sets
the default value for all messages created on the connection.
2015-02-18 11:43:18 +01:00
Thomas Hindoe Paaboel Andersen
b89c454b37 import: remove unused variable 2015-02-17 20:06:13 +01:00
Lennart Poettering
0370612e05 machined: make "machinectl copy-to" and "machinectl copy-from" server side operations
This way, any bus client can make use of these calls.
2015-02-17 19:22:36 +01:00
Lennart Poettering
c7abe32be1 machined: various simplifications 2015-02-17 19:22:36 +01:00
David Herrmann
83e30358f2 bus: sync with kdbus
Pull in new kdbus changes, namely:
 - EOVERFLOW is replaces by KDBUS_RECV_RETURN_DROPPED_MSGS
 - ENOMSG is merged with EAGAIN for consistency
2015-02-17 18:16:07 +01:00
David Herrmann
4d2b1e0a3f bus: don't rely on static IDs in tests
We should never put any constraints on the IDs returned by the kernel. Use
sd_bus_get_unique_name() to retrieve the ID of a peer.
2015-02-17 18:16:07 +01:00
Lennart Poettering
90adaa25e8 machined: move logic for bind mounting into containers from machinectl to machined
This extends the bus interface, adding BindMountMachine() for bind
mounting directories from the host into the container.
2015-02-17 17:49:21 +01:00
Kay Sievers
0974a682d1 bootctl: add sd-boot support 2015-02-17 14:36:59 +01:00
Kay Sievers
0fa2cac4f0 sd-boot: add EFI boot manager and stub loader 2015-02-17 14:36:59 +01:00
Martin Pitt
484adfd914 tmpfiles: Fix parse_acl error message
parse_acl() returns the error instead of setting errno.
2015-02-17 12:47:51 +01:00
Michal Schmidt
32c3d7144c journal-remote: fix client_cert memory leak
Found by Valgrind while testing the previous memory leak fix.
2015-02-17 10:36:57 +01:00
Michal Schmidt
9c3cf9693a journal-remote: fix certificate status memory leak
The output of gnutls_certificate_verification_status_print() needs to be
freed.

Noticed this while staring at verify_cert_authorized() to see what could
possibly confuse gcc5 on armv7hl to segfault during compilation.
2015-02-17 10:34:15 +01:00
Michal Schmidt
37574894c8 Revert "build-sys: re-add old symbols for abi compat"
This reverts commit 93a1e66efd.

It broke the builds for Walters.
Kay hates it and "just knows" there are no actual users.
2015-02-16 21:22:00 +01:00
Zbigniew Jędrzejewski-Szmek
2404701e67 Transpose args in strv_fnmatch() to be more oo 2015-02-16 14:04:36 -05:00
Zbigniew Jędrzejewski-Szmek
d49dc81276 test-network: fix segfault with NULL dev_path/driver/type/name 2015-02-16 13:58:26 -05:00
Zbigniew Jędrzejewski-Szmek
6ecb6cec66 analyze: change behaviour of combined --to/from--pattern
We would require a match against all three: patterns specified
with --to, with --from, and as positional arguments to show an
edge. This does not seem useful. Let instead the positional args
behave like they were specified in both --to and --from, which is
fairly intuitive and should be more useful.
2015-02-16 13:16:46 -05:00
Zbigniew Jędrzejewski-Szmek
ee5de57b9d network-internal: chain matches with AND in net_match_config()
The test would treat the first non-empty set of matches in
match_paths, match_drivers, match_types, match_names as definitive
(essentially chaining them with OR). Make those tests instead match
like other tests and require all to pass if the set of patterns is
nonempty.
2015-02-16 13:16:46 -05:00
Zbigniew Jędrzejewski-Szmek
bceccd5ecc Add helper for fnmatch over strv 2015-02-16 13:16:45 -05:00
Cristian Rodríguez
625b3b71c1 timesync: Use UINT64_C for OFFSET_1900_1970
So it matches what the comment says in both 32 and 64 bit systems.
2015-02-16 18:43:47 +01:00
Zbigniew Jędrzejewski-Szmek
93a1e66efd build-sys: re-add old symbols for abi compat
For two releases those exported with version 183 by mistake, and then
they were fixed to have version 215 (015419c0df libudev: fix symbol
version for udev_queue_flush() and udev_queue_get_fd()). But that
breaks ABI compatibility for binaries compiled with udev from before
that commit. There most likely very few such binaries, if any, but as
a matter of principle we should export the old symbols too, in order
to keep full compatibility.
2015-02-16 12:19:46 -05:00
Cristian Rodríguez
83e4433133 sd-bus: add missing format attribute 2015-02-16 17:20:24 +01:00
Lennart Poettering
b267a6d204 sd-bus: make sure we always serialize the reply cookie as 64bit on dbus2, and 32bit on dbus1 2015-02-16 16:31:29 +01:00
Lennart Poettering
2ac7c17f9d Revert "Revert "sd-bus: change serialization of kdbus messages to qualify in their entirety as gvariant objects""
This reverts commit 954871d8ba.
2015-02-16 15:03:44 +01:00
Zbigniew Jędrzejewski-Szmek
ca905b2fce core: make RuntimeDirectory honor SELinux labels
https://bugzilla.redhat.com/show_bug.cgi?id=1192726
2015-02-14 14:12:19 -05:00
David Herrmann
e28569311f bus-proxy: be more verbose if messages cannot be forwarded
If we cannot forward messages, include information on the peer and message
just like the xml-policy does. This helps debugging such situations and
figuring out what exactly is going wrong.
2015-02-14 19:01:21 +01:00
WaLyong Cho
749806b389 bootchart: display each CPU utilization/wait 2015-02-14 10:25:03 -05:00
David Herrmann
d90c154eb1 bus-proxy: don't fake data we don't have
UDS sockets transmit EUID+EGID only. Don't try to fake data we don't know!
Otherwise, this might be used to override user-limits by non-root setuid
programs (by faking UID==EUID).

Now that sd-bus is fixed to always use EUID even on UDS, we can safely set
all other UID/GID fields to INVALID.
2015-02-14 15:13:38 +01:00
Bruno Bottazzini
9cad100eca util: use a shared lookup function for string tables
Macro DEFINE_STRING_TABLE_LOOKUP expands to a new function for each
of the almost 120 tables throghout the code.
Move the its implementation to a function (guaranteed to never be inlined),
and make the macro expand to an inlined function that calls this function.
This saves a few kilobytes from the systemd binary

(David: - fix coding-style
        - use 'ssize_t' to fix 32bit to 64bit propagation
        - use streq_ptr())
2015-02-14 14:32:27 +01:00
Tom Gundersen
60c3556660 networkd: network - rename ipv6token parser
Too generic name.
2015-02-14 00:32:56 +01:00
Tom Gundersen
56fd6bf795 networkd: .network - rename LinkLocal to LinkLocalAddressing
Makes it a bit less ambiguous.
2015-02-14 00:32:26 +01:00
Djalal Harouni
84dd59b51c sd-rtnl: add missing IFLA_INET6_ADDR_GEN_MODE definition
Add missing IFLA_INET6_ADDR_GEN_MODE definition so we can build with
kernel headers < 3.17
2015-02-14 00:17:47 +01:00
Lennart Poettering
c74f883c6f bus-proxy: ECONNRESET/ENOTCONN can hit us on every step, hence handle it on every step 2015-02-13 17:18:36 +01:00
Lennart Poettering
5569b33a8c bus-proxy: a few simplifications 2015-02-13 17:18:36 +01:00
Lennart Poettering
e044970a29 sd-bus: initialize a few structs at time or declaration 2015-02-13 17:18:36 +01:00
Lennart Poettering
95eb099fa8 bus-proxy: close each connection fd only once
After passing the fds over to the sd_bus object, we should forget them,
so that we don't close them a second time when the object goes away.
2015-02-13 17:18:36 +01:00
Lennart Poettering
557b5d4a94 bus-proxy: also consider ENOTCONN a clean termination condition
Sometimes, when we try to reply to messages we don't check return
values. This means we might miss a ECONNRESET, and will get a ENOTCONN
on next command. Treat both the same hence.
2015-02-13 17:18:35 +01:00
Tom Gundersen
a8ba6cd15d exit-on-idle: only exit if actually idle
sd_event_wait() returning 0 usually means that it timed out, which means it must
have been idle. However, sd_event_wait() may return 0 in case an event was triggered
but it turned out there was nothing to do. Make the check for idle explicit to avoid
this edge-case.
2015-02-13 16:32:02 +01:00
Lennart Poettering
5f6cb09127 bus-proxy: whenever we cannot forward a message, report this back to caller, but don't exit
Errors like EPERM from the kernel should certainly not be reason to
exit. Let's try to be defensive here, and try to continue on most send
errors, but possibly tell the sender about it.
2015-02-13 15:49:51 +01:00
Lennart Poettering
1433efd219 bus-proxy: rename synthetic_reply_return_strv() to synthetic_reply_method_return_strv()
That way it matches more closely the nomenclature of our other
success reply calls.
2015-02-13 15:49:51 +01:00
Lennart Poettering
418e4cb07d bus-proxy: minor simplifications 2015-02-13 15:49:51 +01:00
Lennart Poettering
07a0d22f9e sd-bus: export sd_bus_error_set_errnofv() 2015-02-13 15:49:51 +01:00
Lennart Poettering
61adca52f6 bus-proxy: no need to negate error codes, log_error_errno() already does it 2015-02-13 15:49:51 +01:00
Lennart Poettering
1140e15410 bus-proxy: tell Coverity we don't care about these return values 2015-02-13 15:49:51 +01:00
Lennart Poettering
d27efd9384 bus-proxy: we don't pointlessly abbreviate function names
It's fine to abbreviate local variables, but it's not OK to abbreviate
function names needlessly. This is not an excercise in writing
unreadable code.
2015-02-13 15:49:51 +01:00
Daniel Mack
403193f54b sd-bus: sync kdbus.h (ABI break)
Another slice logic rework in kdbus made KDBUS_ITEM_PAYLOAD_OFF items
relative to the message header again. Catch up with that in sd-bus.
2015-02-13 14:55:51 +01:00
Thomas Hindoe Paaboel Andersen
0a6f50c0af include <poll.h> instead of <sys/poll.h>
include-what-you-use automatically does this and it makes finding
unnecessary harder to spot. The only content of poll.h is a include
of sys/poll.h so should be harmless.
2015-02-12 20:47:38 +01:00
Thomas Hindoe Paaboel Andersen
c1ff5570f4 Add missing includes in header files
This fixes various issues found by globally reordering the include
sections of all .c files.
2015-02-12 20:44:32 +01:00
Thomas Hindoe Paaboel Andersen
76f282c636 test-util: remove superfluous const 2015-02-12 20:44:11 +01:00
Thomas Hindoe Paaboel Andersen
8744505aae remove unused variable 2015-02-12 20:44:06 +01:00
Lennart Poettering
cf1d0302ae exec: also evaluate working_directory_missing_ok when not applying chroots 2015-02-12 18:58:43 +01:00
Tom Gundersen
5c3072eab6 networkd: explicitly enable/disable ipv6ll addresses
The kernel does not like getting an empty container, so just always pass the parameter, even if
it is the default.
2015-02-12 14:23:02 +01:00
Lennart Poettering
424d110ac0 hwdb: adjust --help text to be more like other --help texts
Fix capitalization, indentation, make sure we support --version, and
similar.
2015-02-12 13:17:08 +01:00
Lennart Poettering
c2cc6b9aef core: disarm shutdown watchdog if we fail to set timeout
Better safe than sorry, if drivers are stupid, and reset immediately on
device closing if the timeout could not be initialized.

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=777735
2015-02-12 12:28:48 +01:00
Lennart Poettering
4c08c8242a core: don't fail to run services in --user instances if $HOME is missing
Otherwise we cannot even invoke systemd-exit.service anymore, thus not
even exit.

https://bugs.freedesktop.org/show_bug.cgi?id=83100
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=759320
2015-02-12 12:21:16 +01:00
Lennart Poettering
a38d99451f Revert "tree-wide: Always use recvmsg with MSG_CMSG_CLOEXEC"
This reverts commit d6d810fbf8.

It's apparently not OK to pass MSG_CMSG_CLOEXEC to recvmsg() of raw
sockets.
2015-02-12 11:45:39 +01:00
Marcel Holtmann
d01efa0744 missing: add __NR_getrandom for powerpc architecture 2015-02-11 22:16:07 +01:00
Lennart Poettering
d54ddab8cb core: don't watch for socket events when service is in SERVICE_STOP
If a service has an ExecStop= program that uses the socket the service was
activated by to tell it to terminate, then that should not be used as
trigger to start the service again.

http://lists.freedesktop.org/archives/systemd-devel/2015-February/028058.html
2015-02-11 21:25:30 +01:00
Michael Olbrich
c31c4324c5 systemctl: don't update the reboot parameter if none is given
Otherwise systemd-reboot.service will remove the parameter that was set
before. This was broken in commit "b986229efe2cc96157aa14c37bab7843311bbef1
systemctl: bugfix for systemctl reboot command with argument"
2015-02-11 20:37:16 +01:00
Lennart Poettering
418761f586 core: correct a log message
The log message talks specifically about services, though it actually
applies to any kind of unit.
2015-02-11 18:51:37 +01:00
Lennart Poettering
eef46c372f tree-wide: whenever we include libgen.h, immediately undefine basename()
Also, document in adjacent comments and in CODING_STYLE why we do that.
2015-02-11 18:50:38 +01:00
Cristian Rodríguez
e89fe484df core: remove unneeded <libgen.h> include
execute.c only uses basename (the GNU version in <string.h>)
2015-02-11 18:31:29 +01:00
Robert Milasan
e203dc1076 ata_id: remove unused header files
Signed-off-by: Robert Milasan <rmilasan@suse.com>
2015-02-11 18:02:04 +01:00
Tom Gundersen
910889b617 network-internal: fix inverted matching
This fixes the test-suite again.
2015-02-11 13:13:50 +01:00
Tom Gundersen
a245ced0d7 networkd: fdb - fix const warning 2015-02-11 13:13:50 +01:00
Tom Gundersen
f806f64c74 networkd: don't do exit-on-idle if there is something wrong with the dbus connection
Just fall back to plain old event loop in this (highly unlikely) case.

In the glorious future when kdbus is upstream we can of course drop all this.
2015-02-11 13:13:49 +01:00
Martin Pitt
f4f01ec146 sysv-generator: Skip init scripts for existing native services
This avoids taking the SysV init script enablement state into account if we
have native units. Otherwise systemctl disable on native unit would not
be respected in the presence of an enabled SysV script.

Also, there's no need to do all the parsing and creation of service files if we
already have a native systemd unit for the processed SysV init script.
2015-02-11 13:02:01 +01:00
Paul Martin
804319344b networkd DHCPv4 logging endian fix
On Tue, Feb 10, 2015 at 08:10:43PM +0100, Lennart Poettering wrote:

> Hmm, I think it would be nicer to use be32toh() here instead, since it
> ensures the macro is (to a limited degree) typesafe.
>
> Any chance you could rework that?

From: Paul Martin <paul.martin@codethink.co.uk>
Date: Wed, 11 Feb 2015 11:47:16 +0000
Subject: [PATCH] networkd dhcpv4 logging endian fix

On a big-endian host, systemd-networkd prints out IPv4 network
addresses byte reversed:

Feb 10 16:43:32 hostname systemd-networkd[151]: eth0 : DHCPv4 address 158.1.24.10/16 via 1.1.24.10

The address obtained is 10.24.1.158/16 and the route is

  10.24.0.0/16 dev eth0  src 10.24.1.187

The macro ADDRESS_FMT_VAL() unpacks a "struct in_addr" in a
little-endian specific manner.

This patch forces the passed address into host order, then unpacks it.

On an x86 later than i486, compiled with -O2, the only extra overhead
is a single bswap instruction.
2015-02-11 12:57:17 +01:00
Tom Gundersen
5256e00e8b net: support globbing and disjunction in Match logic
Match{Name,OrginalName,Type,Driver,Path} can now take a space-separated glob of matches.
2015-02-10 22:30:35 +01:00
Tom Gundersen
ea6ec096db networkd: fdb - refactor a bit
Pass around Link objcets rather than FdbEntry objects. The link objects have an up-to-date
ifname we can use for logging. match_name sholud _never_ be used for anything except
matching. Firstly, it may be unset (usually is), and secondly it may not be up-to-date.
2015-02-10 22:30:35 +01:00