chiark / gitweb /
7 years agoutil: fix copy-paste error and actually set the new hostname
Michal Sekletar [Mon, 27 Oct 2014 10:08:26 +0000 (11:08 +0100)]
util: fix copy-paste error and actually set the new hostname

Reported-by: sztanpet on irc
7 years agoutil: introduce sethostname_idempotent
Michal Sekletar [Tue, 21 Oct 2014 16:17:54 +0000 (18:17 +0200)]
util: introduce sethostname_idempotent

Function queries system hostname and applies changes only when necessary. Also,
migrate all client of sethostname to sethostname_idempotent while at it.

7 years agojournald: fix flushing
Zbigniew Jędrzejewski-Szmek [Sun, 26 Oct 2014 04:14:30 +0000 (00:14 -0400)]
journald: fix flushing

Commit 74055aa762 'journalctl: add new --flush command and make use of
it in systemd-journal-flush.service' broke flushing because journald
checks for the /run/systemd/journal/flushed file before opening the
permanent journal. When the creation of this file was postponed,
flushing stoppage ensued.

7 years agosystemctl: do not ignore errors in symlink removal
Zbigniew Jędrzejewski-Szmek [Sat, 25 Oct 2014 19:15:28 +0000 (15:15 -0400)]
systemctl: do not ignore errors in symlink removal

On an ro fs, systemctl disable ... would fail silently.

7 years agoRearrange Unit to make pahole happy
Zbigniew Jędrzejewski-Szmek [Fri, 24 Oct 2014 20:09:35 +0000 (16:09 -0400)]
Rearrange Unit to make pahole happy

After all we have lots of those.

7 years agocalendarspec: fix typo in "annually"
Zbigniew Jędrzejewski-Szmek [Sat, 25 Oct 2014 15:59:36 +0000 (11:59 -0400)]
calendarspec: fix typo in "annually"

7 years agojournalctl: correct help text for --until
Santiago Vila [Sat, 25 Oct 2014 14:40:30 +0000 (10:40 -0400)]
journalctl: correct help text for --until

7 years agobus-proxy: it's OK if getpeercred doesn't work
Lennart Poettering [Fri, 24 Oct 2014 17:29:01 +0000 (19:29 +0200)]
bus-proxy: it's OK if getpeercred doesn't work

We should use the data if we can (if stdin/stdout is an AF_UNIX socket),
but still work if we can't (if stdin/stdout are pipes, like in the SSH

This effectively reverts 55534fb5e4742b0db9ae5e1e0202c53804147697

7 years agosd-bus: if we don't manage to properly allocate the error message for an sd_bus_error...
Lennart Poettering [Fri, 24 Oct 2014 17:24:53 +0000 (19:24 +0200)]
sd-bus: if we don't manage to properly allocate the error message for an sd_bus_error, just go on

sd_bus_error_setfv() must initialize the sd_bus_error value to some
sensible value and then return a good errno code matching that. If it
cannot work at all it should set the error statically to the OOM error.
But if it can work half-way (i.e. initialize the name, but not the
message) it should do so and still return the correct errno number for

This effectively reverts 8bf13eb1e02b9977ae1cd331ae5dc7305a305a09

7 years agotime: don't do comparison twice
Lennart Poettering [Fri, 24 Oct 2014 17:10:09 +0000 (19:10 +0200)]
time: don't do comparison twice

7 years agotime: minor simplification
Lennart Poettering [Fri, 24 Oct 2014 17:09:36 +0000 (19:09 +0200)]
time: minor simplification

7 years agotime: earlier exit from format_timestamp_relative() on special times
Lennart Poettering [Fri, 24 Oct 2014 17:08:22 +0000 (19:08 +0200)]
time: earlier exit from format_timestamp_relative() on special times

7 years agotime: also support 'infinity' syntax in parse_nsec()
Lennart Poettering [Fri, 24 Oct 2014 17:07:26 +0000 (19:07 +0200)]
time: also support 'infinity' syntax in parse_nsec()

