]> git.ipfire.org Git - thirdparty/systemd.git/log
thirdparty/systemd.git
5 years agomissing: rename securebits.h to missing_securebits.h
Yu Watanabe [Tue, 4 Dec 2018 06:49:11 +0000 (07:49 +0100)] 
missing: rename securebits.h to missing_securebits.h

5 years agomissing: move btrfs related entries to missing_btrfs.h and missing_btrfs_tree.h
Yu Watanabe [Tue, 4 Dec 2018 06:46:59 +0000 (07:46 +0100)] 
missing: move btrfs related entries to missing_btrfs.h and missing_btrfs_tree.h

5 years agomissing: move missing entries in keyctl.h to missing_keyctl.h
Yu Watanabe [Tue, 4 Dec 2018 06:41:15 +0000 (07:41 +0100)] 
missing: move missing entries in keyctl.h to missing_keyctl.h

5 years agomeson: add missing missing_*.h
Yu Watanabe [Tue, 4 Dec 2018 06:34:47 +0000 (07:34 +0100)] 
meson: add missing missing_*.h

5 years agoanalyze: Fix if not HAVE_SECCOMP
William A. Kennington III [Tue, 4 Dec 2018 01:40:41 +0000 (17:40 -0800)] 
analyze: Fix if not HAVE_SECCOMP

The new systemd analyze code dependend on routines provided by
libseccomp even if HAVE_SECCOMP is false. This expands the code disabled
in analyze-security to make sure we don't depend on seccomp.

5 years agoMerge pull request #11039 from yuwata/fix-11036
Yu Watanabe [Tue, 4 Dec 2018 04:48:47 +0000 (13:48 +0900)] 
Merge pull request #11039 from yuwata/fix-11036

missing: re-add mistakenly dropped entries

5 years agomissing: rearrange missing_if_link.h to support centos 11039/head
Yu Watanabe [Tue, 4 Dec 2018 01:32:32 +0000 (02:32 +0100)] 
missing: rearrange missing_if_link.h to support centos

5 years agomissing: re-add mistakenly dropped entries
Yu Watanabe [Tue, 4 Dec 2018 00:28:23 +0000 (01:28 +0100)] 
missing: re-add mistakenly dropped entries

These entries are mistakenly dropped by 9714c020fc4cda1823c2a77e3fd08aefa7d78b25.

Fixes #11036.

5 years agoMerge pull request #11031 from poettering/gcc-attr-cleanup
Lennart Poettering [Mon, 3 Dec 2018 20:59:00 +0000 (21:59 +0100)] 
Merge pull request #11031 from poettering/gcc-attr-cleanup

various gcc attribute clean-ups

