Lennart Poettering [Fri, 30 Oct 2015 10:27:29 +0000 (11:27 +0100)]
sd-daemon: increase sd_notify() socket buffer size
Let's make sure we don't start blocking on sd_notify() earlier than
necessary, let's bump the socket buffer sizes to 8M.
We already do something similar for our logging socket buffers, hence
apply a similar bump here.
Lennart Poettering [Fri, 30 Oct 2015 10:25:00 +0000 (11:25 +0100)]
sysctl.d: bump number of queueable AF_UNIX/SOCK_DGRAM datagrams
The default of 16 is pretty low, let's bump this to accomodate for more
queued datagrams. This is useful for AF_UNIX/SOCK_DGRAM logging and
sd_notify() sockets as this allows queuing more datagrams before things
start to block, thus improving parallelization and logging performance.
Lennart Poettering [Wed, 28 Oct 2015 23:19:31 +0000 (00:19 +0100)]
sysv-generator: modernize
- Make sure we log each error at least once, and at most once
- Replace FOREACH_WORD loops by extract_first_word() loops
- Use FOREACH_DIRENT() for directory loops
- Use free_and_strdup() where appropriate
- Do not operate on half-loaded SysV files
- Always properly free all memory
Lennart Poettering [Wed, 28 Oct 2015 17:23:26 +0000 (18:23 +0100)]
core: bail our earlier when doing audit
Let's make sure we don't even try to create the audit socket
Lennart Poettering [Wed, 28 Oct 2015 17:23:07 +0000 (18:23 +0100)]
core,nspawn: minor coding style fixes
Lennart Poettering [Wed, 28 Oct 2015 17:22:23 +0000 (18:22 +0100)]
nspawn: fix minor memory leak
When rebooting nspawn containers about 400 times we'd otherwise hit the
fd limit and refuse further reboots.
Lennart Poettering [Wed, 28 Oct 2015 11:43:52 +0000 (12:43 +0100)]
core: constify a few things
Lennart Poettering [Thu, 8 Oct 2015 14:15:38 +0000 (16:15 +0200)]
systemctl: add a way to explicitly request client-side unit installing
This adds support for a new environment variable
SYSTEMCTL_INSTALL_CLIENT_SIDE, that ensures that systemctl executes
install operations client-side instead of passing them to PID1. This is
useful in debugging situations, but even beyond that. However, we don't
want to make it official API, hence let's just make it an undocumented
environment variable.
Similar, add a second variable, SYSTEMCTL_SKIP_SYSV which allows
skipping the SysV chkconfig fall-back if set. This is useful for similar
reasons, and exposed as undocumented as environment variable for similar
reasons, too.
Ronny Chevalier [Sat, 31 Oct 2015 16:22:20 +0000 (17:22 +0100)]
Merge pull request #1734 from evverx/overwrite-sysemd-unit-path
core: set_unit_path overwrites SYSTEMD_UNIT_PATH
Evgeny Vereshchagin [Sat, 31 Oct 2015 11:14:37 +0000 (14:14 +0300)]
core: set_unit_path overwrites SYSTEMD_UNIT_PATH
Lennart Poettering [Fri, 30 Oct 2015 14:48:49 +0000 (15:48 +0100)]
Merge pull request #1729 from endocode/dongsu/jr-mhd-memlimit-v3
journal-remote: increase memory limit per connection to avoid errors …
Dongsu Park [Wed, 21 Oct 2015 12:51:10 +0000 (14:51 +0200)]
journal-remote: increase memory limit per connection to avoid errors with HTTPS
Explicitly set MHD_OPTION_CONNECTION_MEMORY_LIMIT to a larger value,
when setting up microhttpd, to give more memory per HTTP(S) connection.
This way systemd-journal-remote can now prevent microhttpd from failing
in creating response headers with messages like "Not enough memory for
write", especially when lots of HTTPS requests arrive. That's precisely
because MHD_OPTION_CONNECTION_MEMORY_LIMIT in libmicrohttpd defaults to
32768, which is in practice insufficient in this case.
See also https://gnunet.org/bugs/view.php?id=4007 for more details.
Fixes: https://github.com/coreos/bugs/issues/927
Daniel Mack [Fri, 30 Oct 2015 09:56:38 +0000 (10:56 +0100)]
Merge pull request #1720 from evverx/shell-completion-global-mode
shell-completion: systemctl: show completions for `user` in `global` …
Marcel Holtmann [Fri, 30 Oct 2015 03:22:54 +0000 (04:22 +0100)]
hwdb: Update database of Bluetooth company identifiers
Evgeny Vereshchagin [Thu, 29 Oct 2015 07:29:29 +0000 (10:29 +0300)]
shell-completion: systemctl: show completions for `user` in `global` mode
Daniel Mack [Thu, 29 Oct 2015 18:47:02 +0000 (19:47 +0100)]
Merge pull request #1709 from evverx/set-location-completion
shell-completion: hostnamectl: add the command set-location
Daniel Mack [Thu, 29 Oct 2015 18:46:01 +0000 (19:46 +0100)]
Merge pull request #1717 from ronnychevalier/rc/test_capabilityboundingset2
test: add tests to ensure that the capabilities are properly set
Ronny Chevalier [Thu, 29 Oct 2015 13:22:23 +0000 (14:22 +0100)]
test: add tests to ensure that the capabilities are properly set
Ronny Chevalier [Thu, 29 Oct 2015 12:44:23 +0000 (13:44 +0100)]
Merge pull request #1713 from evverx/test-cap-bounding-set-merging
Another fix of the CapabilityBoundingSet parsing
Evgeny Vereshchagin [Thu, 29 Oct 2015 11:13:04 +0000 (14:13 +0300)]
core: fix capability bounding set parsing
bug: CapabilityBoundingSet= doesn't reset all caps
Evgeny Vereshchagin [Thu, 29 Oct 2015 11:12:22 +0000 (14:12 +0300)]
test: add test for capability bounding set parsing
Evgeny Vereshchagin [Thu, 29 Oct 2015 04:47:16 +0000 (07:47 +0300)]
shell-completion: hostnamectl: add the command set-location
Lennart Poettering [Wed, 28 Oct 2015 18:32:35 +0000 (19:32 +0100)]
Merge pull request #1700 from ssahani/word
Port to extract_first_word
Lennart Poettering [Wed, 28 Oct 2015 18:31:37 +0000 (19:31 +0100)]
Merge pull request #1707 from dvdhrm/notify-prio
core: fix priority ordering in notify-handling
David Herrmann [Wed, 28 Oct 2015 18:11:36 +0000 (19:11 +0100)]
core: fix priority ordering in notify-handling
Currently, we dispatch NOTIFY messages in a tight loop. Regardless how
much data is incoming, we always dispatch everything that is queued.
This, however, completely breaks priority event-handling of sd-event.
When dispatching one NOTIFY event, another completely different event
might fire, or might be queued by the NOTIFY handling. However, this
event will not get dispatched until all other further NOTIFY messages are
handled. Those might even arrive _after_ the other event fired, and as
such completely break priority ordering of sd-event (which several code
paths rely on).
Break this by never dispatching multiple messages. Just return after each
message that was read and let sd-event handle everything else.
(The patch looks scarier that it is. It basically just drops the for(;;)
loop and re-indents the loop-content.)
Susant Sahani [Wed, 28 Oct 2015 17:29:01 +0000 (22:59 +0530)]
nspwan: port to extract_first_word
Susant Sahani [Wed, 28 Oct 2015 17:28:24 +0000 (22:58 +0530)]
install: port to extract_first_word
Susant Sahani [Wed, 28 Oct 2015 17:27:59 +0000 (22:57 +0530)]
journal-remote: port to extract_first_word
Lennart Poettering [Wed, 28 Oct 2015 17:19:03 +0000 (18:19 +0100)]
Merge pull request #1705 from filbranden/testutil1
Move tests for extract-word and parse-util into separate test cases
Filipe Brandenburger [Wed, 28 Oct 2015 15:14:50 +0000 (08:14 -0700)]
test-parse-util: Move parse-util tests into their own test case
Tests for the functions defined in src/basic/parse-util.c. Reorder them
to match the order in which the functions are defined in the source
file. Adjusted the list of include files to remove the ones no longer
needed in test-util.c.
Tested that `make check` still passes as expected. Also checked the
number of lines removed from test-util.c matches the expected, as an
additional verification that no tests were dropped or duplicated in the
move.
Filipe Brandenburger [Wed, 28 Oct 2015 14:57:11 +0000 (07:57 -0700)]
test-extract-word: Move extract-word tests into their own test case
Tests for the functions defined in src/basic/extract-word.c.
Tested that `make check` still passes as expected.
Filipe Brandenburger [Wed, 28 Oct 2015 14:42:53 +0000 (07:42 -0700)]
build-sys: Keep .gitignore sorted
Let's try to keep it that way! :-)
Lennart Poettering [Wed, 28 Oct 2015 12:07:48 +0000 (13:07 +0100)]
Merge pull request #1703 from ronnychevalier/rc/test_execute_check_nobody2
test-execute: check if nobody exists before running some tests
Lennart Poettering [Wed, 28 Oct 2015 12:06:56 +0000 (13:06 +0100)]
Merge pull request #1699 from filbranden/cpuaffinity9
cpu-set-util: Support ranges in parse_cpu_set_and_warn (v4)
Ronny Chevalier [Wed, 28 Oct 2015 10:30:40 +0000 (11:30 +0100)]
test-execute: check if nobody exists before running some tests
Daniel Mack [Wed, 28 Oct 2015 09:23:36 +0000 (10:23 +0100)]
Merge pull request #1701 from hosiet/l10n-cn
l10n: add Simplified Chinese translation.
Boyuan Yang [Wed, 28 Oct 2015 07:23:58 +0000 (15:23 +0800)]
l10n: add zh_CN translation.
Filipe Brandenburger [Tue, 13 Oct 2015 07:12:39 +0000 (00:12 -0700)]
man: Update man page documentation for CPUAffinity
Document support for commas as a separator and possibility of specifying
ranges of CPU indices.
Tested by regenerating the manpages locally and reading them on man.
Filipe Brandenburger [Fri, 25 Sep 2015 12:23:23 +0000 (05:23 -0700)]
cpu-set-util: Support ranges in parse_cpu_set_and_warn
Tested CPUAffinity ranges on both a service unit and in system.conf and
confirmed they work as expected (by inspecting /proc/PID/status, for the
main pid of the service and for pid 1). Also mixed ranges with both
spaces, commas, trailing commas and spaces.
Added new tests to increase coverage of ranges and prevent regressions.
Filipe Brandenburger [Tue, 13 Oct 2015 06:55:31 +0000 (23:55 -0700)]
parse-util: Introduce new parse_range function
This function will be useful for CPUAffinity settings that involve
ranges of CPUs.
Make it generic and include test coverage to prevent regressions.
Filipe Brandenburger [Fri, 25 Sep 2015 11:45:22 +0000 (04:45 -0700)]
cpu-set-util: Accept commas as separators in parse_cpu_set_and_warn
Tested CPUAffinity settings on both a service unit and in system.conf
and confirmed they work as expected.
Added a new test to confirm that trailing commas and spaces work and to
prevent any regressions in that area.
Tom Gundersen [Tue, 27 Oct 2015 17:09:32 +0000 (18:09 +0100)]
Merge pull request #1698 from poettering/pid-is-unwaited-fix
fixup for previous pr
Lennart Poettering [Tue, 27 Oct 2015 17:02:24 +0000 (18:02 +0100)]
service: exiting early is nicer than deeply-indented code blocks
Lennart Poettering [Tue, 27 Oct 2015 16:59:45 +0000 (17:59 +0100)]
core: all unit types that watch control PIDs should use the same logic
When coldplugging the unit state, make sure to follow the same basic
logic for all unit types: always verify whether the control PID is still
a waitable process before proceeding.
Lennart Poettering [Tue, 27 Oct 2015 16:56:12 +0000 (17:56 +0100)]
core: don't pass uninitialzed PIDs to pid_is_unwaited()
Since
5fd9b2c5467b0a42ccdabc7eb8e516d512609a8e passing a pid of 0 to
pid_is_unwaited() and pid_is_live() is considered as a request on the
current process, similar how the other calls in process-util.c handle a
PID of 0. This broke service.c, which passes a 0 PID and expects it to
be considered an unwaited process.
This fix make sure we can boot again.
Lennart Poettering [Tue, 27 Oct 2015 16:09:05 +0000 (17:09 +0100)]
Merge pull request #1695 from evverx/fix-cap-bounding-merging
core: fix CapabilityBoundingSet merging
Tom Gundersen [Tue, 27 Oct 2015 15:55:16 +0000 (16:55 +0100)]
Merge pull request #1691 from poettering/util-lib-3
split up util.h and macro.h into even more bits
Lennart Poettering [Tue, 27 Oct 2015 13:58:05 +0000 (14:58 +0100)]
util-lib: move inotify-related definitions to fs-util.[ch]
Lennart Poettering [Tue, 27 Oct 2015 13:57:44 +0000 (14:57 +0100)]
util-lib: move fdname_is_valid() to fd-util.[ch]
Lennart Poettering [Tue, 27 Oct 2015 13:25:58 +0000 (14:25 +0100)]
automount: move generically userful call repeat_mount() into mount-util.[ch]
Lennart Poettering [Tue, 27 Oct 2015 13:24:58 +0000 (14:24 +0100)]
process-util: move a couple of process-related calls over
Lennart Poettering [Tue, 27 Oct 2015 13:02:45 +0000 (14:02 +0100)]
process-util: make some minor corrections to PID live detection
Lennart Poettering [Tue, 27 Oct 2015 13:01:48 +0000 (14:01 +0100)]
process-util: rename get_parent_of_pid() → get_process_ppid()
In order to match the other get_process_xyz() calls.
Lennart Poettering [Tue, 27 Oct 2015 12:56:40 +0000 (13:56 +0100)]
process-util: actually move rename_process() over
The prototype was moved long ago, actually move the definition over now,
too.
Lennart Poettering [Tue, 27 Oct 2015 12:45:00 +0000 (13:45 +0100)]
mount-util: move fstype_is_network() and name_to_handle_at() definitions over
Lennart Poettering [Mon, 26 Oct 2015 21:02:13 +0000 (22:02 +0100)]
update TODO
Lennart Poettering [Tue, 27 Oct 2015 02:01:06 +0000 (03:01 +0100)]
util-lib: split out allocation calls into alloc-util.[ch]
Lennart Poettering [Tue, 27 Oct 2015 00:48:17 +0000 (01:48 +0100)]
util-lib: split out globbing related calls into glob-util.[ch]
Lennart Poettering [Tue, 27 Oct 2015 00:26:52 +0000 (01:26 +0100)]
stat-util.h: move F_TYPE_EQUAL() macro definition to stat-util.h
Lennart Poettering [Tue, 27 Oct 2015 00:26:31 +0000 (01:26 +0100)]
util-lib: split out printf() helpers to stdio-util.h
Lennart Poettering [Tue, 27 Oct 2015 00:23:53 +0000 (01:23 +0100)]
macro.h: move definition of MODE_INVALID to parse-util.h
Lennart Poettering [Tue, 27 Oct 2015 00:03:38 +0000 (01:03 +0100)]
macro: move DECIMAL_STR_WIDTH() into macro.h
So that it sets next to DECIMAL_STR_MAX(), where it belongs.
Lennart Poettering [Tue, 27 Oct 2015 00:03:03 +0000 (01:03 +0100)]
socket-util: move CMSG_FOREACH() from macro.h to socket-util.h
Lennart Poettering [Tue, 27 Oct 2015 00:02:30 +0000 (01:02 +0100)]
io-util.h: move iovec stuff from macro.h to io-util.h
Lennart Poettering [Mon, 26 Oct 2015 23:50:14 +0000 (00:50 +0100)]
process-util: move PID related macros from macro.h to process-util.h
Lennart Poettering [Mon, 26 Oct 2015 23:42:07 +0000 (00:42 +0100)]
user-util: move UID/GID related macros from macro.h to user-util.h
Lennart Poettering [Mon, 26 Oct 2015 23:41:29 +0000 (00:41 +0100)]
util-lib: move web-related calls into web-util.[ch]
Lennart Poettering [Mon, 26 Oct 2015 23:40:25 +0000 (00:40 +0100)]
util-lib: split out syslog-related calls into syslog-util.[ch]
Lennart Poettering [Mon, 26 Oct 2015 23:07:54 +0000 (00:07 +0100)]
detect-virt: add new --chroot switch to detect chroot() environments
Lennart Poettering [Mon, 26 Oct 2015 23:07:27 +0000 (00:07 +0100)]
util-lib: move running_in_chroot() into virt.[ch]
It's a very weak kind of virtualization, after all.
Lennart Poettering [Mon, 26 Oct 2015 23:06:29 +0000 (00:06 +0100)]
util-lib: move /proc/cmdline parsing code to proc-cmdline.[ch]
Lennart Poettering [Mon, 26 Oct 2015 23:02:45 +0000 (00:02 +0100)]
util-lib: move is_main_thread() to process-util.[ch]
Lennart Poettering [Mon, 26 Oct 2015 22:32:16 +0000 (23:32 +0100)]
src/basic: rename audit.[ch] → audit-util.[ch] and capability.[ch] → capability-util.[ch]
The files are named too generically, so that they might conflict with
the upstream project headers. Hence, let's add a "-util" suffix, to
clarify that this are just our utility headers and not any official
upstream headers.
Lennart Poettering [Mon, 26 Oct 2015 22:20:41 +0000 (23:20 +0100)]
util-lib: split out umask-related code to umask-util.h
Lennart Poettering [Mon, 26 Oct 2015 22:01:30 +0000 (23:01 +0100)]
util-lib: move more locale-related calls to locale-util.[ch]
Lennart Poettering [Mon, 26 Oct 2015 21:34:47 +0000 (22:34 +0100)]
util-lib: move status printing stuff into src/core/
It's very specific to the core, and not used elsewhere, hence move it
out of terminal-util.[ch].
Lennart Poettering [Mon, 26 Oct 2015 21:31:05 +0000 (22:31 +0100)]
util-lib: move string table stuff into its own string-table.[ch]
Lennart Poettering [Mon, 26 Oct 2015 21:01:44 +0000 (22:01 +0100)]
util-lib: split stat()/statfs()/stavfs() related calls into stat-util.[ch]
Lennart Poettering [Mon, 26 Oct 2015 20:26:33 +0000 (21:26 +0100)]
util: move string_is_safe() to string-util.[ch]
Lennart Poettering [Mon, 26 Oct 2015 20:16:26 +0000 (21:16 +0100)]
util-lib: move a number of fs operations into fs-util.[ch]
Lennart Poettering [Mon, 26 Oct 2015 19:39:23 +0000 (20:39 +0100)]
util-lib: split out file attribute calls to chattr-util.[ch]
Lennart Poettering [Mon, 26 Oct 2015 19:26:23 +0000 (20:26 +0100)]
util-lib: split xattr-related calls into xattr-util.[ch]
Lennart Poettering [Mon, 26 Oct 2015 19:07:55 +0000 (20:07 +0100)]
util-lib: introduce dirent-util.[ch] for directory entry calls
Also, move a couple of more path-related functions to path-util.c.
Lennart Poettering [Mon, 26 Oct 2015 18:40:43 +0000 (19:40 +0100)]
util-lib: split out resource limits related calls into rlimit-util.[ch]
Lennart Poettering [Mon, 26 Oct 2015 18:08:09 +0000 (19:08 +0100)]
util-lib: move take_password_lock() to user-util.[ch]
Also, rename it take_etc_passwd_lock(), in order to make it more
expressive.
Lennart Poettering [Mon, 26 Oct 2015 17:59:36 +0000 (18:59 +0100)]
util: move filename_is_valid() and path_is_safe() to path-util.[ch]
Lennart Poettering [Mon, 26 Oct 2015 17:44:13 +0000 (18:44 +0100)]
util-lib: move mount related utility calls to mount-util.[ch]
Lennart Poettering [Mon, 26 Oct 2015 17:43:29 +0000 (18:43 +0100)]
util-lib: move fstab_node_to_udev_node() to fstab-util.[ch]
Lennart Poettering [Mon, 26 Oct 2015 17:05:03 +0000 (18:05 +0100)]
util-lib: move more file I/O related calls into fileio.[ch]
Lennart Poettering [Mon, 26 Oct 2015 16:30:56 +0000 (17:30 +0100)]
util: remove path_get_parent(), in favour of dirname_malloc()
We don't need two functions that do essentialy the same, hence drop
path_get_parent(), and stick to dirname_malloc(), but move it to
path-util.[ch].
Lennart Poettering [Mon, 26 Oct 2015 15:41:43 +0000 (16:41 +0100)]
util-lib: split out hex/dec/oct encoding/decoding into its own file
Lennart Poettering [Mon, 26 Oct 2015 15:18:16 +0000 (16:18 +0100)]
util-lib: split string parsing related calls from util.[ch] into parse-util.[ch]
Evgeny Vereshchagin [Tue, 27 Oct 2015 11:40:28 +0000 (14:40 +0300)]
core: fix CapabilityBoundingSet merging
Fixes: #1221
Tom Gundersen [Tue, 27 Oct 2015 10:41:06 +0000 (11:41 +0100)]
Merge pull request #1693 from ssahani/word
timesysnd: port to extract_first_word
Susant Sahani [Tue, 27 Oct 2015 03:54:23 +0000 (09:24 +0530)]
resolved: port to extract_first_word
Susant Sahani [Tue, 27 Oct 2015 03:42:04 +0000 (09:12 +0530)]
timesysnd: port to extract_first_word
Lennart Poettering [Tue, 27 Oct 2015 02:07:24 +0000 (03:07 +0100)]
Merge pull request #1688 from phomes/typo-fix
path-util: do not return NULL as int
Thomas Hindoe Paaboel Andersen [Mon, 26 Oct 2015 21:26:49 +0000 (22:26 +0100)]
path-util: do not return NULL as int
strv_split will only return NULL on oom so we should return -ENOMEM
instead.
Looks like an oversight from the changes in
0f474365
Lennart Poettering [Mon, 26 Oct 2015 16:53:59 +0000 (17:53 +0100)]
Merge pull request #1679 from evverx/refuse-manual-start-by-reload-or-restart
core: don't allow manual start with reload-or-restart too
Lennart Poettering [Mon, 26 Oct 2015 16:52:37 +0000 (17:52 +0100)]
Merge pull request #1686 from medhefgo/remount-ro-fix
unmount: Pass in mount options when remounting read-only