Let's make parse_usec() and parse_nsec() work similar

7 years agoupdate TODO
Lennart Poettering [Fri, 24 Oct 2014 17:07:01 +0000 (19:07 +0200)]
update TODO

7 years agoNEWS: more preparations for 217
Lennart Poettering [Fri, 24 Oct 2014 17:06:23 +0000 (19:06 +0200)]
NEWS: more preparations for 217

7 years agodelta: use wait_for_terminate_and_warn() to generate warnin when diff fails
Lennart Poettering [Fri, 24 Oct 2014 16:48:11 +0000 (18:48 +0200)]
delta: use wait_for_terminate_and_warn() to generate warnin when diff fails

7 years agocalendar: make freeing a calendar spec object deal fine with NULL
Lennart Poettering [Fri, 24 Oct 2014 16:33:29 +0000 (18:33 +0200)]
calendar: make freeing a calendar spec object deal fine with NULL

In order to make object destruction easier (in particular in combination
with _cleanup_) we usually make destructors deal with NULL objects as
NOPs. Change the calendar spec destructor to follow the same scheme.

7 years agotimesyncd: the IP_TOS sockopt is really just an optimization, we shouldn't fail if...
Lennart Poettering [Fri, 24 Oct 2014 16:32:30 +0000 (18:32 +0200)]
timesyncd: the IP_TOS sockopt is really just an optimization, we shouldn't fail if we can't set it

This partially undos 2f905e821e0342c36f5a5d3a51d53aabccc800bd

7 years agoupdate TODO
Lennart Poettering [Fri, 24 Oct 2014 14:52:55 +0000 (16:52 +0200)]
update TODO

7 years agojournalctl: Unify boot id lookup into common function get_boots
Jan Janssen [Thu, 23 Oct 2014 17:37:29 +0000 (19:37 +0200)]
journalctl: Unify boot id lookup into common function get_boots

7 years agoudev: do NOT re-label smack
WaLyong Cho [Fri, 24 Oct 2014 04:51:09 +0000 (13:51 +0900)]
udev: do NOT re-label smack

If selinux is disabled and smack is only enabled, smack label is
relable-ed by label_fix. To avoid, make only be labeled for selinux.

7 years agomanager: Linux on hppa has fewer rtsigs, hence avoid using the higher ones there
Lennart Poettering [Fri, 24 Oct 2014 11:44:45 +0000 (13:44 +0200)]
manager: Linux on hppa has fewer rtsigs, hence avoid using the higher ones there

7 years agoman: remove another gendered pronoun
Klaus Purer [Fri, 24 Oct 2014 11:03:15 +0000 (13:03 +0200)]
man: remove another gendered pronoun

7 years agojournald: removed gendered pronouns in comment
Klaus Purer [Fri, 24 Oct 2014 11:00:57 +0000 (13:00 +0200)]
journald: removed gendered pronouns in comment

7 years agoman: fix minor typo
Lennart Poettering [Fri, 24 Oct 2014 10:30:43 +0000 (12:30 +0200)]
man: fix minor typo

7 years agoman: add a link to the XDG basedir spec from the pam_sytemd man page
Lennart Poettering [Fri, 24 Oct 2014 10:07:05 +0000 (12:07 +0200)]
man: add a link to the XDG basedir spec from the pam_sytemd man page

7 years agoman: avoid gendered singular pronouns
Lennart Poettering [Fri, 24 Oct 2014 10:02:44 +0000 (12:02 +0200)]
man: avoid gendered singular pronouns

Using "their" as pronoun in these places is confusing since it is more
associated with plural rather than singular, and the sentence already
contains a plural. The word "her/his" apparently offends some people,
hence let's avoid the problem altogether and just name the noun again.

7 years agoman: minor addition to coredumpctl example
Lennart Poettering [Fri, 24 Oct 2014 00:22:57 +0000 (02:22 +0200)]
man: minor addition to coredumpctl example

