Lennart Poettering [Tue, 29 Oct 2013 19:09:16 +0000 (20:09 +0100)]
strv: introduce new STRV_MAKE and STRV_MAKE_EMPTY macros to create string arrays nicely on the fly
Lennart Poettering [Tue, 29 Oct 2013 18:55:37 +0000 (19:55 +0100)]
bus: add extra validity checks
Lennart Poettering [Tue, 29 Oct 2013 18:53:43 +0000 (19:53 +0100)]
strv: introduce new strv_from_stdarg_alloca() macro to generate a string array from stdarg function parameters
This allows us to turn lists of strings passed in easily into string
arrays without having to allocate memory.
Lennart Poettering [Tue, 29 Oct 2013 18:34:11 +0000 (19:34 +0100)]
rc-local: use access(X_OK) to check if files are executable
... and other modernizations.
Lennart Poettering [Tue, 29 Oct 2013 18:31:41 +0000 (19:31 +0100)]
timedate: handle more nicely if something or somebody keeps open /dev/rtc and thus blocks out everybody else
chrony is appears to keep the RTC open continuously these days which is
a bad idea, and /dev/rtc is a single-user device, which is a bad idea
too. Together both bad ideas mean that nobody else can access the RTC
anymore. That's something to fix, but in the meantime we should handle
this more gracefully.
Lennart Poettering [Tue, 29 Oct 2013 18:31:25 +0000 (19:31 +0100)]
bus: add a macro to simplify reading of UUIDs
Lennart Poettering [Tue, 29 Oct 2013 18:30:55 +0000 (19:30 +0100)]
bus: add new sd_bus_message_verify_type() and sd_bus_message_copy() API calls
Tom Gundersen [Tue, 29 Oct 2013 16:52:25 +0000 (17:52 +0100)]
rtnl: cleanup socket_read_message
Tom Gundersen [Tue, 29 Oct 2013 16:48:58 +0000 (17:48 +0100)]
udev: link-config - split connection to sockets from loading of configs
We want to load the config in _init, but not connect to the sockets before we are forked.
Tom Gundersen [Tue, 29 Oct 2013 16:38:31 +0000 (17:38 +0100)]
rtnl: complain if used after fork
Tom Gundersen [Tue, 29 Oct 2013 15:35:37 +0000 (16:35 +0100)]
rtnl: introduce default timeout
We set it to 10 secs (as we are only communicating with the kernel,
it seems we should be able to bail out sooner than sd-bus, which
uses 25).
When passing timout 0, the default is used, use this in link-config.
Tom Gundersen [Tue, 29 Oct 2013 15:20:22 +0000 (16:20 +0100)]
udev: link-config - use safe_atou instead of strtoul
Tom Gundersen [Tue, 29 Oct 2013 15:10:54 +0000 (16:10 +0100)]
udev: link-config - use zero instead of memset
Tom Gundersen [Tue, 29 Oct 2013 15:05:27 +0000 (16:05 +0100)]
udev: link-config - use proper return values
Not sure if -ENOENT is the correct return value for when no persistent network
name is set, but couldn't think of anything better.
Tom Gundersen [Tue, 29 Oct 2013 14:59:45 +0000 (15:59 +0100)]
udev: link-config - use new0 instead of calloc
Tom Gundersen [Tue, 29 Oct 2013 14:57:54 +0000 (15:57 +0100)]
rtnl: use malloc0 instead of calloc
Tom Gundersen [Tue, 29 Oct 2013 14:56:28 +0000 (15:56 +0100)]
rtnl: use _cleanup_ macro more
Tom Gundersen [Tue, 29 Oct 2013 14:36:26 +0000 (15:36 +0100)]
udev: link-config - use _cleanup_ macro locally
Tom Gundersen [Tue, 29 Oct 2013 14:15:53 +0000 (15:15 +0100)]
path_check_timestamp: only keep the most recent timestamp
There is no point in keeping one timestamp for each directory, as we only
ever care about the most recent one.
Tom Gundersen [Tue, 29 Oct 2013 14:03:27 +0000 (15:03 +0100)]
sd-rtnl: minor fixes
Tom Gundersen [Mon, 28 Oct 2013 19:59:56 +0000 (20:59 +0100)]
udev: link-config - add proper parsing
Tom Gundersen [Tue, 29 Oct 2013 12:03:13 +0000 (13:03 +0100)]
conf-parser: add macro for ENUMV
Parses a whitespace separated list of strings into a vector of enums.
Tom Gundersen [Mon, 28 Oct 2013 19:20:59 +0000 (20:20 +0100)]
udev: builtin - rename net_link to net_setup_link
Also add shell completions.
Tom Gundersen [Mon, 28 Oct 2013 19:11:10 +0000 (20:11 +0100)]
network: move configuration to /etc/systemd/network
This is private configuraiton, so let's not pollute the namespace (and hence make Debian happy :) ).
Zbigniew Jędrzejewski-Szmek [Tue, 29 Oct 2013 03:43:57 +0000 (23:43 -0400)]
journalctl: add --list-boots to show boot IDs and times
Suggested by David Wilkins <dwilkins@maths.tcd.ie> in
https://bugzilla.redhat.com/show_bug.cgi?id=967521:
> [Specific boot ID is a] bit of a palaver to obtain. I consulted the
> verbose dump of the journal to discover the _BOOT_ID for the
> timestamp, and then generated the journal dump for that boot using
> journalctl _BOOT_ID=foo -o short-monotonic.
Lennart Poettering [Mon, 28 Oct 2013 20:11:51 +0000 (21:11 +0100)]
update TODO
David Strauss [Mon, 28 Oct 2013 19:48:39 +0000 (12:48 -0700)]
Update socket proxy name in TODO. Reformat to list.
Tom Gundersen [Mon, 28 Oct 2013 17:54:41 +0000 (18:54 +0100)]
udev: don't mix static and dynamic libs
Tom Gundersen [Sun, 27 Oct 2013 23:19:59 +0000 (00:19 +0100)]
udev: link-config - add mac address policy
This introduces a new key MACAddressPolicy.
The possible policies are 'persistent' and 'random'.
'persistent' will do nothing if the current address is the hardware address,
but if the hardware does not have an address (or another address is set for
whatever reason), we will generate an address which will be random, but
persistent between boots (based on machineid and persistent netif name).
'random' will do nothing if the kernel already set a random address, otherwise
it will generate a random one and use that instead.
This patch sets MACAddressPolicy=persistent in the default .link file.
Martin Pitt [Mon, 28 Oct 2013 11:32:12 +0000 (12:32 +0100)]
keymap: Fix stuck keys on Lenovo IdeaPad Z370
https://launchpad.net/bugs/
1245189
Martin Pitt [Mon, 28 Oct 2013 11:30:47 +0000 (12:30 +0100)]
keymap: Reorder IdeaPad rules
So that they are together in the file.
Tom Gundersen [Sun, 27 Oct 2013 23:19:59 +0000 (00:19 +0100)]
udev: link-config - move naming policy from udev rules
This introduces a new key NamePolicy, which takes an ordered list of naming
policies. The first successful one is applide. If all fail the value of Name
(if any) is used.
The possible policies are 'onboard', 'slot', 'path' and 'mac'.
This patch introduces a default link file, which replaces the equivalent udev
rule.
Tom Gundersen [Sun, 27 Oct 2013 22:09:05 +0000 (23:09 +0100)]
udev: link-config - sanity check the ifname and mac address
Tom Gundersen [Sun, 27 Oct 2013 21:45:14 +0000 (22:45 +0100)]
rtnl: relax the tests a bit
It is a bit too optimisitc that this stuff is the same on different hosts.
Tom Gundersen [Sat, 26 Oct 2013 16:54:16 +0000 (18:54 +0200)]
udev: link-config: add rtnl support
This adds support for setting the mac address, name and mtu.
Example:
[Link]
MTU=1450
MACAddress=98:76:54:32:10:ab
Name=wireless0
Tom Gundersen [Mon, 21 Oct 2013 18:12:52 +0000 (19:12 +0100)]
libsystemd-rtnl: add a rtnetlink library
This is intentionally as similar to sd-bus as possible. While it
would be simple to export it, the intentions is to keep this
internal (at least for the forseeable future).
Currently only synchronous communication is implemented
Daniel Buch [Sun, 27 Oct 2013 11:45:53 +0000 (12:45 +0100)]
test-strv.c: added STRV_FOREACH and STRV_FOREACH_BACKWARDS
Daniel Buch [Sun, 27 Oct 2013 11:45:52 +0000 (12:45 +0100)]
path_lookup: moved _cleanup_lookup_paths_free_ from install.c to path-lookup.h
Tom Gundersen [Sat, 26 Oct 2013 16:54:16 +0000 (18:54 +0200)]
udev: link-config: add ethtool support
This adds support for setting the link speed, duplex and WakeOnLan
settings.
Example:
[Link]
SpeedMBytes=100
Duplex=half
WakeOnLan=magic
Tom Gundersen [Fri, 25 Oct 2013 22:34:01 +0000 (00:34 +0200)]
udev: add network link configuration tool
This tool applies hardware specific settings to network devices before they
are announced via libudev.
Settings that will probably eventually be supported are MTU, Speed,
DuplexMode, WakeOnLan, MACAddress, MACAddressPolicy (e.g., 'hardware',
'synthetic' or 'random'), Name and NamePolicy (replacing our current
interface naming logic). This patch only introduces support for
Description, as a proof of concept.
Some of these settings may later be overriden by a network management
daemon/script. However, these tools should always listen and wait on libudev
before touching a device (listening on netlink is not enough). This is no
different from how things used to be, as we always supported changing the
network interface name from udev rules, which does not work if someone
has already started using it.
The tool is configured by .link files in /etc/net/links/ (with the usual
overriding logic in /run and /lib). The first (in lexicographical order)
matching .link file is applied to a given device, and all others are ignored.
The .link files contain a [Match] section with (currently) the keys
MACAddress, Driver, Type (see DEVTYPE in udevadm info) and Path (this
matches on the stable device path as exposed as ID_PATH, and not the
unstable DEVPATH). A .link file matches a given device if all of the
specified keys do. Currently the keys are treated as plain strings,
but some limited globbing may later be added to the keys where it
makes sense.
Example:
/etc/net/links/50-wireless.link
[Match]
MACAddress=98:f2:e4:42:c6:92
Path=pci-0000:02:00.0-bcma-0
Type=wlan
[Link]
Description=The wireless link
Tom Gundersen [Sat, 26 Oct 2013 14:41:22 +0000 (16:41 +0200)]
STRV_FOREACH_BACKWARDS: improve readability a bit
The indentation was wrong, also put the semicolon on a separate line to make it clear it is a for-loop
with an epmyt body.
Dave Reisner [Wed, 23 Oct 2013 18:10:02 +0000 (14:10 -0400)]
update gitignore
Tom Gundersen [Sat, 26 Oct 2013 10:22:04 +0000 (12:22 +0200)]
udev-builtin: path_id - add support for bcma bus
This matches the bcma support in the network device naming.
Eventually wa want to make sure ID_PATH is equivalent to ID_NET_NAME_PATH,
so we never need to match on the latter.
Tom Gundersen [Fri, 25 Oct 2013 22:36:49 +0000 (00:36 +0200)]
udev: move udev_rules_check_timestamp to shared
I want to use this from a bulitin in a subsequent patch.
Tom Gundersen [Sat, 26 Oct 2013 11:41:31 +0000 (13:41 +0200)]
STRV_FOREACH_BACWARDS: start at the tail of the list
Otherwise, the user would have to manually initialize the pointer. Nobody currently uses this code,
so the change in behaviour sohuld be fine.
Thomas Hindoe Paaboel Andersen [Sat, 26 Oct 2013 20:38:41 +0000 (22:38 +0200)]
typo fix in comment
Thomas Hindoe Paaboel Andersen [Fri, 25 Oct 2013 20:56:19 +0000 (22:56 +0200)]
analyze: port to sd-bus
Kay Sievers [Fri, 25 Oct 2013 05:27:18 +0000 (07:27 +0200)]
bus: disable debug output in test-bus-kernel-benchmark
Zbigniew Jędrzejewski-Szmek [Thu, 24 Oct 2013 04:45:10 +0000 (00:45 -0400)]
catalog: remove links to non-existent wiki pages
AFAIK, we don't have even one page with message explanations.
If/when we add them, we can add links.
https://bugzilla.redhat.com/show_bug.cgi?id=
1017161
Zbigniew Jędrzejewski-Szmek [Wed, 23 Oct 2013 00:39:18 +0000 (20:39 -0400)]
systemd: use unit name in PrivateTmp directories
Unit name is used whole in the directory name, so that the unit name
can be easily extracted from it, e.g. "/tmp/systemd-abcd.service-DEDBIF1".
https://bugzilla.redhat.com/show_bug.cgi?id=957439
Tom Gundersen [Wed, 14 Aug 2013 00:54:25 +0000 (02:54 +0200)]
inhibit: port to sd-bus
Kay Sievers [Tue, 22 Oct 2013 11:50:23 +0000 (13:50 +0200)]
analyze: systemd-analyze.c -> analyze.c
Lennart Poettering [Tue, 22 Oct 2013 11:40:54 +0000 (12:40 +0100)]
bus: NULL signatures are OK too
Lennart Poettering [Tue, 22 Oct 2013 11:40:39 +0000 (12:40 +0100)]
bus: only if the user tries to read over the end of an array we should handle this as EOF
Kay Sievers [Tue, 22 Oct 2013 11:19:56 +0000 (13:19 +0200)]
localed: port from libdbus to libsystemd-bus
David Strauss [Tue, 22 Oct 2013 01:41:35 +0000 (18:41 -0700)]
socket-proxyd: Fix-up from previous change to avoid looping on errors.
Kay Sievers [Tue, 22 Oct 2013 01:27:38 +0000 (03:27 +0200)]
bus: avoid 'bool' storage when retrieving 'b' from the message
Just use an unsigned int as a bool type to avoid issues in the public
message reading API; sizeof(bool) == 1, but the code copies 4 bytes at
the pointers destination.
David Strauss [Tue, 22 Oct 2013 01:32:08 +0000 (18:32 -0700)]
socket-proxyd: Use ONESHOT to behave properly with multiple accept() processes.
Jan Engelhardt [Mon, 21 Oct 2013 23:50:49 +0000 (01:50 +0200)]
man: avoid the use of sudo in examples
sudo is not the first-class tool on all distros. Just require any
superuser shell.
Jan Engelhardt [Mon, 21 Oct 2013 23:50:48 +0000 (01:50 +0200)]
man: wording and grammar updates
This is a recurring submission and includes corrections to various
issue spotted.
David Strauss [Mon, 21 Oct 2013 23:39:13 +0000 (16:39 -0700)]
sd-event: EPOLLONESHOT only disables event reporting after an event. The fd is still registered.
Zbigniew Jędrzejewski-Szmek [Mon, 21 Oct 2013 22:53:57 +0000 (18:53 -0400)]
shell-completion: dump has moved to systemd-analyze
Rename NO_OPTION to STANDALONE for consistency with other files.
Thomas Hindoe Paaboel Andersen [Mon, 21 Oct 2013 19:29:23 +0000 (21:29 +0200)]
analyze: set white backgound
In programs like eog and gimp the transparant background did not
look very good.
https://bugs.freedesktop.org/show_bug.cgi?id=70720
Kay Sievers [Mon, 21 Oct 2013 17:52:45 +0000 (19:52 +0200)]
build-sys: sync printed defaults with "c" option
Kay Sievers [Mon, 21 Oct 2013 16:40:33 +0000 (18:40 +0200)]
silent a few more gcc warnings
Kay Sievers [Mon, 21 Oct 2013 16:28:23 +0000 (18:28 +0200)]
build-sys: disable _FORTIFY_SOURCE for -Og builds for now
Older gcc versions throw things like:
In file included from /usr/include/fcntl.h:302:0,
from ../src/core/execute.c:25:
In function 'open',
inlined from 'open_null_as' at ../src/core/execute.c:196:12:
/usr/include/bits/fcntl2.h:50:24: error: call to '__open_missing_mode'
declared with attribute error: open with O_CREAT in second argument needs 3 arguments
__open_missing_mode ();
Kay Sievers [Mon, 21 Oct 2013 13:24:18 +0000 (15:24 +0200)]
build-sys: use -Og instead of -O0 to catch warnings
$ touch src/core/dbus.c; make CFLAGS=-O0
make --no-print-directory all-recursive
Making all in .
CC src/core/libsystemd_core_la-dbus.lo
CCLD libsystemd-core.la
$ touch src/core/dbus.c; make CFLAGS=-Og
make --no-print-directory all-recursive
Making all in .
CC src/core/libsystemd_core_la-dbus.lo
src/core/dbus.c: In function 'init_registered_system_bus':
src/core/dbus.c:798:18: warning: 'id' may be used uninitialized in this function [-Wmaybe-uninitialized]
dbus_free(id);
^
CCLD libsystemd-core.la
-Og Optimize debugging experience. -Og enables optimizations that do
not interfere with debugging. It should be the optimization level of
choice for the standard edit-compile-debug cycle, offering a
reasonable level of optimization while maintaining fast compilation
and a good debugging experience.
Kay Sievers [Mon, 21 Oct 2013 01:49:03 +0000 (03:49 +0200)]
rules: remove pointless MODE= settings
Changing the default MODE= for the group accessi, but not specifying
a GROUP= does not provide anything.
It disables the default logic that the mode switches to 0660 as soon
as a GROUP= is specifed, which make custom rules uneccesarily complicated.
https://bugs.freedesktop.org/show_bug.cgi?id=70665
Dave Reisner [Sun, 20 Oct 2013 00:58:59 +0000 (20:58 -0400)]
socket-proxyd(1): fix references to non-existant files
socket.target -> sockets.target
/usr/bin/systemd-socket-proxyd -> /usr/lib/systemd/systemd-socket-proxyd
Kay Sievers [Sun, 20 Oct 2013 22:56:47 +0000 (00:56 +0200)]
bus: initialize variable, now that we might skip debug logging
Kay Sievers [Sun, 20 Oct 2013 22:38:19 +0000 (00:38 +0200)]
bus: remove static introspection file export
Kay Sievers [Sun, 20 Oct 2013 22:18:00 +0000 (00:18 +0200)]
bus: allow to specify NULL as an empty string to add
Colin Walters [Sun, 20 Oct 2013 20:02:26 +0000 (16:02 -0400)]
log: Fix previous commit to use correct level
Kay Sievers [Sun, 20 Oct 2013 19:17:55 +0000 (21:17 +0200)]
log: avoid calling the logging functions for log levels above the current maximum
Messages with log levels above the current maximum log level will be dropped
inside log_meta(). But to be able to call the function, all parameters for
the function need to be provided. This can easily get expensive, if values
need to be calculated or functions are used in parameters.
Avoid all useless work by checking inside the macro, before we look
at any parameters passed to the logging functions.
Kay Sievers [Sun, 20 Oct 2013 14:58:04 +0000 (16:58 +0200)]
build-sys: unify foo_CFLAGS = usage and add explaining comments
Always add the default AM_CFLAGS first.
If variables are used in conditionals, the default assignment
of AM variables is disabled, even when the conditional is not
in use; foo_CFLAGS = $(AM_CFLAGS) is needed, even when it looks
like a no-op.
Colin Walters [Sun, 20 Oct 2013 13:53:05 +0000 (09:53 -0400)]
Revert "build-sys: move journalctl CFLAGS= to one line"
This reverts commit
e5d5aa1d0f4e143f12f5e00ca072547369d37e53; it
breaks if !HAVE_QRENCODE since then we aren't using $(AM_CFLAGS) for
journalctl.
Kay Sievers [Sun, 20 Oct 2013 02:27:30 +0000 (04:27 +0200)]
vimrc: disable -fdiagnostics-color output
David Strauss [Sun, 20 Oct 2013 00:11:36 +0000 (17:11 -0700)]
socket-proxyd: Remove datagram research TODO. This proxy will not work with them.
David Strauss [Sun, 20 Oct 2013 00:05:42 +0000 (17:05 -0700)]
socket-proxyd: Comment and log text cleanup.
* Standardize on "nonblocking" spelling, per Linux man pages.
* Clarify that the nonblocking sockets are never in a "blocking"
or "unblocked" state, just a "would block" or "ready" state.
Kay Sievers [Sat, 19 Oct 2013 23:16:32 +0000 (01:16 +0200)]
man: systemd-fstab-generator - remove <term>
Element term in namespace '' encountered in para, but no template matches.
Kay Sievers [Sat, 19 Oct 2013 23:12:29 +0000 (01:12 +0200)]
hwdb: update
Kay Sievers [Sat, 19 Oct 2013 23:10:49 +0000 (01:10 +0200)]
socket-proxyd: initialize variable used in error code path
Kay Sievers [Sat, 19 Oct 2013 22:59:53 +0000 (00:59 +0200)]
build-sys: move journalctl CFLAGS= to one line
Tom Gundersen [Sat, 19 Oct 2013 17:28:21 +0000 (19:28 +0200)]
trivial: rfkill - don't include util.h twice
Colin Walters [Sat, 19 Oct 2013 13:02:01 +0000 (09:02 -0400)]
trivial: rfkill: It's util.h, not utils.h
How about we actually run make locally before pushing, eh?
Tom Gundersen [Sat, 19 Oct 2013 10:33:47 +0000 (12:33 +0200)]
man: fix typos in backlight/rfkill page
/me must learn to also test manpage changes
Tom Gundersen [Sat, 19 Oct 2013 10:23:41 +0000 (12:23 +0200)]
TODO: update
Tom Gundersen [Sat, 19 Oct 2013 10:13:25 +0000 (12:13 +0200)]
udev-builtin: uaccess - inherit logging form udev
Not that it makes a difference in this builtin, but otherwise /etc/udev/udev.conf is not respected.
Tom Gundersen [Sat, 19 Oct 2013 09:38:42 +0000 (11:38 +0200)]
fsck-root: only run when requested in fstab
fsck-root is redundant in case an initrd is used, or in case the rootfs
is never remounted 'rw', so the new default is the correct behavior for
most users. For the rest, they should enable it in fstab.
Tom Gundersen [Sat, 5 Oct 2013 15:32:21 +0000 (17:32 +0200)]
efi-boot-generator: hookup to fsck
Tom Gundersen [Sat, 5 Oct 2013 15:28:09 +0000 (17:28 +0200)]
mount/service: drop FsckPassNo support
We now treat passno as boleans in the generators, and don't need this any more. fsck itself
is able to sequentialize checks on the same local media, so in the common case the ordering
is redundant.
It is still possible to force an order by using .d fragments, in case that is desired.
Thomas Bächler [Sun, 29 Sep 2013 23:34:46 +0000 (01:34 +0200)]
Remove FsckPassNo from systemd-fsck-root.service
Thomas Bächler [Sun, 29 Sep 2013 23:34:45 +0000 (01:34 +0200)]
gpt-auto-generator: Generate explicit dependencies on systemd-fsck@.service instead of using FsckPassNo
[tomegun: check for OOM]
Thomas Bächler [Sun, 29 Sep 2013 23:34:44 +0000 (01:34 +0200)]
fstab-generator: Generate explicit dependencies on systemd-fsck@.service instead of using FsckPassNo
[tomegun:
* order all fsck instances after fsck-root
* check for OOM
* added notes in the manpages]
Thomas Bächler [Sun, 29 Sep 2013 22:32:33 +0000 (00:32 +0200)]
fstab-generator: When parsing the root= cmdline option, set FsckPassNo to 1
[tomegun: without this we would never fsck the rootfs if it was directly
mounted 'rw' from the initrd. We now risk fsck'ing it twice in the case it
is mounted 'ro', so that should be addressed in a separate patch.]
Tom Gundersen [Fri, 18 Oct 2013 22:46:07 +0000 (00:46 +0200)]
kerne-command-line: introduce option 'systemd.restore_state'
When set to 0 this will stop tools like the backlight and rfkill tools to
restore state from previous boot. This is useful in case the stored state
is bogus to the extent that it is preventing you from resetting it (e.g.,
the backlight settings cause the screen to be off on boot on a system where
the backlight can not be adjusted directly from the keyboard).
Tom Gundersen [Fri, 18 Oct 2013 19:17:50 +0000 (21:17 +0200)]
TODO: add some fsck items
Colin Walters [Fri, 18 Oct 2013 14:13:52 +0000 (10:13 -0400)]
build-sys: Honor CFLAGS for journalctl again
Regression from
e905a456814eadfb904c49241e3841c1e4a1d119.
Lennart Poettering [Fri, 18 Oct 2013 12:21:36 +0000 (14:21 +0200)]
build-sys: fix += vs = in Makefile
Lennart Poettering [Fri, 18 Oct 2013 12:06:56 +0000 (14:06 +0200)]
bus: if we hit the end of an array container return 0 as EOF indicator when reading it