Commit Graph
20913 Commits
Author SHA1 Message Date
Lennart Poettering ed4ba7e4f6 logind: when we wake up from suspend and the lid is still closed, go to sleep immediately again
This is quite useful on laptops such as the Lenovo Yoga, where the power
button is placed on the front side of the laptop and can be pressed by
accident even if the lid is closed.

This reworks a bit of the logind logic to repeatedly try to suspend the
system as long as a lid is closed. We use the new "post" event source
for this, so that we don't keep things busy.

This also adds some code to check the lid status on boot, so that a
powered-off machine that is accidentaly powered on goes into suspend
immediately.

Yay! From now on I can put my Yoga safely in my backpack without fearing
that it might turn itself on and drain the battery.
2014-02-21 21:13:53 +01:00
Lennart Poettering 6e9feda30d event: add new kind of event source called "post"
This new event source is triggered by the dispatching of any non-post
event source. It can thus be used to do clean-up or recheck work,
triggered by any other event source having been executed.

This is different from "defer" event source which are unconditionally
triggered as long as they are enabled. A "defer" event source that does
nothing will result in the event loop busy looping unless it is turned
off eventually. This is different for "post" event sources that will be
only triggered when some other non-post ran, and will thus not keep the
event loop busy on its own.
2014-02-21 21:13:53 +01:00
Thomas Hindoe Paaboel Andersen d7c9a162f1 man: networkd typo fixes 2014-02-21 21:00:39 +01:00
Tom Gundersen 847a8a5fed udev - link-setup - expose ID_NET_DRIVER
This is the same as shown by 'ethtool -i <ifname>', and is sometimes
set even though DRIVER is not.
2014-02-21 21:00:39 +01:00
Jasper St. Pierre a0eb2a751c logind-session: Fix invalid free in the error case
utf8 needs to be initialized to NULL for the free for the early return,
otherwise we try to free invalid data.
2014-02-21 19:50:38 +01:00
Jason A. Donenfeld a2fef7701b install: networkd.service depend on !--disable
It doesn't make any sense to symlink this unit file into /etc when the
unit file itself isn't even installed, with --disable-networkd. This
moves the GENERAL_ALIASES logic into the right "if" block.
2014-02-21 19:24:17 +01:00
Lennart Poettering 96197df081 update TODO 2014-02-21 19:22:24 +01:00
Lennart Poettering c8f57f5963 man: suffix networkd config file options with "="
That's what we do for all options in the other man pages. It helps
clarifying that these are options that values need to be assigned to.
2014-02-21 19:22:24 +01:00
Lennart Poettering f7be6ffa92 man: split settings documentaiton in systemd.unit(5) into two sections 2014-02-21 19:22:24 +01:00
Lennart Poettering b8e7a47baf man: don't document ".include" in configuration files anymore as first step to deprecate them one day 2014-02-21 19:22:24 +01:00
Lennart Poettering 0183b74fa4 update TODO 2014-02-21 19:22:24 +01:00
Dave Reisner 28def94cc8 journald: ignore failure to watch hostname_fd on older kernels
Prior to 3.2, /proc/sys/kernel/hostname isn't a pollable file and
sd_event_add_io will return EPERM. Ignore this failure, since it isn't
critical to journald operation.

Reported and tested by user sraue on IRC.
2014-02-21 12:49:05 -05:00
Lennart Poettering d60473c7ba ptyfwd: reset nonblocking mode
Apparently bash doesn't turn off non-blocking mode on stdin/stdout when
reading from it, so be nice to bash. Ideally bash would do this on its
own for robustness reasons, though.