7 years agocryptsetup: Fix timeout on dm device.
Hugo Grostabussiat [Sun, 28 Sep 2014 01:05:41 +0000 (03:05 +0200)]
cryptsetup: Fix timeout on dm device.

Fix a bug in systemd-cryptsetup-generator which caused the drop-in
setting the job timeout for the dm device unit to be written with a
name different than the unit name.

7 years agoshutdown: pass own argv to /run/initramfs/shutdown
Marius Tessmann [Fri, 29 Aug 2014 15:51:45 +0000 (17:51 +0200)]
shutdown: pass own argv to /run/initramfs/shutdown

Since commit b1e90ec515408aec2702522f6f68c4920b56375b systemd passes
its log settings to systemd-shutdown via command line parameters.
However, systemd-shutdown doesn't pass these parameters to
/run/initramfs/shutdown, causing it to fall back to the default log

This fixes the following bugs about the shutdown not being quiet
despite "quiet" being in the kernel parameters:

7 years agoselinux: fix handling of relative paths when setting up create label
Lennart Poettering [Thu, 23 Oct 2014 23:15:53 +0000 (01:15 +0200)]
selinux: fix handling of relative paths when setting up create label

7 years agoman: in pam_systemd, it must be "his" (or "her"), not their
Lennart Poettering [Thu, 23 Oct 2014 23:14:38 +0000 (01:14 +0200)]
man: in pam_systemd, it must be "his" (or "her"), not their

7 years agosocket: properly label socket symlinks
Lennart Poettering [Thu, 23 Oct 2014 21:58:01 +0000 (23:58 +0200)]
socket: properly label socket symlinks

7 years agosocket: fix error comparison
Lennart Poettering [Thu, 23 Oct 2014 21:57:50 +0000 (23:57 +0200)]
socket: fix error comparison

7 years agolabel: move is_dir() to util.c
Lennart Poettering [Thu, 23 Oct 2014 19:36:38 +0000 (21:36 +0200)]
label: move is_dir() to util.c

7 years agolabel: unify code to make directories, symlinks
Lennart Poettering [Thu, 23 Oct 2014 17:58:45 +0000 (19:58 +0200)]
label: unify code to make directories, symlinks

7 years agolabel: don't try to create labelled directories more than once
Lennart Poettering [Thu, 23 Oct 2014 17:41:56 +0000 (19:41 +0200)]
label: don't try to create labelled directories more than once

7 years agoselinux: clean up selinux label function naming
Lennart Poettering [Thu, 23 Oct 2014 17:41:27 +0000 (19:41 +0200)]
selinux: clean up selinux label function naming

7 years agoselinux: simplify and unify logging
Lennart Poettering [Thu, 23 Oct 2014 17:07:02 +0000 (19:07 +0200)]
selinux: simplify and unify logging

Normally we shouldn#t log from "library" functions, but SELinux is
weird, hence upgrade security messages uniformly to LOG_ERR when in
enforcing mode.

7 years agoselinux: rework label query APIs
Lennart Poettering [Thu, 23 Oct 2014 16:58:18 +0000 (18:58 +0200)]
selinux: rework label query APIs

APIs that query and return something cannot silently fail, they must
either return something useful, or an error. Fix that.

Also, properly rollback socket unit fd creation when something goes
wrong with the security framework.

7 years agosmack: we don't need the special labels exported, hence don't
Lennart Poettering [Thu, 23 Oct 2014 16:40:03 +0000 (18:40 +0200)]
smack: we don't need the special labels exported, hence don't

7 years agoselinux: drop 3 unused function prototypes
Lennart Poettering [Thu, 23 Oct 2014 16:38:01 +0000 (18:38 +0200)]
selinux: drop 3 unused function prototypes

