chiark / gitweb /
6 years agojournal: move type_to_context() to journal-file.c
Michal Schmidt [Fri, 12 Dec 2014 17:06:22 +0000 (18:06 +0100)]
journal: move type_to_context() to journal-file.c

It has no other callers. It does not need to be in the header file.

6 years agojournal: remove journal_file_object_keep/release functions
Michal Schmidt [Fri, 12 Dec 2014 20:52:18 +0000 (21:52 +0100)]
journal: remove journal_file_object_keep/release functions

The only user is sd_journal_enumerate_unique() and, as explained in
the previous commit (fed67c38e3 "journal: map objects to context set by
caller, not by actual object type"), the use of them there is now
superfluous. Let's remove them.

This reverts major parts of commits:
  ae97089d49 journal: fix access to munmapped memory in
  06cc69d44c sd-journal: fix sd_journal_enumerate_unique skipping values

Tested with an "--enable-debug" build and "journalctl --list-boots".
It gives the expected number of results. Additionally, if I then revert
the previous commit ("journal: map objects to context set by caller, not
to actual object type"), it crashes with SIGSEGV, as expected.

6 years agojournal: map objects to context set by caller, not by actual object type
Michal Schmidt [Fri, 12 Dec 2014 17:21:55 +0000 (18:21 +0100)]
journal: map objects to context set by caller, not by actual object type

When the caller of journal_file_move_to_object() specifies type==0,
the object header is at first mapped in context 0. Then after the header
is checked, the whole object is mapped in a context determined by
the actual object type (which is not even range-checked using
type_to_context()). This looks wrong. It should map in the
caller-specified context.

An old comment in sd_journal_enumerate_unique() supports this view:
    /* We do not use the type context here, but 0 instead,
     * so that we can look at this data object at the same
     * time as one on another file */
Clearly the expectation was that the data object will remain mapped
in context 0 without being pushed away by mapping other objects in
context OBJECT_DATA.

I suspect that this was the real bug that got fixed by ae97089d49
"journal: fix access to munmapped memory in sd_journal_enumerate_unique".
In other words, journal_file_object_keep/release are superfluous after
applying this patch.

6 years agojournal: add debug mode for mmap-cache (--enable-debug=mmap-cache)
Michal Schmidt [Fri, 12 Dec 2014 16:57:22 +0000 (17:57 +0100)]
journal: add debug mode for mmap-cache (--enable-debug=mmap-cache)

This is useful for exposing unsafe access to mmapped objects after
the context that they were mapped in was already moved.

For example:
journal_file_move_to_object(f1, OBJECT_DATA, p1, &o1);
journal_file_move_to_object(f2, OBJECT_DATA, p2, &o2);
t = o1->object.type; /* this usually works, but is unsafe */

6 years add a generic --enable-debug, replace --enable-hashmap-debug
Michal Schmidt [Fri, 12 Dec 2014 16:48:13 +0000 (17:48 +0100)] add a generic --enable-debug, replace --enable-hashmap-debug

There will be more debugging options later.
 --enable-debug will enable them all.
 --enable-debug=hashmap will enable only hashmap debugging.

Also rename the C #define to ENABLE_DEBUG_* pattern.

6 years agoshared/hashmap.h: fix comment
Michal Schmidt [Fri, 12 Dec 2014 16:42:28 +0000 (17:42 +0100)]
shared/hashmap.h: fix comment

An early version used underscore prefixes for internal functions, but
the current version uses the prefix "internal_".

6 years agohwdb: add more mice
Zbigniew Jędrzejewski-Szmek [Fri, 12 Dec 2014 23:20:51 +0000 (18:20 -0500)]
hwdb: add more mice

6 years agohwdb: sort mice by brand,type,dpi,frequency
Zbigniew Jędrzejewski-Szmek [Fri, 12 Dec 2014 23:16:45 +0000 (18:16 -0500)]
hwdb: sort mice by brand,type,dpi,frequency

This way entries from the same brand with the same dpi and frequency
can be coalesced. It is also visually easier to find the right DPI
than order hexadecimal identifiers.

6 years agonetworkctl: remove unused variable
Thomas Hindoe Paaboel Andersen [Fri, 12 Dec 2014 20:53:28 +0000 (21:53 +0100)]
networkctl: remove unused variable

6 years agowrap a few *_FOREACH macros in curly braces
Thomas Hindoe Paaboel Andersen [Fri, 12 Dec 2014 18:51:41 +0000 (19:51 +0100)]
wrap a few *_FOREACH macros in curly braces

cppcheck would give up with "syntax error" without them. This led
to reports of syntax errors in unrelated locations and potentially
hid other errors

6 years agoupdate TODO
Lennart Poettering [Fri, 12 Dec 2014 19:24:35 +0000 (20:24 +0100)]
update TODO

6 years agocore: retry unmounting until we are done, in case of stacked mounts
Lennart Poettering [Fri, 12 Dec 2014 19:12:35 +0000 (20:12 +0100)]
core: retry unmounting until we are done, in case of stacked mounts

6 years agonetworkctl: also draw a nice unicode cirlce when "networkctl status" is run without...
Lennart Poettering [Fri, 12 Dec 2014 18:11:35 +0000 (19:11 +0100)]
networkctl: also draw a nice unicode cirlce when "networkctl status" is run without parameters

6 years agonetworkctl: show interface names next to IP addresses if we dump adresses from all...
Lennart Poettering [Fri, 12 Dec 2014 18:07:26 +0000 (19:07 +0100)]
networkctl: show interface names next to IP addresses if we dump adresses from all interfaces

6 years agonetworkctl: also show gateway address when "networkctl status" without further argume...
Lennart Poettering [Fri, 12 Dec 2014 17:57:15 +0000 (18:57 +0100)]
networkctl: also show gateway address when "networkctl status" without further arguments is passed

6 years agonetworkctl: show MAC address OUI vendor next to MAC addresses
Lennart Poettering [Fri, 12 Dec 2014 17:50:06 +0000 (18:50 +0100)]
networkctl: show MAC address OUI vendor next to MAC addresses

6 years agotest-cap-list: always check libcap comes to the same names as we do, for the names...
Lennart Poettering [Fri, 12 Dec 2014 17:42:19 +0000 (18:42 +0100)]
test-cap-list: always check libcap comes to the same names as we do, for the names it knows

6 years agocap-list: return lower-case capability names, similar to libcap's cap_to_name(),...
Lennart Poettering [Fri, 12 Dec 2014 17:37:25 +0000 (18:37 +0100)]
cap-list: return lower-case capability names, similar to libcap's cap_to_name(), for compat reasons

6 years agoupdate TODO
Lennart Poettering [Fri, 12 Dec 2014 16:30:02 +0000 (17:30 +0100)]
update TODO

6 years agoman: fedora 21 has been release, suggest 21 as fedora version in example yum command...
Lennart Poettering [Fri, 12 Dec 2014 16:29:12 +0000 (17:29 +0100)]
man: fedora 21 has been release, suggest 21 as fedora version in example yum command line

6 years agonspawn: when booting in ephemeral mode, append random token to machine name
Lennart Poettering [Fri, 12 Dec 2014 16:26:31 +0000 (17:26 +0100)]
nspawn: when booting in ephemeral mode, append random token to machine name

Also, when booting up an ephemeral container of / use the system
hostname as default machine name.

This way specifiyng -M is unnecessary when booting up an ephemeral
container, while allowing any number of ephemeral containers to run from
the same tree.

6 years agonspawn: allow spawning ephemeral nspawn containers based on the root file system...
Lennart Poettering [Fri, 12 Dec 2014 15:59:15 +0000 (16:59 +0100)]
nspawn: allow spawning ephemeral nspawn containers based on the root file system of the OS

This works now:

        # systemd-nspawn -xb -D / -M foobar

Which boots up an ephemeral container, based on the host's root file
system. Or in other words: you can now run the very same host OS you
booted your system with also in a container, on top of it, without
having it interfere. Great for testing whether the init system you are
hacking on still boots without reboot the system!

6 years agonspawn: don't link journals in ephemeral mode
Lennart Poettering [Fri, 12 Dec 2014 15:58:57 +0000 (16:58 +0100)]
nspawn: don't link journals in ephemeral mode

6 years agonspawn: properly unset arg_link_journal_try, when --link-journal= is specified
Lennart Poettering [Fri, 12 Dec 2014 15:58:30 +0000 (16:58 +0100)]
nspawn: properly unset arg_link_journal_try, when --link-journal= is specified

6 years agocopy: use btrfs reflinking only whe we know we copy full files
Lennart Poettering [Fri, 12 Dec 2014 15:24:33 +0000 (16:24 +0100)]
copy: use btrfs reflinking only whe we know we copy full files

6 years agobus: send attach flags on BUS_MAKE
David Herrmann [Fri, 12 Dec 2014 13:02:57 +0000 (14:02 +0100)]
bus: send attach flags on BUS_MAKE

Make sure to set send-attach-flags on BUS_MAKE. These control which
information is revealed about the bus-owner.

6 years agobus: fix assert() on HELLO error-path
David Herrmann [Fri, 12 Dec 2014 13:02:05 +0000 (14:02 +0100)]
bus: fix assert() on HELLO error-path

Make sure we don't call into any bus_kernel_*() functions before
b->is_kernel is set to true. Hard-code the CMD_FREE just like the other
helpers do.

6 years agonspawn: beef up nspawn with some btrfs magic
Lennart Poettering [Fri, 12 Dec 2014 02:50:59 +0000 (03:50 +0100)]
nspawn: beef up nspawn with some btrfs magic

This adds --template= to duplicate an OS tree as btrfs snpashot and run

This also adds --ephemeral or -x to create a snapshot of an OS tree and
boot that, removing it after exit.

6 years agocopy: teach copy_bytes() btrfs reflink magic
Lennart Poettering [Fri, 12 Dec 2014 02:20:53 +0000 (03:20 +0100)]
copy: teach copy_bytes() btrfs reflink magic

6 years agogpt-auto-generator: make use of new btrfs-util.h APIs
Lennart Poettering [Fri, 12 Dec 2014 02:20:34 +0000 (03:20 +0100)]
gpt-auto-generator: make use of new btrfs-util.h APIs

6 years agoshared: add new btrfs-util.[ch] helpers for doing common btrfs operation
Lennart Poettering [Fri, 12 Dec 2014 02:15:58 +0000 (03:15 +0100)]
shared: add new btrfs-util.[ch] helpers for doing common btrfs operation

6 years agoshared: missing.h should include btrfs.h, before redefining some of its definitions
Lennart Poettering [Fri, 12 Dec 2014 02:13:48 +0000 (03:13 +0100)]
shared: missing.h should include btrfs.h, before redefining some of its definitions

6 years agoutil: minor simplification for loop_write() and loop_read()
Lennart Poettering [Fri, 12 Dec 2014 02:12:58 +0000 (03:12 +0100)]
util: minor simplification for loop_write() and loop_read()

6 years agonspawn: properly validate machine names
Lennart Poettering [Fri, 12 Dec 2014 01:49:40 +0000 (02:49 +0100)]
nspawn: properly validate machine names

6 years agoseccomp-util.h: make sure seccomp-util.h can be included alone
Lennart Poettering [Fri, 12 Dec 2014 01:35:39 +0000 (02:35 +0100)]
seccomp-util.h: make sure seccomp-util.h can be included alone

6 years agopath-util: no need to check whether p is absolute twice
Lennart Poettering [Fri, 12 Dec 2014 01:35:14 +0000 (02:35 +0100)]
path-util: no need to check whether p is absolute twice

6 years agoudev-builtin-btrfs: properly initialize ioctl struct to zeroes
Lennart Poettering [Fri, 12 Dec 2014 01:34:12 +0000 (02:34 +0100)]
udev-builtin-btrfs: properly initialize ioctl struct to zeroes

6 years agoutil: document why we have alloca_align()
Lennart Poettering [Fri, 12 Dec 2014 01:33:48 +0000 (02:33 +0100)]
util: document why we have alloca_align()

6 years agoutil: when using basename() for creating temporary files, verify the resulting name...
Lennart Poettering [Fri, 12 Dec 2014 01:32:33 +0000 (02:32 +0100)]
util: when using basename() for creating temporary files, verify the resulting name is actually valid

Also, rename filename_is_safe() to filename_is_valid(), since it
actually does a full validation for what the kernel will accept as file
name, it's not just a heuristic.

6 years agojournal: fix dangling 'else' ambiguity
David Herrmann [Fri, 12 Dec 2014 08:52:06 +0000 (09:52 +0100)]
journal: fix dangling 'else' ambiguity

Rework the sd-journal iterators to avoid dangling 'else' ambiguity. For a
detailed explanation, see:

    commit bff686e2a981ccd0888cdf1981977d24320f1770
    Author: David Herrmann <>
    Date:   Fri Dec 12 09:43:54 2014 +0100

        hwdb: fix dangling 'else' ambuguity

6 years agohwdb: fix dangling 'else' ambuguity
David Herrmann [Fri, 12 Dec 2014 08:43:54 +0000 (09:43 +0100)]
hwdb: fix dangling 'else' ambuguity

Imagine the following use of hwdb:

    if (condition_A)
        SD_HWDB_FOREACH_PROPERTY(hwdb, modalias, key, value)
            operation_A(key, value);

This should work just fine, but but definitely does not what you would
expect. Due to how SD_HWDB_FOREACH_PROPERTY is defined, the dangling
'else' is linked to the hidden 'if' statement in the macro instead of the
outer 'if (condition_A)'. This is unexpected and really annoying to debug.

Fix this by never leaving un-finished if-statements in
SD_HWDB_FOREACH_PROPERTY(). We simply inverse the if() statement and
explicitly add an 'else'-branch. This way, the statement is closed and all
ambuguities are resolved.

David Herrmann [Fri, 12 Dec 2014 08:30:50 +0000 (09:30 +0100)]

Lets not pollute the global namespace. Prefix all our exported names and
macros with SD_HWDB_*.

6 years agohwdb: Update database of Bluetooth company identifiers
Marcel Holtmann [Thu, 11 Dec 2014 21:50:50 +0000 (22:50 +0100)]
hwdb: Update database of Bluetooth company identifiers

6 years agouse correct format types
Thomas Hindoe Paaboel Andersen [Wed, 10 Dec 2014 19:24:18 +0000 (20:24 +0100)]
use correct format types

6 years agotest-condition: add more test cases
Ronny Chevalier [Thu, 11 Dec 2014 17:30:37 +0000 (18:30 +0100)]
test-condition: add more test cases

6 years agotest-strv: add test for strv_equal
Ronny Chevalier [Thu, 11 Dec 2014 17:30:16 +0000 (18:30 +0100)]
test-strv: add test for strv_equal

6 years agotest-execute: add tests for UMask directive
Ronny Chevalier [Thu, 11 Dec 2014 16:59:10 +0000 (17:59 +0100)]
test-execute: add tests for UMask directive

6 years agotest-unit-name: add tests for %f
Ronny Chevalier [Thu, 11 Dec 2014 16:58:40 +0000 (17:58 +0100)]
test-unit-name: add tests for %f

6 years agobus: sync with kdbus.git
David Herrmann [Thu, 11 Dec 2014 16:25:09 +0000 (17:25 +0100)]
bus: sync with kdbus.git

 * bloom parameters are returned in an offset via HELLO
 * FREE now takes items just like any other ioctl

6 years agotree-wide: use our memset() macros instead of memset() itself
Lennart Poettering [Thu, 11 Dec 2014 15:58:45 +0000 (16:58 +0100)]
tree-wide: use our memset() macros instead of memset() itself

6 years agotreewide: correct spacing near eol in code comments
Torstein Husebø [Wed, 10 Dec 2014 19:00:09 +0000 (20:00 +0100)]
treewide: correct spacing near eol in code comments

6 years agocore: correct spacing near eol in code comments
Torstein Husebø [Wed, 10 Dec 2014 19:00:08 +0000 (20:00 +0100)]
core: correct spacing near eol in code comments

6 years agoshared: correct spacing near eol in code comments
Torstein Husebø [Wed, 10 Dec 2014 19:00:07 +0000 (20:00 +0100)]
shared: correct spacing near eol in code comments

6 years agojournald: correct spacing near eol code comments
Torstein Husebø [Wed, 10 Dec 2014 19:00:06 +0000 (20:00 +0100)]
journald: correct spacing near eol code comments

6 years agosd-bus: correct spacing near eol in code comments
Torstein Husebø [Wed, 10 Dec 2014 19:00:05 +0000 (20:00 +0100)]
sd-bus: correct spacing near eol in code comments

6 years agonetworkd/resolved: correct spacing near eol in code comments
Torstein Husebø [Wed, 10 Dec 2014 19:00:04 +0000 (20:00 +0100)]
networkd/resolved: correct spacing near eol in code comments

6 years agobuild-sys: fix user unit m4 logic
Lennart Poettering [Thu, 11 Dec 2014 13:56:33 +0000 (14:56 +0100)]
build-sys: fix user unit m4 logic

6 years agoupdate TODO
Lennart Poettering [Thu, 11 Dec 2014 00:53:43 +0000 (01:53 +0100)]
update TODO

6 years agosd-dhcp-client: log if we fail to set up lease timers
Tom Gundersen [Thu, 11 Dec 2014 13:43:09 +0000 (14:43 +0100)]
sd-dhcp-client: log if we fail to set up lease timers

6 years agotests: udev - assume /etc/machine-id rather than /etc/hosts
Tom Gundersen [Thu, 11 Dec 2014 13:17:35 +0000 (14:17 +0100)]
tests: udev - assume /etc/machine-id rather than /etc/hosts

On todays machines /etc/hosts is not mandatory. /etc/machine-id is though, so let's rely on that instead.

This makes the udev tests pass again for me.

6 years agolibudev: make libudev-hwdb a wrapper around sd-hwdb
Tom Gundersen [Wed, 3 Dec 2014 16:32:40 +0000 (17:32 +0100)]
libudev: make libudev-hwdb a wrapper around sd-hwdb

6 years agolibsystemd: add sd-hwdb library
Tom Gundersen [Wed, 3 Dec 2014 16:02:34 +0000 (17:02 +0100)]
libsystemd: add sd-hwdb library

This is libudev-hwdb, but decoupled from libudev and in the libsystemd style.

The core code is unchanged, apart from the following minor changes:

 - hwdb.bin located in /**/systemd/hwdb/ take preference over the ones located
   in /**/udev/
 - properties are stored internally in an OrderedHashmap, rather than a
   linked list.
 - a new API call allows individual properties to be queried directly, rather
   than iterating over them all
 - the iteration over properties have been moved inside the library, rather than
   exposing a list directly
 - the unused 'flags' parameter was dropped

6 years agobus: sync with kdbus.git
David Herrmann [Thu, 11 Dec 2014 12:19:41 +0000 (13:19 +0100)]
bus: sync with kdbus.git

Sync up with recent kdbus changed:
 * several ioctls gained .size and .items members (but still unused)
 * CMD_SEND gained its own ioctl structure
 * several members of kdbus_msg were dropped as they were only used during
   SEND, not during RECV etc.
 * CMD_RECV and CMD_SEND now share a kdbus_reply member which contains the
   offset and size of the returned message.

6 years agobus: zero cmd_free before passing to ioctl
David Herrmann [Thu, 11 Dec 2014 09:45:58 +0000 (10:45 +0100)]
bus: zero cmd_free before passing to ioctl

Make sure the whole cmd_free object is zeroed before passing it into the
kernel. This makes valgrind happy and makes us future proof.

6 years agobus: fix memfd-cache regarding memfd offsets
David Herrmann [Thu, 11 Dec 2014 09:44:41 +0000 (10:44 +0100)]
bus: fix memfd-cache regarding memfd offsets

We must restore part->mmap_begin when poping memfds from the memfd-cache.
We rely on the memfds to be unsealed, so we can be sure that we own the
whole FD. Therefore, simply set part->mmap_begin to the same as

This fixes test-bus-kernel-benchmark.

6 years agoTODO: update
David Herrmann [Thu, 11 Dec 2014 08:01:34 +0000 (09:01 +0100)]
TODO: update

Drop resolved kdbus issues.

6 years agolocalectl,man: make it obvious that set-*-keymaps sets both keymaps
Zbigniew Jędrzejewski-Szmek [Thu, 11 Dec 2014 05:02:54 +0000 (00:02 -0500)]
localectl,man: make it obvious that set-*-keymaps sets both keymaps

6 years agozsh-completion: remove duplicate function v218
Zbigniew Jędrzejewski-Szmek [Wed, 10 Dec 2014 22:34:41 +0000 (17:34 -0500)]
zsh-completion: remove duplicate function

6 years agobuild-sys: update Lennart's private target
Lennart Poettering [Wed, 10 Dec 2014 22:19:55 +0000 (23:19 +0100)]
build-sys: update Lennart's private target

6 years agoNEWS: minor wording improvement
Lennart Poettering [Wed, 10 Dec 2014 22:17:54 +0000 (23:17 +0100)]
NEWS: minor wording improvement

6 years agobuild-sys: add missing file to CLEANFILES
Lennart Poettering [Wed, 10 Dec 2014 22:01:13 +0000 (23:01 +0100)]
build-sys: add missing file to CLEANFILES

6 years agoNEWS: update contributors list
Lennart Poettering [Wed, 10 Dec 2014 21:33:21 +0000 (22:33 +0100)]
NEWS: update contributors list

6 years agobuild-sys: bump package and library versions in preparation for 218 release
Lennart Poettering [Wed, 10 Dec 2014 21:31:27 +0000 (22:31 +0100)]
build-sys: bump package and library versions in preparation for 218 release

6 years agobuild-sys: turn off SMACK capabilities stuff for now, since it is incompatible with...
Lennart Poettering [Wed, 10 Dec 2014 21:10:46 +0000 (22:10 +0100)]
build-sys: turn off SMACK capabilities stuff for now, since it is incompatible with nspawn

6 years agoupdate TODO
Lennart Poettering [Wed, 10 Dec 2014 21:08:49 +0000 (22:08 +0100)]
update TODO

6 years agoscope: make attachment of initial PIDs a bit more robust
Lennart Poettering [Wed, 10 Dec 2014 21:06:44 +0000 (22:06 +0100)]
scope: make attachment of initial PIDs a bit more robust

6 years agocore: don't migrate PIDs for units that may contain subcgroups, do this only for...
Lennart Poettering [Wed, 10 Dec 2014 19:38:24 +0000 (20:38 +0100)]
core: don't migrate PIDs for units that may contain subcgroups, do this only for leaf units

Otherwise a slice or delegation unit might move PIDs around ignoring the
fact that it is attached to a subcgroup.

6 years agoupdate TODO
Lennart Poettering [Wed, 10 Dec 2014 18:57:52 +0000 (19:57 +0100)]
update TODO

6 years agocore: properly pass unit file state to clients via the bus
Lennart Poettering [Wed, 10 Dec 2014 18:57:45 +0000 (19:57 +0100)]
core: properly pass unit file state to clients via the bus

6 years agobuild-sys: fix link-order
Kay Sievers [Wed, 10 Dec 2014 18:46:00 +0000 (19:46 +0100)]
build-sys: fix link-order

6 years agoupdate TODO
Lennart Poettering [Wed, 10 Dec 2014 18:07:32 +0000 (19:07 +0100)]
update TODO

6 years agosd-bus: make BUS_ERROR_MAP_ELF_USE() use a const variable
Lennart Poettering [Wed, 10 Dec 2014 18:06:43 +0000 (19:06 +0100)]
sd-bus: make BUS_ERROR_MAP_ELF_USE() use a const variable

6 years agonetworkd: rename section [BridgePort] → [Bridge]
Lennart Poettering [Wed, 10 Dec 2014 18:03:08 +0000 (19:03 +0100)]
networkd: rename section [BridgePort] → [Bridge]

Let's stick to generic sections that describe the general technology,
instead of specific per-object sections, unless we really have a reason
to do that otherwise.

6 years agosd-bus: move common errors src/shared/bus-errors.h → src/libsystemd/sd-bus/bus-common...
Lennart Poettering [Wed, 10 Dec 2014 18:00:46 +0000 (19:00 +0100)]
sd-bus: move common errors src/shared/bus-errors.h → src/libsystemd/sd-bus/bus-common-errors.h

Stuff in src/shared/ should not use stuff from src/libsystemd/ really.

6 years agonetworkd-dhcp6: Support ICMPv6 Other information
Patrik Flykt [Wed, 10 Dec 2014 14:17:35 +0000 (16:17 +0200)]
networkd-dhcp6: Support ICMPv6 Other information

When ICMPv6 Other information is received, enable Information request
in DHCPv6. If the DHCPv6 client already exists, only update the client
if there is a transition from Other to Managed state.

6 years agonetworkd-dhcp6: Move ICMPv6 and DHCPv6 configuration to new file
Patrik Flykt [Wed, 10 Dec 2014 14:17:34 +0000 (16:17 +0200)]
networkd-dhcp6: Move ICMPv6 and DHCPv6 configuration to new file

Handle all aspects of ICMPv6 and DHCPv6 in a file of its own as is done
with DHCPv4 and IPv4LL.

6 years agotest-dhcp6-client: Add a simple Information Request test case
Patrik Flykt [Wed, 10 Dec 2014 14:17:33 +0000 (16:17 +0200)]
test-dhcp6-client: Add a simple Information Request test case

Start the DHCPv6 test case by sending an Information Request, verifying
the reply and continuing at once with the normal address acquisition
procedure. Reuse the DHCPv6 Solicit Reply so that the client code is
verified to ignore any erroneously added IPv6 address information.

6 years agosd-dhcp6-client: Implement Information Request message
Patrik Flykt [Wed, 10 Dec 2014 14:17:32 +0000 (16:17 +0200)]
sd-dhcp6-client: Implement Information Request message

Implement Information Request message according to RFC 3315, section
18.1.5. with the excepion that the first message is not delayed by a
random amount. Instead systemd-networkd is supposed to take care of
desynchronizing between other clients.

Initialize the DHCPv6 client structure in sd_dhcp6_client_start()
as this allows toggling between information request and normal
DHCPv6 address aquisition modes.

6 years agosd-dhcp6-lease: Return only -EINVAL when a NULL lease is supplied
Patrik Flykt [Wed, 10 Dec 2014 14:17:31 +0000 (16:17 +0200)]
sd-dhcp6-lease: Return only -EINVAL when a NULL lease is supplied

Suppyling a NULL lease is not a condition that needs to be asserted,
returning -EINVAL is informative enough to the caller. This simplifies
calling code and doesn't falsely indicate that something erroneous was

6 years agosd-dhcp6-client: Make end of successfull option parsing explicit
Patrik Flykt [Wed, 10 Dec 2014 14:17:30 +0000 (16:17 +0200)]
sd-dhcp6-client: Make end of successfull option parsing explicit

When all DHCPv6 options have been parsed, dhcp6_option_parse() returns
-ENOMSG. Explicitely set the return value to indicate success so that
later code does not need to take this special value into account.

6 years agohwdb: fix typo
Torstein Husebø [Wed, 10 Dec 2014 16:41:54 +0000 (17:41 +0100)]
hwdb: fix typo

6 years agohwdb: add two more mice to the DPI database
Lennart Poettering [Wed, 10 Dec 2014 16:38:47 +0000 (17:38 +0100)]
hwdb: add two more mice to the DPI database

6 years agohwdb: add another Logitech mouse (M-BZ96C)
Lennart Poettering [Wed, 10 Dec 2014 14:59:38 +0000 (15:59 +0100)]
hwdb: add another Logitech mouse (M-BZ96C)

6 years agoTODO
Lennart Poettering [Wed, 10 Dec 2014 14:46:28 +0000 (15:46 +0100)]

6 years agoman: improve docs for systemd-modules-load.service
Lennart Poettering [Wed, 10 Dec 2014 14:46:22 +0000 (15:46 +0100)]
man: improve docs for systemd-modules-load.service

6 years agohwdb: add DPI data for M325 mouse
Lennart Poettering [Wed, 10 Dec 2014 14:46:08 +0000 (15:46 +0100)]
hwdb: add DPI data for M325 mouse

6 years agotest: fix some tests when running inside a container
Jan Synacek [Wed, 10 Dec 2014 09:20:11 +0000 (10:20 +0100)]
test: fix some tests when running inside a container

6 years agovirt: when detecting containers and /run/systemd/container cannot be read, check...
Lennart Poettering [Wed, 10 Dec 2014 12:23:49 +0000 (13:23 +0100)]
virt: when detecting containers and /run/systemd/container cannot be read, check /proc/1/environ

This way, we should be in a slightly better situation if a container is
booted up with only a shell as PID 1. In that case
/run/systemd/container will not be populated, and a check for it hence
be ineffective.

Checking /proc/1/environ doesn't fully fix the problem though, as the
file is only accessible with privileges. This means if PID 1 is not
systemd, and if privileges have been dropped the container detection
will continue to fail.

6 years agosystemctl: fix invalid free when enabling sysv services fails
Zbigniew Jędrzejewski-Szmek [Tue, 9 Dec 2014 19:41:24 +0000 (14:41 -0500)]
systemctl: fix invalid free when enabling sysv services fails

The error was introduced in v215-343-g60731f32f1 'systemctl: do not
bother to mutate state on error', by causing strv_free to attempt to
free a static string. Simplify the whole thing by always keeping the
array in valid state.

6 years agoima-setup: simplify
Zbigniew Jędrzejewski-Szmek [Tue, 2 Dec 2014 01:47:37 +0000 (20:47 -0500)]
ima-setup: simplify