https://bugs.freedesktop.org/show_bug.cgi?id=70622
2014-02-21 18:42:14 +01:00
Kay Sievers 210054d76c NEWS: add name_to_handle_at() requirement 2014-02-21 18:15:34 +01:00
Samuli Suominen 74fae4240f build-sys: make network files respect --rootprefix
With --rootprefix= systemd-udevd gets installed to /lib/systemd, and since
the network configuration is also required during early boot, it should be
available there with it. Using --prefix= is not an option since it would
put everything, including pkg-config files, man pages, documentation, to /
which is not wanted. This commit puts 99-default.link to
/lib/systemd/network/ when required.
2014-02-21 16:05:02 +01:00
Tom Gundersen edbb03e95a .network/.netdev/.link: allow to match on architecture 2014-02-21 16:05:02 +01:00
Jason A. Donenfeld 7a243b2204 configure: show if networkd is enabled in status 2014-02-21 09:36:04 -05:00
Lennart Poettering c32acc96ef man: there is no ExecStopPre= for service units
https://bugs.freedesktop.org/show_bug.cgi?id=73177
2014-02-21 15:25:04 +01:00
Tom Gundersen ca1a384769 install: enable networkd by default
This treats it similarly to getty@tty1.service and remote-fs.target, which can be
enabled/disabled, but defaults to enabled.
2014-02-21 14:38:04 +01:00
Jason A. Donenfeld c4a0b20c7a install: do not statically enable systemd-networkd
[tomegun: pruned the commit message as not to contradict the follow-up commit]
2014-02-21 14:37:53 +01:00
Thomas Bächler 9ac441c0f4 sd-event: Fix systemd crash when using timer units.
There was a copy-paste error introduced in commit c2ba3ad660
which causes the following error when using timer units:

Assertion '(x->type == SOURCE_MONOTONIC && y->type == SOURCE_MONOTONIC) || (x->type == SOURCE_REALTIME && y->type == SOURCE_REALTIME)'
failed at src/libsystemd/sd-event/sd-event.c:264, function latest_time_prioq_compare(). Aborting.
2014-02-21 14:06:50 +01:00
Daniel Mack 9e82ffa040 systemctl: fix compiler warning in list_timers()
get_next_elapse() will always fill 'next' with values when it
returns >= 0. Hence, the compiler is wrong about this warning.
Initialize 'next' nevertheless.

src/systemctl/systemctl.c: In function ‘list_timers’:
src/systemctl/systemctl.c:953:43: warning: ‘next.monotonic’ may be used
uninitialized in this function [-Wmaybe-uninitialized]
                                 converted = nw.realtime - (nw.monotonic - next.monotonic);
                                           ^
In file included from ./src/shared/log.h:30:0,
                 from src/systemctl/systemctl.c:46:
./src/shared/macro.h:137:38: warning: ‘next.realtime’ may be used
uninitialized in this function [-Wmaybe-uninitialized]
                         _a < _b ? _a : _b;      \
                                      ^
src/systemctl/systemctl.c:933:32: note: ‘next.realtime’ was declared here
                 dual_timestamp next;
                                ^
2014-02-21 12:05:38 +01:00
Daniel Mack 9bd9f43fce shared/architecture.h: fix preprocessor directives
Use 'if defined()', not 'ifdef defined()'. Fixes the following warning.

  CC       src/shared/architecture.lo
In file included from src/shared/architecture.c:24:0:
src/shared/architecture.h:89:17: warning: extra tokens at end of #ifdef
directive [enabled by default]
 #  ifdef defined(WORDS_BIGENDIAN)
                 ^
2014-02-21 11:39:38 +01:00
Zbigniew Jędrzejewski-Szmek 6a70f3aa63 man: xinclude pkg-config note 2014-02-20 22:43:27 -05:00
Zbigniew Jędrzejewski-Szmek 4f50d2efba man: xinclude --host/--machine
As usual, those common options are pushed to the end.
2014-02-20 22:43:27 -05:00
Zbigniew Jędrzejewski-Szmek 88ae7333ee man: xinclude --user/--system 2014-02-20 22:43:27 -05:00
Zbigniew Jędrzejewski-Szmek dfdebb1b92 man: xinclude --help/--version/--no-pager 2014-02-20 22:43:27 -05:00
Zbigniew Jędrzejewski-Szmek 7c071fda94 build-sys: add conditionals and regenerate manpage list
The list of man pages is auto generated, based on conditonal='...'
attributes in the man page itself.
2014-02-20 22:43:27 -05:00
Zbigniew Jędrzejewski-Szmek c0652d453e man: ignore non-manpage files when generating makefile 2014-02-20 22:43:27 -05:00
Zbigniew Jędrzejewski-Szmek ef417cfd22 manager: be more precise in message about restart 2014-02-20 22:38:23 -05:00
Lennart Poettering 0ef61cec61 update TODO 2014-02-21 04:04:47 +01:00
Lennart Poettering 08af0da269 nspawn: when adding a veth interface to a bridge, use the "vb-" rather than "ve-" interface name prefix
This way we can recognize the interfaces later on to apply different
host-side configuration to them.
2014-02-21 04:02:12 +01:00
Jason St. John 90e633a790 replace tabs with spaces in some files
Files:
* hwdb/60-keyboard.hwdb
* shell-completion/zsh/_systemd-coredumpctl
* src/test/test-helper.h
2014-02-21 03:50:12 +01:00
Michael Scherer eef65bf3ee core: Add AppArmor profile switching
This permit to switch to a specific apparmor profile when starting a daemon. This
will result in a non operation if apparmor is disabled.
It also add a new build requirement on libapparmor for using this feature.
2014-02-21 03:44:20 +01:00
Colin Walters 37f78db2f4 selinux: Don't attempt to load policy in initramfs if it doesn't exist
Currently on at least Fedora, SELinux policy does not come in the
initramfs.  systemd will attempt to load *both* in the initramfs and
in the real root.