7 years agosmack: rework SMACK label fixing code to follow more closely the semantics of the...
Lennart Poettering [Thu, 23 Oct 2014 16:34:58 +0000 (18:34 +0200)]
smack: rework SMACK label fixing code to follow more closely the semantics of the matching selinux code

7 years agosmack: never follow symlinks when relabelling
Lennart Poettering [Thu, 23 Oct 2014 16:32:22 +0000 (18:32 +0200)]
smack: never follow symlinks when relabelling

previously mac_smack_apply(path, NULL) would operate on the symlink
itself while mac_smack_apply(path, "foo") would follow the symlink.
Let's clean this up an always operate on the symlink, which appears to
be the safer option.

7 years agosmack: rework smack APIs a bit
Lennart Poettering [Thu, 23 Oct 2014 16:06:51 +0000 (18:06 +0200)]
smack: rework smack APIs a bit

a) always return negative errno error codes
b) always become a noop if smack is off
c) always take a NULL label as a request to remove it

7 years agomac: rename all calls that apply a label mac_{selinux|smack}_apply_xyz(), and all...
Lennart Poettering [Thu, 23 Oct 2014 15:49:29 +0000 (17:49 +0200)]
mac: rename all calls that apply a label mac_{selinux|smack}_apply_xyz(), and all that reset it to defaults mac_{selinux|smack}_fix()

Let's clean up the naming schemes a bit and use the same one for SMACK
and for SELINUX.

7 years agoselinux: make use of cleanup gcc magic
Lennart Poettering [Thu, 23 Oct 2014 15:40:11 +0000 (17:40 +0200)]
selinux: make use of cleanup gcc magic

7 years agoTODO
Tom Gundersen [Thu, 23 Oct 2014 18:14:38 +0000 (20:14 +0200)]

7 years agoman: pam_systemd: some typos fixed, some info added
Daniel Mack [Thu, 23 Oct 2014 17:17:19 +0000 (19:17 +0200)]
man: pam_systemd: some typos fixed, some info added

Just some minor nits that I stumbled over when reading the man page.

7 years agounit: adjust for the possibility of set_move() failing
Michal Schmidt [Tue, 14 Oct 2014 22:23:21 +0000 (00:23 +0200)]
unit: adjust for the possibility of set_move() failing

7 years agohashmap: allow hashmap_move() to fail
Michal Schmidt [Tue, 14 Oct 2014 22:17:51 +0000 (00:17 +0200)]
hashmap: allow hashmap_move() to fail

It cannot fail in the current hashmap implementation, but it may fail in
alternative implementations (unless a sufficiently large reservation has
been placed beforehand).

7 years agounit: place reservations before merging other's dependencies
Michal Schmidt [Tue, 14 Oct 2014 22:00:30 +0000 (00:00 +0200)]
unit: place reservations before merging other's dependencies

With the hashmap implementation that uses chaining the reservations
merely ensure that the merging won't result in long bucket chains.

With a future alternative implementation it will additionally reserve
memory to make sure the merging won't fail.

7 years agoinstall, cgtop: adjust hashmap_move_one() callers for -ENOMEM possibility
Michal Schmidt [Sat, 4 Oct 2014 19:29:10 +0000 (21:29 +0200)]
install, cgtop: adjust hashmap_move_one() callers for -ENOMEM possibility

That hashmap_move_one() currently cannot fail with -ENOMEM is an
implementation detail, which is not possible to guarantee in general.
Hashmap implementations based on anything else than chaining of
individual entries may have to allocate.

hashmap_move_one will not fail with -ENOMEM if a proper reservation has
been made beforehand. Use reservations in install.c.

In cgtop.c simply propagate the error instead of asserting.

7 years agotest: add test for hashmap_reserve()
Michal Schmidt [Tue, 14 Oct 2014 22:30:54 +0000 (00:30 +0200)]
test: add test for hashmap_reserve()

7 years agohashmap: introduce hashmap_reserve()
Michal Schmidt [Tue, 14 Oct 2014 21:35:24 +0000 (23:35 +0200)]
hashmap: introduce hashmap_reserve()

