1
0
mirror of https://github.com/systemd/systemd.git synced 2024-11-07 09:56:51 +03:00
Commit Graph

29457 Commits

Author SHA1 Message Date
Zbigniew Jędrzejewski-Szmek
44abc32307 mailmap: some additions for recent commits 2017-06-30 13:23:32 -04:00
Zbigniew Jędrzejewski-Szmek
74d8f1c55b Merge pull request #6194 from keszybz/urandom-magic
Fall back to /dev/urandom less and other random number improvements.
2017-06-30 13:05:56 -04:00
Susant Sahani
9432a05c54 ethtool: fix half-duplex / full-duplex confusion (#6209)
The values that we used for half-duplex and full-duplex in ethtool_set_glinksettings were
reversed wrt. what the kernel uses.
2017-06-30 12:55:21 -04:00
NeilBrown
ca5b440aa7 core/automount: revise the "fun fact" comments. (#6245)
Fun fact 1 suggests that a "close()" is needed, but that close() has long since been
removed.  So the comment in now meaningless and possibly confusing.

Fun fact 2 refers to a bug that has been fixed in Linux prior to v4.12

Commit: 9fa4eb8e490a ("autofs: sanity check status reported with AUTOFS_DEV_IOCTL_FAIL")

so revise the comment so that no-one goes pointlessly looking for the bug.
2017-06-30 12:51:33 -04:00
Zbigniew Jędrzejewski-Szmek
fa0c9e6315 man: add more detail about quoting in ExecStart lines
Fixes #624.
2017-06-30 10:00:13 -04:00
Lars Karlitski
78c1edd1ef man: fix spelling error of sd_bus_error_set_const (#6246) 2017-06-30 11:57:13 +02:00
hramrach
b876bc09b1 Include dpad buttons in joystick detection (#6240)
Since f472d466ec ("Remove BTN_DPAD_* keys from ID_INPUT_KEY test
    (#5701)") dpad buttons are excluded from keyboard keys for keyboard
detection.

Include them in joystick buttons for joystick detection.
2017-06-30 10:23:58 +10:00
Michael Biebl
aff804febc tmpfiles: create /var/log/lastlog if it does not exist
Create /var/log/lastlog the same way we create utmp and wtmp.
This is useful for stateless systems where /var is volatile and a
missing /var/log/lastlog otherwise creates error messages like

Jun 27 20:00:00 huron sshd[1234]: lastlog_openseek: Couldn't stat /var/log/lastlog: No such file or directory

Fixes #6234
2017-06-29 08:01:37 +02:00
AsciiWolf
16a5d4128f units: use https for the freedesktop url (#6227) 2017-06-28 22:54:12 -04:00
Zbigniew Jędrzejewski-Szmek
8968e36f21 man: mention localed and localectl in locale.conf(5) and vconsole.conf(5)
Fixes #295.

(We cannot add a comment to either of those files because they are documented
to "only support variable assignments", so it's better to add an explanation
in the man page instead.)
2017-06-28 22:47:55 -04:00
Zbigniew Jędrzejewski-Szmek
ad29b8897e localed: improve the comment in 00-keyboard.conf 2017-06-28 22:37:02 -04:00
Zbigniew Jędrzejewski-Szmek
2b015ea4b2 man: describe the relationship between nss-myhostname and nss-resolved
Fixes #1605.
2017-06-28 20:43:37 -04:00
Zbigniew Jędrzejewski-Szmek
1f3e486fa7 Revert "resolved: drop unnecessary comparison (#6220)"
This reverts commit d718d20225.
2017-06-28 16:01:18 -04:00
Yu Watanabe
6f6165bf7d systemd-mount: support unmounting loop devices by backing files (#6211)
This makes `systemd-umount` or `systemd-mount -u` support unmounting
loop devices by the corresponding backing files, like
`systemd-mount --umount /tmp/foo.img /tmp/bar.img`

Fixes #6206.
2017-06-28 14:19:38 -04:00
Lennart Poettering
0d787d5ff8 Only drop the capabilities from the bounding set if we are running as PID1 (#6204)
The CapabilityBoundingSet option only makes sense if we are running as
PID1.

The system.conf.d(5) manpage, already states that the CapabilityBoundingSet
option:
  Controls which capabilities to include in the capability bounding set
  for PID 1 and its children.

https://github.com/systemd/systemd/issues/6080
2017-06-28 13:29:45 -04:00
Lennart Poettering
1f47f5504c udev: never ask libblkid for detecting superblocks with bad checksums (#6215)
Previously, we'd ask liblkid to also tell us about recognized
superblocks with bad checksums. We'd then log about them and ignore
them. This however created ambuigity problems, see #6110: the
BLKID_SUBLKS_BADCSUM is not as innocent as it appears.

This patch drops bad checksum handling and we ignore all such superblocks
entirely again, as it was the status quo ante
d47f6ca5f9 (where this was snuck in).

Ideally, libblkid would be changed to avoid this ambiguity problems for
bad checksums, but that's not going to happen any time soon, according
to @karelzak.

Fixes: #6110
2017-06-28 13:27:40 -04:00
Lennart Poettering
cd2dfc6fae nspawn: register a scope for the unit if --register=no is specified (#6166)
Previously, only when --register=yes was set (the default) the invoked
container would get its own scope, created by machined on behalf of
nspawn. With this change if --register=no is set nspawn will still get
its own scope (which is a good thing, so that --slice= and --property=
take effect), but this is not done through machined but by registering a
scope unit directly in PID 1.

Summary:

--register=yes             → allocate a new scope through machined (the default)
--register=yes --keep-unit → use the unit we are already running in an register with machined
--register=no              → allocate a new scope directly, but no machined
--register=no --keep-unit  → do not allocate nor register anything

Fixes: #5823
2017-06-28 13:22:46 -04:00
Lennart Poettering
694859b5e7 sd-bus: never augment creds when we are operating on remote connections (#6217)
It's not always clear when something is a remote connection, hence only
flag the obvious cases as local.

Fixes: #6207
2017-06-28 13:20:16 -04:00
Stefan Schweter
56892b0b36 man: update reference for binfmt documentation (#6223) 2017-06-28 13:18:37 -04:00
Zbigniew Jędrzejewski-Szmek
d718d20225 resolved: drop unnecessary comparison (#6220)
mtu is always greater than UDP_PACKET_HEADER_SIZE at this point.
Pointed out by Benjamin Robin.
2017-06-28 18:24:37 +02:00
Michael Biebl
1943fd9f40 Merge pull request #6222 from keszybz/input-id-rules-installation
build-sys: fix installation of new 60-input-id.rules
2017-06-28 17:40:12 +02:00
Zbigniew Jędrzejewski-Szmek
43af16c99c build-sys: fix installation of new 60-input-id.rules
Fixup for 38887d1bd5.
2017-06-28 11:19:33 -04:00
Zbigniew Jędrzejewski-Szmek
2416f73be1 tests: add test-random-util
In case you're wondering: 16 aligns in a nice pyramid.
2017-06-28 10:34:45 -04:00
Zbigniew Jędrzejewski-Szmek
f0d09059bd basic/random-util: do not fall back to /dev/urandom if getrandom() returns short
During early boot, we'd call getrandom(), and immediately fall back to
reading from /dev/urandom unless we got the full requested number of bytes.
Those two sources are the same, so the most likely result is /dev/urandom
producing some pseudorandom numbers for us, complaining widely on the way.

Let's change our behaviour to be more conservative:
- if the numbers are only used to initialize a hash table, a short read is OK,
  we don't really care if we get the first part of the seed truly random and
  then some pseudorandom bytes. So just do that and return "success".

- if getrandom() returns -EAGAIN, fall back to rand() instead of querying
  /dev/urandom again.

  The idea with those two changes is to avoid generating a warning about
  reading from an /dev/urandom when the kernel doesn't have enough entropy.

- only in the cases where we really need to make the best effort possible
  (sd_id128_randomize and firstboot password hashing), fall back to
  /dev/urandom.

When calling getrandom(), drop the checks whether the argument fits in an int —
getrandom() should do that for us already, and we call it with small arguments
only anyway.

Note that this does not really change the (relatively high) number of random
bytes we request from the kernel. On my laptop, during boot, PID 1 and all
other processes using this code through libsystemd request:
  74780 bytes with high_quality_required == false
    464 bytes with high_quality_required == true
and it does not eliminate reads from /dev/urandom completely. If the kernel was
short on entropy and getrandom() would fail, we would fall back to /dev/urandom
for those 464 bytes.

When falling back to /dev/urandom, don't lose the short read we already got,
and just read the remaining bytes.

If getrandom() syscall is not available, we fall back to /dev/urandom same
as before.

Fixes #4167 (possibly partially, let's see).
2017-06-28 10:32:02 -04:00
Zbigniew Jędrzejewski-Szmek
6a06b1a5d9 basic/random-util: use most of the pseudorandom bytes from rand()
The only implementation that we care about — glibc — provides us
with 31 bits of entropy. Let's use 24 bits of that, instead of throwing
all but 8 away.
2017-06-28 10:24:53 -04:00
Lennart Poettering
980cb558dc Merge pull request #6214 from keszybz/resolved-packet-size
Resolved packet size
2017-06-28 09:10:56 +02:00
Zbigniew Jędrzejewski-Szmek
f62c9e50ba Merge pull request #6099 from hramrach/master
Enable mapping button events on keyboard.
2017-06-27 19:07:23 -04:00
Zbigniew Jędrzejewski-Szmek
f9ce1a4a41 Merge pull request #6202 from poettering/condition-first-boot-doc
some documentation updates
2017-06-27 18:34:18 -04:00
Lennart Poettering
eca2995c51 Merge pull request #6210 from poettering/input-mask
logind: make use of EVIOCSMASK input ioctl to mask out events we aren…
2017-06-27 23:24:21 +02:00
Lennart Poettering
96f925c239 update hwdb in preparation for v234 2017-06-27 23:14:53 +02:00
Lennart Poettering
4309172946 build-sys: bump versions in prepare for v234 2017-06-27 23:11:26 +02:00
Lennart Poettering
4b4da299a6 start preparing NEWS file for 234 2017-06-27 23:06:55 +02:00
Zbigniew Jędrzejewski-Szmek
64a21fdaca resolved: define various packet sizes as unsigned
This seems like the right thing to do, and apparently at least some compilers
warn about signed/unsigned comparisons with DNS_PACKET_SIZE_MAX.
2017-06-27 17:02:35 -04:00
Zbigniew Jędrzejewski-Szmek
8879553872 resolved: do not allocate packets with minimum size
dns_packet_new() is sometimes called with mtu == 0, and in that case we should
allocate more than the absolute minimum (which is the dns packet header size),
otherwise we have to resize immediately again after appending the first data to
the packet.

This partially reverts the previous commit.
2017-06-27 17:01:24 -04:00
Lennart Poettering
a1961a983f Merge pull request #5930 from larskarlitski/journal-skip
journal: return 0 from _skip() when skip is 0
2017-06-27 22:10:38 +02:00
Kai Krakow
496ae8c84b resolved: Recover from slow DNS responses
When DNS is unreliable temporarily, the current implementation will
never improve resend behavior again and switch DNS servers only late
(current maximum timeout is 5 seconds).

We can improve this by biasing the resend_timeout back to the current
RTT when a successful response was received. Next time, a timeout is hit
on this server, it will switch to the next server faster.

Fixes: #5953
2017-06-27 22:04:16 +02:00
Lennart Poettering
2eb6ff5e71 man: extend Before=/After= documentation a bit
let's clarify what the order actually means for service units.

Fixes: #6097
2017-06-27 21:30:48 +02:00
Lennart Poettering
80af263b6c man: improve documentation of ExecStartPost= a bit
Let's make clear what start-up really means in this case.

See: #6097
2017-06-27 21:30:48 +02:00
Lennart Poettering
23254af18d man: be more precise on the ConditionFirstBoot= documentation
Fixes: #5696
2017-06-27 21:30:48 +02:00
Lennart Poettering
9af868392b Merge pull request #5976 from fbuihuu/swap-fix
Swap fix
2017-06-27 20:28:56 +02:00
Lennart Poettering
5b987a4e3e logind: relax udev rules matching devices logind watches for
Now that we have support for key/switch masking in logind, we can relax
the rules by which logind picks the devices to watch a bit, after all we
won't wake up anymore for every single event, but instead only the
events we actually care about.

This should make power/suspend keys on normal usb/atkbd keyboards just
work.
2017-06-27 19:25:46 +02:00
Lennart Poettering
2546b70a5e logind: filter out input devices that have none of the keys/switche we care about
Let's check what keys are there, before we actually hang on to the
opened devices.
2017-06-27 19:25:46 +02:00
Lennart Poettering
d5dd44b01c logind: make use of EVIOCSMASK input ioctl to mask out events we aren't interested in
This way logind will get woken up only when an actual event took place,
and not for every key press on the system.

The ioctl EVIOCSMASK was added by @dvdhrm already in October 2015, for
the use in logind, among others, hence let's actually make use of it
now.

While we are at it, also fix usage of the EVIOCGSW ioctl, where we
assumed a byte array, even though a unsigned long native endian array is
returned.
2017-06-27 19:25:46 +02:00
Zbigniew Jędrzejewski-Szmek
db848813ba resolved: simplify alloc size calculation
The allocation size was calculated in a complicated way, and for values
close to the page size we would actually allocate less than requested.

Reported by Chris Coulson <chris.coulson@canonical.com>.

CVE-2017-9445
2017-06-27 13:19:52 -04:00
Zbigniew Jędrzejewski-Szmek
751ca3f1de test-resolved-packet: add a simple test for our allocation functions 2017-06-27 13:19:31 -04:00
Zbigniew Jędrzejewski-Szmek
180f6dbd2c Merge pull request #6067 from ssahani/networkctl
networkctl: display address labels
2017-06-27 11:41:09 -04:00
Zbigniew Jędrzejewski-Szmek
a5be8dabd6 Add networkctl label to man and shell completion 2017-06-27 10:30:41 -04:00
Susant Sahani
d37b7627c2 networkctl: display address labels
```
 ./networkctl label

    Prefix/Prefixlen                          Label
        ::/0                                  1
    fc00::/7                                  5
    fec0::/10                                11
    2002::/16                                 2
    3ffe::/16                                12
 2001:10::/28                                 7
    2001::/32                                 6
::ffff:0.0.0.0/96                                 4
        ::/96                                 3
       ::1/128                                0

```
2017-06-27 10:15:27 -04:00
Zbigniew Jędrzejewski-Szmek
887a40521d Merge pull request #6201 from poettering/bus-driver-creds
shortcut credential querying of the "org.freedesktop.DBus" bus driver pseudo-service
2017-06-27 10:11:21 -04:00
Michal Suchanek
8e46eba454 hwdb: weed out key defines which do not designate events
The defines

KEY_MAX
KEY_CNT
KEY_MIN_INTERESTING
BTN_MISC
BTN_MOUSE
BTN_JOYSTICK
BTN_GAMEPAD
BTN_DIGI
BTN_WHEEL
BTN_TRIGGER_HAPPY

mark start/end of key blocks and do not designate events.

Exclude them from the list of recognized key events.
2017-06-27 13:29:02 +02:00