Now, the selinux_init_load_policy() API has a regular error return
value, as well as an "enforcing" boolean.  To determine enforcing
state, it looks for /etc/selinux/config as well as the presence of
"enforcing=" on the kernel command line.

Ordinarily, neither of those exist in the initramfs, so it will return
"unknown" for enforcing, and systemd will simply ignore the failure to
load policy.
2014-02-21 03:30:18 +01:00
Lennart Poettering fdc8509fb6 build-sys: don't use -Wcast-align anymore
We do a lot of these casts, and they are all OK, so let's get rid of the
warning, to make things quieter.

http://lists.freedesktop.org/archives/systemd-devel/2014-February/017174.html
2014-02-21 03:15:52 +01:00
Michael Scherer 8eea53dd45 build-sys: Fix compilation of nspawn when seccomp is not enabled 2014-02-21 03:10:09 +01:00
Lennart Poettering 6633045578 missing: simplifications 2014-02-21 03:07:42 +01:00
Holger Schurig 3b79431414 build-sys: Add setns() functions if not in the C library.
Debian Stable is still using glibc 2.13, which doesn't provide the setns().
So we detect this and provide a tiny wrapper that issues the setns syscall
towards the kernel.
2014-02-21 03:06:29 +01:00
Lennart Poettering d9d93745cd hostnamectl: should the sanitized arch, not the native uname() one 2014-02-21 02:43:14 +01:00
Lennart Poettering 099524d7b0 core: add new ConditionArchitecture() that checks the architecture returned by uname()'s machine field. 2014-02-21 02:43:14 +01:00
Tom Gundersen a03c5fd2d8 man: networkd/udev - add to [Match] documentation 2014-02-20 23:26:52 +01:00
Tom Gundersen f28964e353 net-util: match - allow globbing
For now support globbing for interface name and path.
2014-02-20 23:26:52 +01:00
Thomas Hindoe Paaboel Andersen 95fe27d930 bootctl: add bash completion 2014-02-20 23:13:11 +01:00
Umut Tezduyar Lindskog 2333154a2b sd-dhcp-client: prevent timer related memory leaks 2014-02-20 22:12:25 +01:00
Tom Gundersen c0dda18697 networkd: netdev - allow filtering on kernel cmdline, host and virt 2014-02-20 22:12:25 +01:00
Tom Gundersen 2cc412b593 network/link: Match - filter on kernel cmdline, host and virt 2014-02-20 21:50:34 +01:00
Tom Gundersen b77c08e06b condition: split out most of condition handling into libsystemd-shard
The parts that require linknig to libcap, libselinux and friends stays in libsystemd-core.
2014-02-20 20:14:33 +01:00
Tom Gundersen afc50ea84e condition: refactor a bit
No functional change, just move code around a bit to make it simpler to split out
some functions.
2014-02-20 20:14:33 +01:00
Lennart Poettering 41736b25a7 python: reindent _reader.c
All files should follow our coding style, and that means 8ch indenting.
Let's correct that.
2014-02-20 19:14:52 +01:00