With the current hashmap implementation that uses chaining, placing a
reservation can serve two purposes:
 - To optimize putting of entries if the number of entries to put is
   known. The reservation allocates buckets, so later resizing can be
 - To avoid having very long bucket chains after using

In an alternative hashmap implementation it will serve an additional
 - To guarantee a subsequent hashmap_move(_one) will not fail with
   -ENOMEM (this never happens in the current implementation).

7 years agohashmap: return more information from resize_buckets()
Michal Schmidt [Tue, 14 Oct 2014 22:36:45 +0000 (00:36 +0200)]
hashmap: return more information from resize_buckets()

Return 0 if no resize was needed, 1 if successfully resized and
negative on error.

7 years agoshared: split mempool implementation from hashmaps
Michal Schmidt [Tue, 12 Aug 2014 21:35:23 +0000 (23:35 +0200)]
shared: split mempool implementation from hashmaps

7 years agoresolve: make DnsScope::conflict_queue an OrderedHashmap
Michal Schmidt [Fri, 22 Aug 2014 11:56:51 +0000 (13:56 +0200)]
resolve: make DnsScope::conflict_queue an OrderedHashmap

on_conflict_dispatch() uses hashmap_steal_first() and then does
something non-trivial with it. It may care about the order.

7 years agosd-bus: make sd_bus::reply_callbacks a OrderedHashmap
Michal Schmidt [Tue, 14 Oct 2014 16:27:55 +0000 (18:27 +0200)]
sd-bus: make sd_bus::reply_callbacks a OrderedHashmap

The way process_closing() picks the first entry from reply_callbacks
and works with it makes it likely that it cares about the order.

7 years agojournal: make sd_journal::files a OrderedHashmap
Michal Schmidt [Tue, 19 Aug 2014 11:38:53 +0000 (13:38 +0200)]
journal: make sd_journal::files a OrderedHashmap

Anything that uses hashmap_next() almost certainly cares about the order
and needs to be an OrderedHashmap.

7 years agojournal: make Server::user_journals an OrderedHashmap
Michal Schmidt [Fri, 22 Aug 2014 11:44:14 +0000 (13:44 +0200)]
journal: make Server::user_journals an OrderedHashmap

Order matters here. It replaces oldest entries first when

7 years agojournal: make JournalFile::chain_cache an OrderedHashmap
Michal Schmidt [Tue, 14 Oct 2014 15:58:13 +0000 (17:58 +0200)]
journal: make JournalFile::chain_cache an OrderedHashmap

The order of entries may matter here. Oldest entries are evicted first
when the cache is full.