5 years agoanalyze: tweak wording of description for ProtectSystem= (#11035)
David Malcolm [Mon, 3 Dec 2018 20:57:10 +0000 (15:57 -0500)] 
analyze: tweak wording of description for ProtectSystem= (#11035)

5 years agoMerge pull request #10567 from cdown/disable_controller
Lennart Poettering [Mon, 3 Dec 2018 17:58:29 +0000 (18:58 +0100)] 
Merge pull request #10567 from cdown/disable_controller

cgroup: Add DisableControllers= directive to disable controller in subtree

5 years agoMerge pull request #10920 from yuwata/hashmap-destructor
Lennart Poettering [Mon, 3 Dec 2018 16:59:44 +0000 (17:59 +0100)] 
Merge pull request #10920 from yuwata/hashmap-destructor

hashmap: make hashmap_free() call destructors of key or value

5 years agoMerge pull request #10976 from yuwata/typesafe-netlink-call
Lennart Poettering [Mon, 3 Dec 2018 16:55:00 +0000 (17:55 +0100)] 
Merge pull request #10976 from yuwata/typesafe-netlink-call

netlink: introduce typesafe netlink functions

5 years agotree-wide: use new macro HAS_FEATURE_ADDRESS_SANITIZER everywhere 11031/head
Lennart Poettering [Mon, 3 Dec 2018 16:38:50 +0000 (17:38 +0100)] 
tree-wide: use new macro HAS_FEATURE_ADDRESS_SANITIZER everywhere

5 years agosd-bus: use _variable_no_sanitize_address_ also for BUS_ERROR_MAP_ELF_REGISTER
Lennart Poettering [Mon, 3 Dec 2018 16:33:42 +0000 (17:33 +0100)] 
sd-bus: use _variable_no_sanitize_address_ also for BUS_ERROR_MAP_ELF_REGISTER

5 years agostatic-destruct: turn on new _variable_no_sanitize_address_ variable for STATIC_DESTR...
Lennart Poettering [Mon, 3 Dec 2018 16:33:28 +0000 (17:33 +0100)] 
static-destruct: turn on new _variable_no_sanitize_address_ variable for STATIC_DESTRUCTOR_REGISTER

5 years agomacro: add macro for llvm no_sanitize_address attribute
Lennart Poettering [Mon, 3 Dec 2018 16:30:43 +0000 (17:30 +0100)] 
macro: add macro for llvm no_sanitize_address attribute

We want it for global variables, which LLVM supports and GCC currently
does not (GCC does support it for functions, but we care about global
variables here).

Why is this relevant? When asan is used global variables are padded with
hotzones before and after. But we can't have that for the registration
variables we place in special ELF sections: we want them tightly packed
so that we can iterate through them.

Note that for gcc this isn't an issue, as it will pack stuff in
non-standard sections anyway, even if asan is used.

5 years agomacro: define HAS_FEATURE_ADDRESS_SANITIZER also on gcc
Lennart Poettering [Mon, 3 Dec 2018 16:30:19 +0000 (17:30 +0100)] 
macro: define HAS_FEATURE_ADDRESS_SANITIZER also on gcc

Let's make differences between compilers more minimal.

5 years agoutil-lib: introduce HAS_FEATURE_ADDRESS_SANITIZER
Evgeny Vereshchagin [Sun, 2 Dec 2018 07:28:24 +0000 (08:28 +0100)] 
util-lib: introduce HAS_FEATURE_ADDRESS_SANITIZER

https://clang.llvm.org/docs/AddressSanitizer.html#conditional-compilation-with-has-feature-address-sanitizer

5 years agotest: add test for static destructor
Lennart Poettering [Mon, 3 Dec 2018 12:37:18 +0000 (13:37 +0100)] 
test: add test for static destructor

5 years agocgroup: Add DisableControllers= directive to disable controller in subtree 10567/head
Chris Down [Mon, 3 Dec 2018 14:38:06 +0000 (14:38 +0000)] 
cgroup: Add DisableControllers= directive to disable controller in subtree

Some controllers (like the CPU controller) have a performance cost that
is non-trivial on certain workloads. While this can be mitigated and
improved to an extent, there will for some controllers always be some
overheads associated with the benefits gained from the controller.
Inside Facebook, the fix applied has been to disable the CPU controller
forcibly with `cgroup_disable=cpu` on the kernel command line.

This presents a problem: to disable or reenable the controller, a reboot
is required, but this is quite cumbersome and slow to do for many
thousands of machines, especially machines where disabling/enabling a
stateful service on a machine is a matter of several minutes.

Currently systemd provides some configuration knobs for these in the
form of `[Default]CPUAccounting`, `[Default]MemoryAccounting`, and the
like. The limitation of these is that Default*Accounting is overrideable
by individual services, of which any one could decide to reenable a
controller within the hierarchy at any point just by using a controller
feature implicitly (eg. `CPUWeight`), even if the use of that CPU
feature could just be opportunistic. Since many services are provided by
the distribution, or by upstream teams at a particular organisation,
it's not a sustainable solution to simply try to find and remove
offending directives from these units.

This commit presents a more direct solution -- a DisableControllers=
directive that forcibly disallows a controller from being enabled within
a subtree.

5 years agocgroup: Traverse leaves to realised cgroup to release controllers
Chris Down [Tue, 27 Nov 2018 15:49:41 +0000 (15:49 +0000)] 
cgroup: Traverse leaves to realised cgroup to release controllers

This adds a depth-first version of unit_realize_cgroup_now which can
only do depth-first disabling of controllers, in preparation for the
DisableController= directive.

5 years agocgroup: Rework unit_realize_cgroup_now to explicitly be breadth-first
Chris Down [Mon, 26 Nov 2018 13:45:26 +0000 (13:45 +0000)] 
cgroup: Rework unit_realize_cgroup_now to explicitly be breadth-first

systemd currently doesn't really expend much effort in disabling
controllers. unit_realize_cgroup_now *may* be able to disable a
controller in the basic case when using cgroup v2, but generally won't
manage as downstream dependents may still use it.

This code doesn't add any logic to fix that, but it starts the process
of moving to have a breadth-first version of unit_realize_cgroup_now for
enabling, and a depth-first version of unit_realize_cgroup_now for
disabling.

5 years agocgroup: Move attribute application into unit_create_cgroup
Chris Down [Tue, 27 Nov 2018 15:16:35 +0000 (15:16 +0000)] 
cgroup: Move attribute application into unit_create_cgroup

We always end up doing these together, so just colocate them and require
manager state for unit_create_cgroup.

5 years agosd-bus,static-destruct: clean up how we do our ELF section magic
Lennart Poettering [Mon, 3 Dec 2018 12:22:15 +0000 (13:22 +0100)] 
sd-bus,static-destruct: clean up how we do our ELF section magic

This cleans up a bit how we set up things for the ELF section magic:

1. Let's always use our gcc macros, instead of __attribute__ directly

2. Align our structures to sizeof(void*), i.e. the pointer size, rather
   than a fixed 8 or __BIGGEST_ALIGNMENT__. The former is unnecessarily
   high for 32bit systems, the latter too high for 64bit systems. gcc
   seems to use ptr alignment for static variables itself, hence this
   should be good enough for us too. Moreover, the Linux kernel also
   uses pointer alginment for all its ELF section registration magic,
   hence this should be good enough for us too.

3. Let's always prefix the sections we create ourself with SYSTEMD_,
   just to make clear where they come from.

4. Always align the pointer we start from when iterating through these
   lists. This should be unnecessary, but makes things nicely
   systematic, as we'll align all pointers we use to access these
   sections properly.

5 years agojson: use new _align_() macro
Lennart Poettering [Mon, 3 Dec 2018 12:17:28 +0000 (13:17 +0100)] 
json: use new _align_() macro

5 years agotree-wide: drop redundant space between __attribute__ and ((
Lennart Poettering [Mon, 3 Dec 2018 12:15:09 +0000 (13:15 +0100)] 
tree-wide: drop redundant space between __attribute__ and ((

We follow no general rule, but in most cases we do not place a space
outside of macro.h. Hence let's stick to that, and adapt macro.h too,
and follow the rule systematically that there shall not be a space
between __attribute__ and ((...

Yes, this does not matter at all, and is purely OCD cosmetics. But then
again, the uses of __attribute__ are very local only, hence the changes
cleaning this up are small and are unlikely to have to be repeated too
often...

5 years agomacro: add macros for a couple of more gcc attributes we use
Lennart Poettering [Mon, 3 Dec 2018 12:10:09 +0000 (13:10 +0100)] 
macro: add macros for a couple of more gcc attributes we use

5 years agotree-wide: use gcc attribute macros where appropriate
Lennart Poettering [Mon, 3 Dec 2018 12:08:33 +0000 (13:08 +0100)] 
tree-wide: use gcc attribute macros where appropriate

We have these macros already, hence use them.

5 years agonetwork: drop unnecessary buffers
Yu Watanabe [Mon, 3 Dec 2018 09:22:05 +0000 (10:22 +0100)] 
network: drop unnecessary buffers

5 years agoMerge pull request #10992 from yuwata/follow-up-10948
Lennart Poettering [Mon, 3 Dec 2018 10:09:04 +0000 (11:09 +0100)] 
Merge pull request #10992 from yuwata/follow-up-10948

network: make fib rule accept arbitrary ip protocol

5 years agomissing: split network related entries
Yu Watanabe [Sun, 2 Dec 2018 15:27:02 +0000 (16:27 +0100)] 
missing: split network related entries

Also adds comments which kernel version added the entries.

Closes #10553.

5 years agosd-boot: remove Stall() call (#11029)
Harald Hoyer [Mon, 3 Dec 2018 09:27:26 +0000 (10:27 +0100)] 
sd-boot: remove Stall() call (#11029)

This is left-over from debugging.

5 years agovxlan: minor coding style fixes.
Susant Sahani [Sun, 2 Dec 2018 13:04:06 +0000 (18:34 +0530)] 
vxlan: minor coding style fixes.

5 years agoMerge pull request #11011 from poettering/tmpfile-util
Yu Watanabe [Sun, 2 Dec 2018 17:04:31 +0000 (02:04 +0900)] 
Merge pull request #11011 from poettering/tmpfile-util

split up fileio.c a bit

5 years agoresolved: sort headers again 11011/head
Lennart Poettering [Sun, 2 Dec 2018 12:22:14 +0000 (13:22 +0100)] 
resolved: sort headers again

5 years agoutil-lib: split out env file parsing code into env-file.c
Lennart Poettering [Fri, 30 Nov 2018 21:08:41 +0000 (22:08 +0100)] 
util-lib: split out env file parsing code into env-file.c

It's quite complex, let's split this out.

No code changes, just some file rearranging.

5 years agoutil-lib: move open_serialization_fd() to serialize.c
Lennart Poettering [Fri, 30 Nov 2018 20:39:12 +0000 (21:39 +0100)] 
util-lib: move open_serialization_fd() to serialize.c

It definitely fits better there.

No code changes, just some rearranging.

5 years agoresolved: remove duplicate #include
Lennart Poettering [Fri, 30 Nov 2018 20:12:50 +0000 (21:12 +0100)] 
resolved: remove duplicate #include

5 years agotest: remove duplicate #include
Lennart Poettering [Fri, 30 Nov 2018 20:18:34 +0000 (21:18 +0100)] 
test: remove duplicate #include

5 years agoutil-lib: split out all temporary file related calls into tmpfiles-util.c
Lennart Poettering [Fri, 30 Nov 2018 20:05:27 +0000 (21:05 +0100)] 
util-lib: split out all temporary file related calls into tmpfiles-util.c

This splits out a bunch of functions from fileio.c that have to do with
temporary files. Simply to make the header files a bit shorter, and to
group things more nicely.

No code changes, just some rearranging of source files.

5 years agoutil-lib: don't include fileio.h from fileio-label.h
Lennart Poettering [Fri, 30 Nov 2018 20:07:21 +0000 (21:07 +0100)] 
util-lib: don't include fileio.h from fileio-label.h

There's no reason for doing that, hence simply don't.

5 years agotest: remove unnecessary include
Lennart Poettering [Fri, 30 Nov 2018 20:17:20 +0000 (21:17 +0100)] 
test: remove unnecessary include

5 years agotest: (void)ify unlink() call
Lennart Poettering [Fri, 30 Nov 2018 20:15:57 +0000 (21:15 +0100)] 
test: (void)ify unlink() call

5 years agofileio: remove unnecessary initialization
Lennart Poettering [Fri, 30 Nov 2018 20:06:16 +0000 (21:06 +0100)] 
fileio: remove unnecessary initialization

5 years agofileio: include ctype.h with <> rather than ""
Lennart Poettering [Fri, 30 Nov 2018 20:05:49 +0000 (21:05 +0100)] 
fileio: include ctype.h with <> rather than ""

It's a system header after all.

5 years agosysusers: define main through macro 10920/head
Yu Watanabe [Sun, 25 Nov 2018 19:42:36 +0000 (04:42 +0900)] 
sysusers: define main through macro

This also fixes possible memleak when uid/gid or user/group name
in database are conflicted.

5 years agosysusers: use fgetgrent_sane()
Yu Watanabe [Sun, 25 Nov 2018 19:41:53 +0000 (04:41 +0900)] 
sysusers: use fgetgrent_sane()

5 years agolldp: rename lldp_neighbor_id_hash_ops and set value destructor
Yu Watanabe [Sun, 25 Nov 2018 18:38:48 +0000 (03:38 +0900)] 
lldp: rename lldp_neighbor_id_hash_ops and set value destructor

5 years agoudev: use hashmap_clear_free_key() and hashmap_free_free_key()
Yu Watanabe [Sun, 25 Nov 2018 18:32:20 +0000 (03:32 +0900)] 
udev: use hashmap_clear_free_key() and hashmap_free_free_key()

5 years agoportable: introduce portable_metadata_hash_ops and use it
Yu Watanabe [Wed, 28 Nov 2018 13:55:40 +0000 (22:55 +0900)] 
portable: introduce portable_metadata_hash_ops and use it

5 years agomachine: introduce machine_hash_ops and use it
Yu Watanabe [Wed, 28 Nov 2018 13:55:13 +0000 (22:55 +0900)] 
machine: introduce machine_hash_ops and use it

5 years agomachine-image: introduce image_hash_ops and use it
Yu Watanabe [Wed, 28 Nov 2018 13:54:44 +0000 (22:54 +0900)] 
machine-image: introduce image_hash_ops and use it

5 years agotmpfiles: define main through macro
Yu Watanabe [Sun, 25 Nov 2018 16:00:54 +0000 (01:00 +0900)] 
tmpfiles: define main through macro

5 years agotmpfiles: make load_unix_sockets() return negative errno on failure
Yu Watanabe [Sun, 25 Nov 2018 15:48:15 +0000 (00:48 +0900)] 
tmpfiles: make load_unix_sockets() return negative errno on failure

5 years agocryptsetup-generator: define main through macro
Yu Watanabe [Sun, 25 Nov 2018 15:19:08 +0000 (00:19 +0900)] 
cryptsetup-generator: define main through macro

5 years agosd-bus: introduce track_item_hash_ops and use it
Yu Watanabe [Sun, 25 Nov 2018 15:04:46 +0000 (00:04 +0900)] 
sd-bus: introduce track_item_hash_ops and use it

5 years agodhcp: introduce dhcp_lease_hash_ops and use it
Yu Watanabe [Sun, 25 Nov 2018 14:58:49 +0000 (23:58 +0900)] 
dhcp: introduce dhcp_lease_hash_ops and use it

5 years agocgtop: use SWAP_TWO() macro
Yu Watanabe [Sun, 25 Nov 2018 14:55:30 +0000 (23:55 +0900)] 
cgtop: use SWAP_TWO() macro

5 years agocgtop: introduce group_hash_ops and use it
Yu Watanabe [Sun, 25 Nov 2018 14:54:19 +0000 (23:54 +0900)] 
cgtop: introduce group_hash_ops and use it

5 years agotest: add tests for destructors of hashmap or set
Yu Watanabe [Sun, 25 Nov 2018 12:54:44 +0000 (21:54 +0900)] 
test: add tests for destructors of hashmap or set

5 years agohash-func: add destructors for key and value
Yu Watanabe [Tue, 27 Nov 2018 13:25:40 +0000 (22:25 +0900)] 
hash-func: add destructors for key and value

If they are set, then they are called in hashmap_clear() or
hashmap_free().

5 years agotree-wide: make hash_ops typesafe
Yu Watanabe [Tue, 27 Nov 2018 13:25:20 +0000 (22:25 +0900)] 
tree-wide: make hash_ops typesafe

5 years agohash-funcs: make basic hash_ops typesafe
Yu Watanabe [Sun, 2 Dec 2018 06:46:33 +0000 (07:46 +0100)] 
hash-funcs: make basic hash_ops typesafe

5 years agohash-funcs: introduce macro to create typesafe hash_ops
Yu Watanabe [Wed, 28 Nov 2018 05:10:04 +0000 (14:10 +0900)] 
hash-funcs: introduce macro to create typesafe hash_ops

5 years agoutil: define free_func_t
Yu Watanabe [Tue, 27 Nov 2018 07:33:28 +0000 (16:33 +0900)] 
util: define free_func_t

5 years agohashmap: fix minor coding style issue
Yu Watanabe [Sun, 25 Nov 2018 13:01:10 +0000 (22:01 +0900)] 
hashmap: fix minor coding style issue

5 years agonetwork: use typesafe netlink_call_async() macro where applicable 10976/head
Yu Watanabe [Wed, 28 Nov 2018 20:06:52 +0000 (21:06 +0100)] 
network: use typesafe netlink_call_async() macro where applicable

5 years agonetwork: rename ndisc_route_handler() to ndisc_netlink_message_handler()
Yu Watanabe [Sun, 2 Dec 2018 05:28:04 +0000 (06:28 +0100)] 
network: rename ndisc_route_handler() to ndisc_netlink_message_handler()

As it is also called when configuring addresses.

5 years agonetwork: add assertions
Yu Watanabe [Wed, 28 Nov 2018 20:29:09 +0000 (21:29 +0100)] 
network: add assertions

As they do not have default callback functions.

5 years agonetwork: use route_remove_handler() as the default callback of route_remove()
Yu Watanabe [Wed, 28 Nov 2018 20:22:42 +0000 (21:22 +0100)] 
network: use route_remove_handler() as the default callback of route_remove()

5 years agonetwork: use address_remove_handler() as the default callback of address_remove()
Yu Watanabe [Wed, 28 Nov 2018 20:22:08 +0000 (21:22 +0100)] 
network: use address_remove_handler() as the default callback of address_remove()

5 years agonetwork: set default callbacks for routing_policy_rule_configure() and routing_policy...
Yu Watanabe [Wed, 28 Nov 2018 20:18:16 +0000 (21:18 +0100)] 
network: set default callbacks for routing_policy_rule_configure() and routing_policy_rule_remove()

5 years agonetwork: move address_label_handler() to networkd-address-label.c
Yu Watanabe [Wed, 28 Nov 2018 20:14:53 +0000 (21:14 +0100)] 
network: move address_label_handler() to networkd-address-label.c

And use it as the default callback function of address_label_configure().

5 years agonetwork: simplify dhcp6_get_prefix_delegation()
Yu Watanabe [Wed, 28 Nov 2018 19:48:34 +0000 (20:48 +0100)] 
network: simplify dhcp6_get_prefix_delegation()

5 years agonetlink: add typesafe netlink functions
Yu Watanabe [Wed, 28 Nov 2018 16:05:32 +0000 (01:05 +0900)] 
netlink: add typesafe netlink functions

5 years agomacro: introduce DEFINE_TRIVIAL_DESTRUCTOR() macro
Yu Watanabe [Wed, 28 Nov 2018 15:32:57 +0000 (00:32 +0900)] 
macro: introduce DEFINE_TRIVIAL_DESTRUCTOR() macro

5 years agolibsystemd: introduce _sd_destroy_t
Yu Watanabe [Wed, 28 Nov 2018 15:28:53 +0000 (00:28 +0900)] 
libsystemd: introduce _sd_destroy_t

5 years agocore,run: make SocketProtocol= accept protocol name in upper case an protocol number 10992/head
Yu Watanabe [Fri, 30 Nov 2018 03:57:03 +0000 (04:57 +0100)] 
core,run: make SocketProtocol= accept protocol name in upper case an protocol number

5 years agonetwork: make IPProtocol= also accept IP protocol number
Yu Watanabe [Thu, 29 Nov 2018 15:43:40 +0000 (16:43 +0100)] 
network: make IPProtocol= also accept IP protocol number

5 years agonetwork: rename Protocol= in [RoutingPolicyRule] to IPProtocol=
Yu Watanabe [Thu, 29 Nov 2018 15:42:39 +0000 (16:42 +0100)] 
network: rename Protocol= in [RoutingPolicyRule] to IPProtocol=

5 years agotest: add tests for ip_protocol_{from,to}_name()
Yu Watanabe [Thu, 29 Nov 2018 15:28:33 +0000 (16:28 +0100)] 
test: add tests for ip_protocol_{from,to}_name()

5 years agoutil: introduce parse_ip_protocol()
Yu Watanabe [Thu, 29 Nov 2018 15:09:30 +0000 (16:09 +0100)] 
util: introduce parse_ip_protocol()

Not only protocol name in lower case, but it optionally accepts
IP protocol name in upper case and IP protocol number.

5 years agoutil: cast smaller type to large type
Yu Watanabe [Sun, 2 Dec 2018 04:58:18 +0000 (05:58 +0100)] 
util: cast smaller type to large type

5 years agoutil: rename socket_protocol_{from,to}_name() to ip_protocol_{from,to}_name()
Yu Watanabe [Thu, 29 Nov 2018 14:58:43 +0000 (15:58 +0100)] 
util: rename socket_protocol_{from,to}_name() to ip_protocol_{from,to}_name()

5 years agotree-wide: remove various unused functions
Lennart Poettering [Fri, 30 Nov 2018 16:38:56 +0000 (17:38 +0100)] 
tree-wide: remove various unused functions

All found with "cppcheck --enable=unusedFunction".

5 years agoMerge pull request #11013 from evverx/travis-clang
Evgeny Vereshchagin [Sun, 2 Dec 2018 00:54:21 +0000 (03:54 +0300)] 
Merge pull request #11013 from evverx/travis-clang

travis: also build systemd with clang

5 years agoip rule: fix clang warning. 11013/head
Susant Sahani [Sat, 1 Dec 2018 09:44:35 +0000 (15:14 +0530)] 
ip rule: fix clang warning.

```
[2/1209] Compiling C object 'src/network/src@network@@networkd-core@sta/networkd-routing-policy-rule.c.o'.
FAILED: src/network/src@network@@networkd-core@sta/networkd-routing-policy-rule.c.o
clang -Isrc/network/src@network@@networkd-core@sta -Isrc/network -I../src/network -Isrc/basic -I../src/basic -Isrc/shared -I../src/shared -Isrc/systemd -I../src/systemd -Isrc/journal -I../src/journal -Isrc/journal-remote -I../src/journal-remote -Isrc/nspawn -I../src/nspawn -Isrc/resolve -I../src/resolve -Isrc/timesync -I../src/timesync -I../src/time-wait-sync -Isrc/login -I../src/login -Isrc/udev -I../src/udev -Isrc/libudev -I../src/libudev -Isrc/core -I../src/core -I../src/libsystemd/sd-bus -I../src/libsystemd/sd-device -I../src/libsystemd/sd-event -I../src/libsystemd/sd-hwdb -I../src/libsystemd/sd-id128 -I../src/libsystemd/sd-netlink -I../src/libsystemd/sd-network -Isrc/libsystemd-network -I../src/libsystemd-network -I. -I../ -Xclang -fcolor-diagnostics -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Werror -std=gnu99 -O0 -g -Wextra -Werror=undef -Wmissing-include-dirs -Wold-style-definition -Wpointer-arith -Winit-self -Wfloat-equal -Werror=missing-prototypes -Werror=implicit-function-declaration -Werror=missing-declarations -Werror=return-type -Werror=incompatible-pointer-types -Werror=format=2 -Wstrict-prototypes -Wredundant-decls -Wmissing-noreturn -Wshadow -Wendif-labels -Wstrict-aliasing=2 -Wwrite-strings -Werror=overflow -Werror=shift-count-overflow -Wdate-time -Wnested-externs -Wno-unused-parameter -Wno-missing-field-initializers -Wno-unused-result -Wno-error=nonnull -ffast-math -fno-common -fdiagnostics-show-option -fno-strict-aliasing -fvisibility=hidden -fstack-protector -fstack-protector-strong --param=ssp-buffer-size=4 -fPIE -Wno-typedef-redefinition -Wno-gnu-variable-sized-type-not-at-end -Werror=shadow -include config.h -fPIC  -MD -MQ 'src/network/src@network@@networkd-core@sta/networkd-routing-policy-rule.c.o' -MF 'src/network/src@network@@networkd-core@sta/networkd-routing-policy-rule.c.o.d' -o 'src/network/src@network@@networkd-core@sta/networkd-routing-policy-rule.c.o' -c ../src/network/networkd-routing-policy-rule.c
../src/network/networkd-routing-policy-rule.c:1071:33: error: format specifies type 'unsigned char' but the argument has type '__u16' (aka 'unsigned short') [-Werror,-Wformat]
                                rule->sport.start, rule->sport.end);
                                ^~~~~~~~~~~~~~~~~
../src/network/networkd-routing-policy-rule.c:1071:52: error: format specifies type 'unsigned char' but the argument has type '__u16' (aka 'unsigned short') [-Werror,-Wformat]
                                rule->sport.start, rule->sport.end);
                                                   ^~~~~~~~~~~~~~~
../src/network/networkd-routing-policy-rule.c:1078:33: error: format specifies type 'unsigned char' but the argument has type '__u16' (aka 'unsigned short') [-Werror,-Wformat]
                                rule->dport.start, rule->dport.end);
                                ^~~~~~~~~~~~~~~~~
../src/network/networkd-routing-policy-rule.c:1078:52: error: format specifies type 'unsigned char' but the argument has type '__u16' (aka 'unsigned short') [-Werror,-Wformat]
                                rule->dport.start, rule->dport.end);
                                                   ^~~~~~~~~~~~~~~
4 errors generated.
```

5 years agoresolved: add missed io-util.h header to resolved-dnstls-openssl.c
Aleksei Timofeyev [Sat, 1 Dec 2018 09:10:08 +0000 (14:10 +0500)] 
resolved: add missed io-util.h header to resolved-dnstls-openssl.c

Regression after commit 5cfa2c3dc09ffed1

5 years agotravis: also build systemd with clang
Evgeny Vereshchagin [Fri, 30 Nov 2018 23:45:35 +0000 (00:45 +0100)] 
travis: also build systemd with clang

5 years agotravis: use latest instead of rawhide
Evgeny Vereshchagin [Sat, 1 Dec 2018 03:28:50 +0000 (04:28 +0100)] 
travis: use latest instead of rawhide

5 years agoMerge pull request #11006 from poettering/conf-file-fix
Lennart Poettering [Fri, 30 Nov 2018 23:47:22 +0000 (00:47 +0100)] 
Merge pull request #11006 from poettering/conf-file-fix

minor fixes for conf-files.c

5 years agoMerge pull request #11002 from keszybz/path_join-merging
Lennart Poettering [Fri, 30 Nov 2018 23:44:58 +0000 (00:44 +0100)] 
Merge pull request #11002 from keszybz/path_join-merging

Path join merging

5 years agoMerge pull request #11004 from keszybz/remove-fixme-comment
Lennart Poettering [Fri, 30 Nov 2018 23:01:11 +0000 (00:01 +0100)] 
Merge pull request #11004 from keszybz/remove-fixme-comment

socket-util: drop obsolete FIXME comment and add test

5 years agopath-util: allow NULLs in arguments to path_join() 11002/head
Zbigniew Jędrzejewski-Szmek [Fri, 30 Nov 2018 10:06:24 +0000 (11:06 +0100)] 
path-util: allow NULLs in arguments to path_join()

This removes the need to remember to put strempty() in places, thus reducing
the likelihood of a stupid mistake.

5 years agonetworkd: refuse IPv6 RADV prefixes that lack Prefix= setting
Lennart Poettering [Fri, 30 Nov 2018 18:34:17 +0000 (19:34 +0100)] 
networkd: refuse IPv6 RADV prefixes that lack Prefix= setting

Fixes: #9589
5 years agobasic/socket-util: use c-escaping to print unprintable socket paths 11004/head
Zbigniew Jędrzejewski-Szmek [Fri, 30 Nov 2018 10:54:42 +0000 (11:54 +0100)] 
basic/socket-util: use c-escaping to print unprintable socket paths

We are pretty careful to reject abstract sockets that are too long to fit in
the address structure as a NUL-terminated string. And since we parse sockets as
strings, it is not possible to embed a NUL in the the address either.  But we
might receive an external socket (abstract or not), and we want to be able to
print its address in all cases. We would call socket_address_verify() and
refuse to print various sockets that the kernel considers legit.

Let's do the strict verification only in case of socket addresses we parse and
open ourselves, and do less strict verification when printing addresses of
existing sockets, and use c-escaping to print embedded NULs and such.

More tests are added.

This should make LGTM happier because on FIXME comment is removed.

5 years agoshared/socket-util: do not print empty CID
Zbigniew Jędrzejewski-Szmek [Fri, 30 Nov 2018 14:17:25 +0000 (15:17 +0100)] 
shared/socket-util: do not print empty CID

That's just ugly.

5 years agotest-socket-util: add test for socket_address_print
Zbigniew Jędrzejewski-Szmek [Fri, 30 Nov 2018 14:13:32 +0000 (15:13 +0100)] 
test-socket-util: add test for socket_address_print

5 years agotest-socket-util: the usual modernization
Zbigniew Jędrzejewski-Szmek [Fri, 30 Nov 2018 13:23:19 +0000 (14:23 +0100)] 
test-socket-util: the usual modernization