Lennart Poettering [Tue, 6 Oct 2015 10:32:50 +0000 (12:32 +0200)]
strv: properly return ENOMEM where we should in strv_extend_n()
Lennart Poettering [Tue, 6 Oct 2015 10:32:31 +0000 (12:32 +0200)]
activate: validate fdname when accepting it
Lennart Poettering [Tue, 6 Oct 2015 10:32:15 +0000 (12:32 +0200)]
man: use <function> where we refer to functions
Tom Gundersen [Tue, 6 Oct 2015 10:11:44 +0000 (12:11 +0200)]
NEWS
Tom Gundersen [Tue, 6 Oct 2015 10:06:56 +0000 (12:06 +0200)]
Merge pull request #1468 from poettering/fdnames
Add support for naming fds for socket activation and more
Tom Gundersen [Tue, 6 Oct 2015 09:58:52 +0000 (11:58 +0200)]
Merge pull request #1467 from jacob-keller/master
networkd: document ability to disable MACAddressPolicy
Tom Gundersen [Tue, 6 Oct 2015 09:57:53 +0000 (11:57 +0200)]
Merge pull request #1466 from kaysievers/wip
libsystemd: sd-device - translate / vs. ! in sysname
Tom Gundersen [Tue, 6 Oct 2015 09:54:14 +0000 (11:54 +0200)]
NEWS
Lennart Poettering [Tue, 6 Oct 2015 08:24:02 +0000 (10:24 +0200)]
unit: give systemd-networkd.socket a better description
Usually we try to properly uppercase first characters in the
description, do so here, too. Also, keep it close to the string used in
systemd-networkd.service.
Lennart Poettering [Tue, 6 Oct 2015 08:03:58 +0000 (10:03 +0200)]
man: add "systemd-analyze set-log-target" to synopsis too
It's already documented in prose, now add it to the synopsis too.
Lennart Poettering [Sun, 4 Oct 2015 15:36:19 +0000 (17:36 +0200)]
core: add support for naming file descriptors passed using socket activation
This adds support for naming file descriptors passed using socket
activation. The names are passed in a new $LISTEN_FDNAMES= environment
variable, that matches the existign $LISTEN_FDS= one and contains a
colon-separated list of names.
This also adds support for naming fds submitted to the per-service fd
store using FDNAME= in the sd_notify() message.
This also adds a new FileDescriptorName= setting for socket unit files
to set the name for fds created by socket units.
This also adds a new call sd_listen_fds_with_names(), that is similar to
sd_listen_fds(), but also returns the names of the fds.
systemd-activate gained the new --fdname= switch to specify a name for
testing socket activation.
This is based on #1247 by Maciej Wereski.
Fixes #1247.
Daniel Mack [Tue, 6 Oct 2015 09:02:04 +0000 (11:02 +0200)]
Merge pull request #1452 from poettering/journal-vacuum
A variety of journal vacuuming improvements, plus an nspawn fix
Lennart Poettering [Sat, 3 Oct 2015 14:41:36 +0000 (16:41 +0200)]
core: simplify fd collection code, return number of fds as return value
Let's simplify the fd collection code a bit, and return the number of
collected fds as positive integer, the way it's customary in our usual
code.
Lennart Poettering [Sat, 3 Oct 2015 14:39:57 +0000 (16:39 +0200)]
socket: don't double close the same fd for FIFOs
Lennart Poettering [Sat, 3 Oct 2015 14:38:52 +0000 (16:38 +0200)]
gpt-auto-generator: fix duplicate backing partition check
We shouldn't exit the loop early, otherwise our duplicate backing
partition check won't work.
Jacob Keller [Mon, 5 Oct 2015 21:14:45 +0000 (14:14 -0700)]
document ability to disable MACAddressPolicy
While it is currently possible to either not set MACAddressPolicy or set
it to a value different from "persistent" or "random", it is not obvious
that a user can do so. Add a policy, "none", which simply retains kernel
MAC addresses (same as not filling in the policy at all) and document it
so that users are aware of this setting.
Signed-off-by: Jacob Keller <jacob.keller@gmail.com>
Kay Sievers [Mon, 5 Oct 2015 22:41:32 +0000 (00:41 +0200)]
libsystemd: sd-device - translate / vs. ! in sysname
The kernel replaces '/' in device names with '!', we translate that back
to '/' in sysname, when taking sysname as input, we should translate it
back again.
Tom Gundersen [Mon, 5 Oct 2015 21:25:06 +0000 (23:25 +0200)]
Merge pull request #1462 from lnykryn/analyze-manpage
man: LEVEL in systemd-analyze set-log level is not optional
Tom Gundersen [Mon, 5 Oct 2015 21:24:09 +0000 (23:24 +0200)]
Merge pull request #1406 from blaskovic/journal-remote-typo
journal-remote: typo in log_error when no sources are specified
[tomegun: this was a pun, but let's not do that]
Tom Gundersen [Mon, 5 Oct 2015 21:16:43 +0000 (23:16 +0200)]
Merge pull request #1448 from bengal/lldp-export-v5
LLDP: add API to export neighbors list (v5)
Tom Gundersen [Mon, 5 Oct 2015 20:44:38 +0000 (22:44 +0200)]
Merge pull request #1459 from ssahani/bridge1
networkd: add bridge properties
Tom Gundersen [Mon, 5 Oct 2015 20:42:44 +0000 (22:42 +0200)]
Merge pull request #1372 from jemk/prefsrc
networkd: add support to configure preferred source of static routes
Lukas Nykryn [Mon, 5 Oct 2015 10:19:13 +0000 (12:19 +0200)]
man: LEVEL in systemd-analyze set-log level is not optional
rhbz#1268336
Daniel Mack [Mon, 5 Oct 2015 09:31:21 +0000 (11:31 +0200)]
Merge pull request #1461 from Danielmachon/patch-1
Update NEWS
Daniel Machon [Mon, 5 Oct 2015 09:15:16 +0000 (11:15 +0200)]
Update NEWS
Fixed spelling error: seriban -> serbian
Daniel Mack [Mon, 5 Oct 2015 07:47:58 +0000 (09:47 +0200)]
NEWS update
Susant Sahani [Mon, 5 Oct 2015 04:08:32 +0000 (09:38 +0530)]
man: add man for bridge params
Susant Sahani [Mon, 5 Oct 2015 04:08:00 +0000 (09:38 +0530)]
networkd: add bridge properties
ForwardDelaySec: forward delay
HelloTimeSec: hello time
MaxAgeSec: maximum message age
for more information see
http://www.tldp.org/HOWTO/BRIDGE-STP-HOWTO/set-up-the-bridge.html
In kernel
br_dev_newlink: does not have the this functionality to set while
creation.
br_changelink: after creation we can change the parameters.
we need to first create then set it the parameters.
Introduce new callback post_create .This should
set the properties after the creation.
Susant Sahani [Mon, 5 Oct 2015 04:06:57 +0000 (09:36 +0530)]
sd-rtnl: introduce new API to set the NL header flags
By default we set as NLM_F_CREATE | NLM_F_EXCL in
sd_rtnl_message_new_link
But incase of bridge we need to set NLM_F_REQUEST | NLM_F_ACK.
If NLM_F_EXCL is set then we are unable to set the parameters. As bridge
supports setting properties after creation not during creation.
Susant Sahani [Mon, 5 Oct 2015 04:06:05 +0000 (09:36 +0530)]
sd-rtnl: sd-netlink: add support for bridge NL parametrs
Rename rtnl_link_info_data_bridge_types to
rtnl_link_bridge_management_types
as they are of nested types of IFLA_AF_SPEC.
Susant Sahani [Mon, 5 Oct 2015 04:05:36 +0000 (09:35 +0530)]
missing.h : add bridge params
Kay Sievers [Sun, 4 Oct 2015 18:25:44 +0000 (20:25 +0200)]
Merge pull request #1457 from martinpitt/master
keymap: Add Thinkpad Yoga 12 (2015)
Lennart Poettering [Sun, 4 Oct 2015 15:34:44 +0000 (18:34 +0300)]
Merge pull request #1454 from kostich/master
po, catalog: added Serbian translation.
Martin Pitt [Sun, 4 Oct 2015 12:31:00 +0000 (14:31 +0200)]
keymap: Add Thinkpad Yoga 12 (2015)
Fixes #1440
Марко М. Костић (Marko M. Kostić) [Sat, 3 Oct 2015 20:07:29 +0000 (22:07 +0200)]
po, catalog: added Serbian translation.
Lennart Poettering [Sat, 3 Oct 2015 11:37:21 +0000 (13:37 +0200)]
core: don't unset reload result, unless we begin a start or reload operation
Much like the result of the service itself we should not reset the
reload result unless we actually start from the beginning, so that
clients can query it at any time.
Specifically, let's reset the result states only when we begin with a
start operation (for both the main result, and the reload result), when
we begin with a reload operation (only for the load result), or when the
use explicitly asks for that via "systemctl reset-failed".
This is a more generic fix for #1447.
Fixes #1447.
Lennart Poettering [Sat, 3 Oct 2015 10:04:47 +0000 (12:04 +0200)]
Merge pull request #1450 from evverx/man-journal-fields
man: systemd.journal-fields: add info about _TRANSPORT=audit
Lennart Poettering [Sat, 3 Oct 2015 09:54:43 +0000 (11:54 +0200)]
man: include numeric prefixes in example file names for .link, .netdev, .network files
In order to avoid confusion with the default files we ship, let's use a
low prefix number for all examples.
Fixes #1409.
Lennart Poettering [Sat, 3 Oct 2015 09:40:16 +0000 (11:40 +0200)]
man: fix journalctl --syslog-identifier= documentation
We don't actually accept patterns, hence don't claim so. This is a
fix-up for
730836403aee5f5bb998e6e3622ea7068fce0699.
Fixes #1256.
Lennart Poettering [Sat, 3 Oct 2015 09:34:11 +0000 (11:34 +0200)]
man: document that the automatic journal limits are capped to 4G by default
Fixes #1441.
Lennart Poettering [Sat, 3 Oct 2015 09:23:52 +0000 (11:23 +0200)]
nspawn: fix --image= when nspawn is run as service
nspawn needs access to /dev/loop to implement --image=, hence grant that
in the service file.
Fixes #1446.
Evgeny Vereshchagin [Sat, 3 Oct 2015 02:38:06 +0000 (05:38 +0300)]
man: systemd.journal-fields: add info about _TRANSPORT=audit
Lennart Poettering [Fri, 2 Oct 2015 21:21:59 +0000 (23:21 +0200)]
journal: rework vacuuming logic
Implement a maximum limit on number of journal files to keep around.
Enforcing a limit is useful on this since our performance when viewing
pays a heavy penalty for each journal file to interleve. This setting is
turned on now by default, and set to 100.
Also, actully implement what
348ced909724a1331b85d57aede80a102a00e428
promised: use whatever we find on disk at startup as lower bound on how
much disk space we can use. That commit introduced some provisions to
implement this, but actually never did.
This also adds "journalctl --vacuum-files=" to vacuum files on disk by
their number explicitly.
Lennart Poettering [Fri, 2 Oct 2015 21:20:51 +0000 (23:20 +0200)]
journal: use automatic clenup for ACL types
Lennart Poettering [Fri, 2 Oct 2015 21:19:00 +0000 (23:19 +0200)]
journal: improve some messages
Indicate that we are ignoring errors, when we ignore them, and log that
at LOG_WARNING level.
Use the right error code for the log message.
Lennart Poettering [Fri, 2 Oct 2015 20:42:13 +0000 (22:42 +0200)]
journal: simplify things by using the LESS_BY() macro
Lennart Poettering [Fri, 2 Oct 2015 20:39:24 +0000 (22:39 +0200)]
journal: don't affect atime of journal files when vacuuming
Let's try to use O_NOATIME if we can when vacuuming old journal files,
if we have the permissions for it, so that vacuuming doesn't count as
proper journal read access.
Lennart Poettering [Fri, 2 Oct 2015 20:37:53 +0000 (22:37 +0200)]
journal: prefer stack allocation
Lennart Poettering [Fri, 2 Oct 2015 20:36:33 +0000 (22:36 +0200)]
journal: make journal_file_close() return NULL
The way it is customary everywhere else in our sources.
Lennart Poettering [Fri, 2 Oct 2015 20:31:32 +0000 (22:31 +0200)]
journal: port over to fd_getcrtime_at()
Let's use fd_getcrtime_at(), since that *at() family of calls is how we
read the rest of the file metadata, too.
Beniamino Galvani [Thu, 24 Sep 2015 21:44:59 +0000 (23:44 +0200)]
lldp: add reception tests
Add some tests to simulate the reception of LLDP frames and to verify
the correctness of the data in the MIB.
Beniamino Galvani [Tue, 29 Sep 2015 15:48:37 +0000 (17:48 +0200)]
lldp: fix parsing of TLV length
tlv_packet_read_bytes() and tlv_packet_read_string() returned the
wrong length when called after other functions which modify the offset
in the container.
In other words, if the TLV data length is X and we do a
tlv_packet_read_u8(), a subsequent tlv_packet_read_bytes() should
return a length of (X - 1).
Beniamino Galvani [Thu, 24 Sep 2015 21:08:22 +0000 (23:08 +0200)]
lldp: move lldp_receive_packet() to lldp-internal.c
In order to implement tests for the LLDP state machine, we need to
mock lldp_network_bind_raw_socket(). Move the other function
lldp_receive_packet() to another file so that we can replace the first
function with a custom one and keep the second one.
Beniamino Galvani [Fri, 7 Aug 2015 09:17:03 +0000 (11:17 +0200)]
lldp: check return value of lldp_tlv_packet_exit_container()
Beniamino Galvani [Mon, 27 Jul 2015 21:37:07 +0000 (23:37 +0200)]
lldp: add support for organizationally specific TLVs
LLDP TLVs of type 127 are used to carry organizationally specific
information and include additional fields to specify the OUI and
subtype.
Add support for parsing such fields and functions to access the most
common IEEE 802.1 specific TLVs.
Beniamino Galvani [Mon, 27 Jul 2015 16:08:14 +0000 (18:08 +0200)]
lldp: factor out common code in lldp-tlv.c
Beniamino Galvani [Mon, 27 Jul 2015 16:04:46 +0000 (18:04 +0200)]
lldp: add sd_lldp_tlv_packet_get_destination_type()
It can be useful to know the destination address of a LLDP frame
because it determines the scope of propagation of the frame and thus
this information be used to know whether the neighbor is connected to
the same physical link.
See clause 7.1 of IEEE Std 802.1AB-2009.
Beniamino Galvani [Tue, 30 Jun 2015 08:46:01 +0000 (10:46 +0200)]
lldp: add public function to export LLDP TLV packets
Add a public function to get a list of current LLDP neighbours' TLV
packets. The function populates an array of pointers to the opaque
type sd_lldp_packet and returns the number of elements found. Callers
must take care of freeing the array and decreasing the refcount of
elements when done.
Beniamino Galvani [Tue, 29 Sep 2015 11:48:10 +0000 (13:48 +0200)]
lldp: move TLV related functions to lldp-tlv.c
Move some public functions from lldp-internal.c to lldp-tlv.c, as now
they are not internal functions anymore.
Beniamino Galvani [Fri, 10 Jul 2015 16:43:12 +0000 (18:43 +0200)]
lldp: export opaque TLV type and accessor functions
Export struct tlv_packet as a public opaque sd_lldp_packet type and
make its accessor functions public.
Beniamino Galvani [Fri, 10 Jul 2015 16:26:06 +0000 (18:26 +0200)]
lldp: change order of arguments of lldp_read_*() functions
These functions are going to be exported, swap the 'data' and 'length'
arguments so that their signature is consistent with the rest of the
code.
Beniamino Galvani [Sun, 21 Jun 2015 18:27:04 +0000 (20:27 +0200)]
lldp: add reference counter to struct tlv_packet
Add a reference counter to the tlv_packet structure so that it can be
shared between multiple users and properly free'd when no longer in
use.
Lennart Poettering [Fri, 2 Oct 2015 09:43:19 +0000 (11:43 +0200)]
util: rework fgetxattrat_fake() to use O_PATH
That way, we don't ever open the file, thus leave the atime untouched,
and this works even when unprivileged.
Daniel Mack [Thu, 1 Oct 2015 20:58:02 +0000 (22:58 +0200)]
Merge pull request #1439 from poettering/CODING_STYLE
Coding style
Lennart Poettering [Thu, 1 Oct 2015 19:11:12 +0000 (21:11 +0200)]
logind: remove warn_melody() logic
The internal speaker is usually not available on modern latops that
support suspend, and even if it is available in the hardware, most
distributions turned support for it off in the kernel. And even if it is
enabled, it's probably still a bad idea to make use of it for the
suspend-failures. If anything a proper sound should be played.
Long story short, let's remove support of this anachronism.
Lennart Poettering [Thu, 1 Oct 2015 19:10:55 +0000 (21:10 +0200)]
update CODING_STYLE with various additions
Kay Sievers [Thu, 1 Oct 2015 17:10:06 +0000 (19:10 +0200)]
Merge pull request #1428 from franciozzy/tagenhance
Enhance matching of TAG keys
Daniel Mack [Thu, 1 Oct 2015 14:35:43 +0000 (16:35 +0200)]
Merge pull request #1438 from poettering/rfkill-rework
An rfkill rework among other things
Lennart Poettering [Thu, 1 Oct 2015 14:29:13 +0000 (16:29 +0200)]
Merge pull request #1430 from evverx/driver-syslog
journald: add syslog fields for driver messages
Lennart Poettering [Thu, 1 Oct 2015 14:24:04 +0000 (16:24 +0200)]
update NEWS
Lennart Poettering [Thu, 1 Oct 2015 12:32:48 +0000 (14:32 +0200)]
rfkill: rework and make it listen on /dev/rfkill
With this rework we introduce systemd-rfkill.service as singleton that
is activated via systemd-rfkill.socket that listens on /dev/rfkill. That
way, we get notified each time a new rfkill device shows up or changes
state, in which case we restore and save its current setting to disk.
This is nicer than the previous logic, as this means we save/restore
state even of rfkill devices that are around only intermittently, and
save/restore the state even if the system is shutdown abruptly instead
of cleanly.
This implements what I suggested in #1019 and obsoletes it.
Lennart Poettering [Thu, 1 Oct 2015 12:28:13 +0000 (14:28 +0200)]
core: add new setting Writable= to ListenSpecial= socket units
Writable= is a new boolean setting. If ture, then ListenSpecial= will
open the specified path in O_RDWR mode, rather than just O_RDONLY.
This is useful for implementing services like rfkill, where /dev/rfkill
is more useful when opened in write mode, if we want to not only save
but also restore its state.
Lennart Poettering [Thu, 1 Oct 2015 12:27:20 +0000 (14:27 +0200)]
systemctl: fix how we decode types and states
There was a bad memory access among other smaller issues.
Lennart Poettering [Thu, 1 Oct 2015 12:26:42 +0000 (14:26 +0200)]
man: minor wording improvements to USB FunctionFS documentation
Daniel Mack [Thu, 1 Oct 2015 11:28:09 +0000 (13:28 +0200)]
fix typo in NEWS
Daniel Mack [Thu, 1 Oct 2015 10:16:55 +0000 (12:16 +0200)]
Merge pull request #1434 from reverendhomer/patch-1
systemctl: fix memory leak in systemctl_parse_argv
Daniel Mack [Thu, 1 Oct 2015 10:16:16 +0000 (12:16 +0200)]
Merge pull request #1433 from michich/log-errno
tree-wide: add missing errno arguments to log_*_errno()
Michal Schmidt [Thu, 1 Oct 2015 09:28:40 +0000 (11:28 +0200)]
udev: fix format string after conversion to log_*_errno()
Use %m where previously %s was used together with strerrno().
Fixes:
e53fc357a9b "tree-wide: remove a number of invocations of
strerror() and replace by %m"
Michal Schmidt [Thu, 1 Oct 2015 09:18:05 +0000 (11:18 +0200)]
sd-device: fix format strings after conversion to log_*_errno()
Use %m where previously %s was used together with strerrno().
Fixes:
e53fc357a9b "tree-wide: remove a number of invocations of
strerror() and replace by %m"
reverendhomer [Thu, 1 Oct 2015 09:09:00 +0000 (12:09 +0300)]
systemctl: fix memory leak in systemctl_parse_argv
This commit fixes Coverity #1325228
Michal Schmidt [Thu, 1 Oct 2015 09:04:08 +0000 (11:04 +0200)]
tree-wide: add missing errno arguments to log_*_errno()
A few of the recent conversions to log_*_errno() were missing the errno
value arguments.
Fixes:
e53fc357a9b "tree-wide: remove a number of invocations of
strerror() and replace by %m"
Daniel Mack [Thu, 1 Oct 2015 07:53:15 +0000 (09:53 +0200)]
Merge pull request #1429 from poettering/dhcp-hostname
DHCP and journal remoting fix, as well as NEWS update
Daniel Mack [Thu, 1 Oct 2015 07:46:40 +0000 (09:46 +0200)]
Merge pull request #1427 from dbuch/master
sd-pppoe: use strna() instead of strempty()
Daniel Mack [Thu, 1 Oct 2015 07:46:09 +0000 (09:46 +0200)]
Merge pull request #1426 from poettering/log-syntax
logging fixes and more
Evgeny Vereshchagin [Thu, 1 Oct 2015 00:36:11 +0000 (03:36 +0300)]
journald: add syslog fields for driver messages
Lennart Poettering [Wed, 30 Sep 2015 21:49:26 +0000 (23:49 +0200)]
journal: make sure to set MHD_USE_PIPE_FOR_SHUTDOWN for libmicrohttpd servers
This makes sure libmicrohttpd won't call shutdown() on our listening
sockets, which make sure socket activation and re-activation will work
cleanly.
See:
https://github.com/systemd/systemd/pull/1286
https://lists.gnu.org/archive/html/libmicrohttpd/2015-09/msg00014.html
Fixes #1286
Lennart Poettering [Wed, 30 Sep 2015 21:35:18 +0000 (23:35 +0200)]
dhcp: make sure we can deal with a single trailing NUL byte in the hostname
Fixes #1337
Lennart Poettering [Wed, 30 Sep 2015 21:35:10 +0000 (23:35 +0200)]
update NEWS
Daniel Buch [Wed, 30 Sep 2015 21:16:13 +0000 (23:16 +0200)]
sd-pppoe: use strna() instead of strempty()
In cases where we use for instance. log_debug() with a statement + string
it is better to output (Service-name: N/A) instead of (Service-name: )
Felipe Franciosi [Wed, 30 Sep 2015 21:07:16 +0000 (22:07 +0100)]
Support OP_NOMATCH for TAG key
The TAG key can be used in rules for event matching. At the moment, it
does not support inequality tests. This patch enhances the key test to
validate the rule if it does not contain a given TAG (by TAG!="value").
Signed-off-by: Felipe Franciosi <felipe@paradoxo.org>
Lennart Poettering [Wed, 30 Sep 2015 20:35:58 +0000 (22:35 +0200)]
Merge pull request #1425 from kaysievers/wip
gpt-auto-generator: check fstab for /boot entries
Lennart Poettering [Wed, 30 Sep 2015 20:33:50 +0000 (22:33 +0200)]
Merge pull request #1422 from keszybz/sd-daemon-mq-badf
sd-daemon: fix return value for sd_is_mq
Lennart Poettering [Wed, 30 Sep 2015 20:32:09 +0000 (22:32 +0200)]
Merge pull request #1419 from keszybz/shell-completion
Shell completion tweaks
Lennart Poettering [Wed, 30 Sep 2015 20:22:03 +0000 (22:22 +0200)]
core: make sure we expose the empty string when we detect no virtualization
On the bus, stick to exposing the empty string as "no virtualization",
instead of none.
Fixes #1423
Lennart Poettering [Wed, 30 Sep 2015 20:16:17 +0000 (22:16 +0200)]
tree-wide: remove a number of invocations of strerror() and replace by %m
Let's clean up our tree a bit, and reduce invocations of the
thread-unsafe strerror() by replacing it with printf()'s %m specifier.
Lennart Poettering [Wed, 30 Sep 2015 19:50:22 +0000 (21:50 +0200)]
basic: split out cpu set specific APIs into cpu-set-util.[ch]
Lennart Poettering [Wed, 30 Sep 2015 18:28:51 +0000 (20:28 +0200)]
conf-parser: make use of DEFINE_PARSER macro to parse mode_t
Let's unify more code.
Also, rework the macro to accept a trailing semicolon, to make the code
prettier.
Lennart Poettering [Wed, 30 Sep 2015 18:19:57 +0000 (20:19 +0200)]
util: there cannot be trailing garbage when parsing cpu sets
extract_first() already skips trailing whitespace, hence no reason to
explicitly check for it.
Lennart Poettering [Wed, 30 Sep 2015 18:16:51 +0000 (20:16 +0200)]
util: rename parse_cpu_set() to parse_cpu_set_and_warn()
It's pretty untypical for our parsing functions to log on their own.
Clarify in the name that this one does.
Lennart Poettering [Wed, 30 Sep 2015 18:07:24 +0000 (20:07 +0200)]
log: move log_invalid_utf8() to log.h
Also, make sure it follows the same scheme as log_syntax() does in its
behaviour.