(Though I don't see anything to rejuvenate entries on cache hits.)

7 years agoinstall: make InstallContext::{will_install,have_installed} OrderedHashmaps
Michal Schmidt [Fri, 22 Aug 2014 08:35:59 +0000 (10:35 +0200)]
install: make InstallContext::{will_install,have_installed} OrderedHashmaps

It appears order may matter here. Use OrderedHashmaps to be safe.

7 years agohashmap: drop assert(h) from hashmap_next()
Michal Schmidt [Fri, 10 Oct 2014 21:30:21 +0000 (23:30 +0200)]
hashmap: drop assert(h) from hashmap_next()

It's handled just fine by returning NULL.

7 years agohashmap: hashmap_move_one() should return -ENOENT when 'other' is NULL
Michal Schmidt [Mon, 13 Oct 2014 16:14:07 +0000 (18:14 +0200)]
hashmap: hashmap_move_one() should return -ENOENT when 'other' is NULL

-ENOENT is the same return value as if 'other' were an allocated hashmap
that does not contain the key. A NULL hashmap is a possible way of
expressing a hashmap that contains no key.

7 years agotest: add and improve hashmap tests
Michal Schmidt [Wed, 15 Oct 2014 09:06:08 +0000 (11:06 +0200)]
test: add and improve hashmap tests

Test more corner cases and error states in several tests.

Add new tests for:

In test_hashmap_many additionally test with an intentionally bad hash

7 years agotest: generate tests for OrderedHashmap from Hashmap tests
Michal Schmidt [Wed, 15 Oct 2014 09:00:46 +0000 (11:00 +0200)]
test: generate tests for OrderedHashmap from Hashmap tests

test-hashmap-ordered.c is generated from test-hashmap-plain.c simply by
substituting "ordered_hashmap" for "hashmap" etc.

In the cases where tests rely on the order of entries, a distinction
between plain and ordered hashmaps is made using the ORDERED macro,
which is defined only for test-hashmap-ordered.c.

7 years agohashmap: add OrderedHashmap as a distinct type
Michal Schmidt [Mon, 13 Oct 2014 16:11:16 +0000 (18:11 +0200)]
hashmap: add OrderedHashmap as a distinct type

Few Hashmaps/Sets need to remember the insertion order. Most don't care
about the order when iterating. It would be possible to use more compact
hashmap storage in the latter cases.

Add OrderedHashmap as a distinct type from Hashmap, with functions
prefixed with "ordered_". For now, the functions are nothing more than
inline wrappers for plain Hashmap functions.

7 years agomac: also rename use_{smack,selinux,apparmor}() calls so that they share the new...
Lennart Poettering [Thu, 23 Oct 2014 15:34:30 +0000 (17:34 +0200)]
mac: also rename use_{smack,selinux,apparmor}() calls so that they share the new mac_{smack,selinux,apparmor}_xyz() convention

7 years agomac: rename apis with mac_{selinux/smack}_ prefix
WaLyong Cho [Thu, 23 Oct 2014 08:23:46 +0000 (17:23 +0900)]
mac: rename apis with mac_{selinux/smack}_ prefix

7 years agolabel: rearrange mandatory access control(MAC) apis
WaLyong Cho [Thu, 23 Oct 2014 08:23:45 +0000 (17:23 +0900)]
label: rearrange mandatory access control(MAC) apis

move label apis to or appropriately.

7 years agoman: add example how to generate certificates with openssl
Zbigniew Jędrzejewski-Szmek [Thu, 23 Oct 2014 04:43:49 +0000 (00:43 -0400)]
man: add example how to generate certificates with openssl

7 years agojournal-upload: return proper exit code
Zbigniew Jędrzejewski-Szmek [Thu, 23 Oct 2014 04:31:56 +0000 (23:31 -0500)]
journal-upload: return proper exit code

Even when termninated normally, systemd-journal-upload would return
something positive which would be interpreted as failure.

7 years agoshared/log: add log_trace as compile-time optional debugging
Zbigniew Jędrzejewski-Szmek [Thu, 23 Oct 2014 04:27:57 +0000 (23:27 -0500)]
shared/log: add log_trace as compile-time optional debugging

Repetetive messages can be annoying when running with
SYSTEMD_LOG_LEVEL=debug, but they are sometimes very useful
when debugging problems. Add log_trace which is like log_debug
but becomes a noop unless LOG_TRACE is defined during compilation.
This makes it easy to enable very verbose logging for a subset
of programs when compiling from source.

7 years agojournal-upload: fix --trust=all option
Zbigniew Jędrzejewski-Szmek [Wed, 22 Oct 2014 02:32:17 +0000 (22:32 -0400)]
journal-upload: fix --trust=all option

7 years agojournal-upload: avoid calling printf with maximum precision
Zbigniew Jędrzejewski-Szmek [Thu, 23 Oct 2014 04:27:25 +0000 (23:27 -0500)]
journal-upload: avoid calling printf with maximum precision

Precision of INT_MAX does not work as I expected it to.

7 years agojournal-upload: verify state file can be saved before uploading
Zbigniew Jędrzejewski-Szmek [Wed, 22 Oct 2014 03:34:29 +0000 (23:34 -0400)]
journal-upload: verify state file can be saved before uploading

Do our best verify that we can actually write the state file
before upload commences to avoid duplicate messages on the server.

7 years agosocket-util: use IP address when hostname is not found
Zbigniew Jędrzejewski-Szmek [Wed, 22 Oct 2014 03:20:59 +0000 (23:20 -0400)]
socket-util: use IP address when hostname is not found

socknameinfo_pretty() would fail for addresses without reverse DNS,
but we do not want that to happen.

7 years agojournal-remote: add --split-mode to help
Zbigniew Jędrzejewski-Szmek [Wed, 22 Oct 2014 01:05:04 +0000 (21:05 -0400)]
journal-remote: add --split-mode to help

7 years agojournal-remote: better error message on failure
Zbigniew Jędrzejewski-Szmek [Thu, 23 Oct 2014 04:18:47 +0000 (23:18 -0500)]
journal-remote: better error message on failure

Return a proper code instead of simply NULL for failure.

7 years agojournal-upload: do not require port to be set
Zbigniew Jędrzejewski-Szmek [Sat, 18 Oct 2014 05:36:58 +0000 (01:36 -0400)]
journal-upload: do not require port to be set

7 years agosystemd-upload: print paths in help()
Zbigniew Jędrzejewski-Szmek [Sat, 18 Oct 2014 05:30:54 +0000 (01:30 -0400)]
systemd-upload: print paths in help()

7 years agojournal-remote: give names to event sources
Zbigniew Jędrzejewski-Szmek [Sat, 18 Oct 2014 05:28:37 +0000 (01:28 -0400)]
journal-remote: give names to event sources

This possibility was recently added, and it makes debugging much nicer.

7 years agojournal-upload: fix socket activation
Zbigniew Jędrzejewski-Szmek [Sat, 18 Oct 2014 05:27:10 +0000 (01:27 -0400)]
journal-upload: fix socket activation

7 years agosd-daemon,man: ignore missing $WATCHDOG_PID
Zbigniew Jędrzejewski-Szmek [Tue, 21 Oct 2014 22:44:09 +0000 (18:44 -0400)]
sd-daemon,man: ignore missing $WATCHDOG_PID

Systemd 209 started setting $WATCHDOG_PID, and sd-daemon watch was
modified to check for this variable. This means that
sd_watchdog_enabled() stopped working with previous versions of
systemd. But sd-event is a public library and API and we must keep it
working even when a program compiled with a newer version of the
libary is used on a system running an older version of the manager.

getenv() and unsetenv() are fairly expensive calls, so optimize
sd_watchdog_enabled() by not calling them when unnecessary.

man: centralize the description of $WATCHDOG_PID and $WATCHDOG_USEC in
the sd_watchdog_enabled manpage. It is better not to repeat the same
stuff in two places.

7 years agoman: make udev.event-timeout more visible
Zbigniew Jędrzejewski-Szmek [Thu, 23 Oct 2014 04:12:50 +0000 (23:12 -0500)]
man: make udev.event-timeout more visible

Evidently some people had trouble finding it in the documentation.

7 years agounits: run firstboot before sysusers, so that firstboot can initialize the root password
Lennart Poettering [Wed, 22 Oct 2014 23:24:59 +0000 (01:24 +0200)]
units: run firstboot before sysusers, so that firstboot can initialize the root password

7 years agoupdate TODO
Lennart Poettering [Wed, 22 Oct 2014 23:09:38 +0000 (01:09 +0200)]
update TODO

7 years agoupdate TODO
Lennart Poettering [Wed, 22 Oct 2014 22:52:21 +0000 (00:52 +0200)]
update TODO

7 years agojournalctl: add new --flush command and make use of it in systemd-journal-flush.service
Lennart Poettering [Wed, 22 Oct 2014 22:28:17 +0000 (00:28 +0200)]
journalctl: add new --flush command and make use of it in systemd-journal-flush.service

This new command will ask the journal daemon to flush all log data
stored in /run to /var, and wait for it to complete. This is useful, so
that in case of Storage=persistent we can order systemd-tmpfiles-setup
afterwards, to ensure any possibly newly created directory in /var/log
gets proper access mode and owners.

7 years agocryptsetup: fix an OOM check
Lennart Poettering [Wed, 22 Oct 2014 22:30:04 +0000 (00:30 +0200)]
cryptsetup: fix an OOM check

7 years agomachine: validate machine names using machine_name_is_valid() instead of string_is_safe()
Lennart Poettering [Wed, 22 Oct 2014 21:20:59 +0000 (23:20 +0200)]
machine: validate machine names using machine_name_is_valid() instead of string_is_safe()

After all, we know have this as generic validator, so let's be correct
and use it wherver applicable.

7 years agosd-bus: fix transition left-overs in sd_bus_get_owner_creds()
Daniel Mack [Wed, 22 Oct 2014 20:06:53 +0000 (22:06 +0200)]
sd-bus: fix transition left-overs in sd_bus_get_owner_creds()

sd_bus_get_owner_creds() was only halfly ported over to

7 years agojournal: do server_vacuum for sigusr1
WaLyong Cho [Thu, 28 Aug 2014 12:33:03 +0000 (21:33 +0900)]
journal: do server_vacuum for sigusr1

runtime journal is migrated to system journal when only
"/run/systemd/journal/flushed" exist. It's ok but according to this
the system journal directory size(max use) can be over the config. If
journal is not rotated during some time the journal directory can be
remained as over the config(or default) size. To avoid, do
server_vacuum just after the system journal migration from runtime.

7 years agofirstboot: don't prohibit re-generating the machine id on the current root fs
Lennart Poettering [Wed, 22 Oct 2014 18:29:25 +0000 (20:29 +0200)]
firstboot: don't prohibit re-generating the machine id on the current root fs

If it really is missing it should be safe to create it.

Also see:

7 years agoupdate TODO
Lennart Poettering [Wed, 22 Oct 2014 18:24:16 +0000 (20:24 +0200)]
update TODO

7 years agojournalctl: don't introduce numeric constants with special names, give them names
Lennart Poettering [Wed, 22 Oct 2014 18:23:45 +0000 (20:23 +0200)]
journalctl: don't introduce numeric constants with special names, give them names

7 years agosd-bus: implement sd_bus_get_owner_creds() for kdbus
Daniel Mack [Wed, 22 Oct 2014 17:43:09 +0000 (19:43 +0200)]
sd-bus: implement sd_bus_get_owner_creds() for kdbus

kdbus learned a new ioctl to tell userspace about a bus creator's
credentials, which is what we need to implement sd_bus_get_owner_creds() for

Move the function from sd-bus.c to bus-control.c to be able to reuse
the bus_populate_creds_from_items() helper.

7 years agosd-bus: rename sd_bus_get_owner_uid(), sd_bus_get_owner_machine_id() and sd_bus_get_p...
Daniel Mack [Wed, 22 Oct 2014 17:17:24 +0000 (19:17 +0200)]
sd-bus: rename sd_bus_get_owner_uid(), sd_bus_get_owner_machine_id() and sd_bus_get_peer_creds()

Clean up the function namespace by renaming the following:

  sd_bus_get_owner_uid()        → sd_bus_get_name_creds_uid()
  sd_bus_get_owner_machine_id() → sd_bus_get_name_machine_id()
  sd_bus_get_peer_creds()       → sd_bus_get_owner_creds()

7 years agosd-bus: factor out creds item iterator
Daniel Mack [Wed, 22 Oct 2014 17:04:27 +0000 (19:04 +0200)]
sd-bus: factor out creds item iterator

We will re-use the code to walk items in order to populate a creds object,
so let's factor it out first.