]> git.ipfire.org Git - thirdparty/systemd.git/log
thirdparty/systemd.git
8 years agoMerge pull request #898 from poettering/machined-fix-reload
Daniel Mack [Thu, 6 Aug 2015 14:13:22 +0000 (16:13 +0200)] 
Merge pull request #898 from poettering/machined-fix-reload

Fix for #376, plus some other fixes

8 years agomachined: rework state tracking logic for machines 898/head
Lennart Poettering [Thu, 6 Aug 2015 13:50:54 +0000 (16:50 +0300)] 
machined: rework state tracking logic for machines

This splits up the stopping logic for machines into two steps: first on
machine_stop() we begin with the shutdown of a machine by queuing the
stop method call for it. Then, in machine_finalize() we actually remove
the rest of its runtime context. This mimics closely how sessions are
handled in logind.

This also reworks the GC logic to strictly check the current state of
the machine unit, rather than shortcutting a few cases, like for example
assuming that UnitRemoved really means a machine is gone (which it isn't
since Reloading might trigger it, see #376).

Fixes #376.

8 years agomachine: drop state variable from Machine object
Lennart Poettering [Thu, 6 Aug 2015 13:50:02 +0000 (16:50 +0300)] 
machine: drop state variable from Machine object

We never made use of it, let's get rid of it.

8 years agologind,machined: various smaller cleanups
Lennart Poettering [Thu, 6 Aug 2015 13:48:17 +0000 (16:48 +0300)] 
logind,machined: various smaller cleanups

Use mfree() where we can.

Drop unnecessary {}.

Drop unnecessary variable declarations.

Cast syscall invocations where explicitly don't care for the return
value to (void).

Reword a comment.

8 years agomachined,logind: don't generate errors on signal match functions
Lennart Poettering [Thu, 6 Aug 2015 13:46:16 +0000 (16:46 +0300)] 
machined,logind: don't generate errors on signal match functions

If we get a weird signal, then we should log about it, but not return an
error, since sd-bus will not call us again then anymore, but for these
signals we match here we actually do want to be called on the next
invocation.

8 years agoMerge pull request #897 from poettering/sd-bus-ignore-bloom-filter
Tom Gundersen [Thu, 6 Aug 2015 12:56:47 +0000 (14:56 +0200)] 
Merge pull request #897 from poettering/sd-bus-ignore-bloom-filter

sd-bus: ignore BLOOM_FILTER kdbus items

8 years agosd-bus: ignore BLOOM_FILTER kdbus items 897/head
Lennart Poettering [Thu, 6 Aug 2015 12:48:33 +0000 (15:48 +0300)] 
sd-bus: ignore BLOOM_FILTER kdbus items

The kernel nowadays sends these along, and that's OK, hence don't even
debug log about it, but completely ignore it.

8 years agoMerge pull request #896 from poettering/runtimedir-exec
Tom Gundersen [Thu, 6 Aug 2015 12:34:12 +0000 (14:34 +0200)] 
Merge pull request #896 from poettering/runtimedir-exec

execute: don't fail if we create the runtime directory from two proce…

8 years agoexecute: don't fail if we create the runtime directory from two processes simultaneously 896/head
Lennart Poettering [Thu, 6 Aug 2015 11:53:15 +0000 (14:53 +0300)] 
execute: don't fail if we create the runtime directory from two processes simultaneously

If a service has both ExecStart= and ExecStartPost= set with
Type=simple, then it might happen that we have two children create the
runtime directory of a service (as configured with RuntimeDirectory=) at
the same time. Previously we did this with mkdir_safe() which will
create the dir only if it is missing, but if it already exists will at
least verify the access mode and ownership to match the right values.
This is problematic in this case, since it creates and then adjusts the
settings, thus it might happen that one child creates the directory with
root owner, another one then verifies it, and only afterwards the
directory ownership is fixed by the original child, while the second
child already failed.

With this change we'll now always adjust the access mode, so that we
know that it is right. In the worst case this means we adjust the
mode/ownership even though its unnecessary, but this should have no
negative effect.

https://bugzilla.redhat.com/show_bug.cgi?id=1226509

8 years agobus-proxy: add comment to remove -EPERM check
Kay Sievers [Thu, 6 Aug 2015 11:45:46 +0000 (13:45 +0200)] 
bus-proxy: add comment to remove -EPERM check

8 years agoMerge pull request #895 from zonque/unit-fix
Kay Sievers [Thu, 6 Aug 2015 11:01:13 +0000 (13:01 +0200)] 
Merge pull request #895 from zonque/unit-fix

core: unit: remove bus slot after calling unit_done()

8 years agocore: unit: remove bus slot after calling unit_done() 895/head
Daniel Mack [Thu, 6 Aug 2015 10:53:06 +0000 (12:53 +0200)] 
core: unit: remove bus slot after calling unit_done()

The ->done callback in the unit's vtable might call into
unit_unwatch_bus_name() and corrupt memory by that.

Move the call down, and clean up the bus slot in case it hasn't been done
yet.

8 years agoupdate TODO
Lennart Poettering [Thu, 6 Aug 2015 10:44:02 +0000 (13:44 +0300)] 
update TODO

8 years agobus-proxy: fix error code for invalid reply-slots
David Herrmann [Thu, 6 Aug 2015 09:42:40 +0000 (11:42 +0200)] 
bus-proxy: fix error code for invalid reply-slots

The kernel may return EBADSLT if a reply slot cannot be found. Make sure
to ignore it just like we ignore EPERM (the comment still applies).

8 years agoMerge pull request #894 from zonque/name-owner-changed-v2
Lennart Poettering [Thu, 6 Aug 2015 08:25:31 +0000 (11:25 +0300)] 
Merge pull request #894 from zonque/name-owner-changed-v2

core: dbus: track bus names per unit (v2)

8 years agocore: dbus: track bus names per unit 894/head
Daniel Mack [Wed, 5 Aug 2015 15:47:45 +0000 (17:47 +0200)] 
core: dbus: track bus names per unit

Currently, PID1 installs an unfiltered NameOwnerChanged signal match, and
dispatches the signals itself. This does not scale, as right now, PID1
wakes up every time a bus client connects.

To fix this, install individual matches once they are requested by
unit_watch_bus_name(), and remove the watches again through their slot in
unit_unwatch_bus_name().

If the bus is not available during unit_watch_bus_name(), just store
name in the 'watch_bus' hashmap, and let bus_setup_api() do the installing
later.

8 years agoMerge pull request #888 from keszybz/completions-optional
Lennart Poettering [Thu, 6 Aug 2015 07:18:57 +0000 (10:18 +0300)] 
Merge pull request #888 from keszybz/completions-optional

build-sys: allow skipping installation of completions

8 years agoMerge pull request #890 from fsateler/special-docs-v2
Lennart Poettering [Thu, 6 Aug 2015 07:08:40 +0000 (10:08 +0300)] 
Merge pull request #890 from fsateler/special-docs-v2

man: Clarify the difference between sysinit.target and basic.target

8 years agoMerge pull request #893 from zonque/networkd
Lennart Poettering [Thu, 6 Aug 2015 07:06:15 +0000 (10:06 +0300)] 
Merge pull request #893 from zonque/networkd

libsystemd-network: plug memory leak

8 years agolibsystemd-network: plug memory leak 893/head
Daniel Mack [Thu, 6 Aug 2015 06:53:24 +0000 (08:53 +0200)] 
libsystemd-network: plug memory leak

Coverity #1315324

8 years agoMerge pull request #889 from keszybz/man-systemctl-quiet
Zbigniew Jędrzejewski-Szmek [Thu, 6 Aug 2015 01:15:17 +0000 (21:15 -0400)] 
Merge pull request #889 from keszybz/man-systemctl-quiet

man: update description of --quiet

8 years agoMerge branch 'hostnamectl-dot-v2'
Zbigniew Jędrzejewski-Szmek [Thu, 6 Aug 2015 01:01:06 +0000 (21:01 -0400)] 
Merge branch 'hostnamectl-dot-v2'

Manual merge of https://github.com/systemd/systemd/pull/751.

8 years agohostname-util: ignore case when checking if hostname is localhost
Zbigniew Jędrzejewski-Szmek [Tue, 28 Jul 2015 02:37:52 +0000 (22:37 -0400)] 
hostname-util: ignore case when checking if hostname is localhost

8 years agohostname-util: get rid of unused parameter of hostname_cleanup()
Zbigniew Jędrzejewski-Szmek [Tue, 28 Jul 2015 02:36:36 +0000 (22:36 -0400)] 
hostname-util: get rid of unused parameter of hostname_cleanup()

All users are now setting lowercase=false.

8 years agohostnamectl: allow trailing dot on fqdn
Zbigniew Jędrzejewski-Szmek [Tue, 28 Jul 2015 02:30:06 +0000 (22:30 -0400)] 
hostnamectl: allow trailing dot on fqdn

When the user requests to set hostname, and we are setting both
pretty and static hostnames, and the name is a valid FQDN, we
use it as the static hostname, and unset the pretty hostname.
The change is that a FQDN with a trailing dot is accepted and ignored.

https://bugzilla.redhat.com/show_bug.cgi?id=1238246

Lowercasing of the static name is not done anymore.

$ hostnamectl set-hostname Foobar.
=> static is "Foobar", pretty is "Foobar."
$ hostnamectl set-hostname Foobar.org.
=> static is "Foobar.org", pretty is unset
$ hostnamectl set-hostname Foobar.org..
=> static is "Foobar.org", pretty is "Foobar.org.."

8 years agonetworkd: allow trailing dot on fqdn in config file
Zbigniew Jędrzejewski-Szmek [Tue, 28 Jul 2015 02:21:07 +0000 (22:21 -0400)] 
networkd: allow trailing dot on fqdn in config file

8 years agofirstboot: allow a trailing dot on fqdn
Zbigniew Jędrzejewski-Szmek [Tue, 28 Jul 2015 02:20:46 +0000 (22:20 -0400)] 
firstboot: allow a trailing dot on fqdn

8 years agohostname-util: add relax parameter to hostname_is_valid
Zbigniew Jędrzejewski-Szmek [Tue, 28 Jul 2015 02:15:26 +0000 (22:15 -0400)] 
hostname-util: add relax parameter to hostname_is_valid

Tests are modified to check behaviour with relax and without relax.
New tests are added for hostname_cleanup().
Tests are moved a new file (test-hostname-util) because there's
now a bunch of them.

New parameter is not used anywhere, except in tests, so there should
be no observable change.

8 years agoman: Clarify difference between basic.target and sysinit.target 890/head
Felipe Sateler [Tue, 28 Jul 2015 00:23:41 +0000 (21:23 -0300)] 
man: Clarify difference between basic.target and sysinit.target

8 years agoman: Clarify that basic.target does not pull in remote filesystems
Felipe Sateler [Mon, 27 Jul 2015 22:34:19 +0000 (19:34 -0300)] 
man: Clarify that basic.target does not pull in remote filesystems

Also note /var, /tmp or /var/tmp as special cases, should either of
those be a remote filesystem.

8 years agoman: update description of --quiet 889/head
Zbigniew Jędrzejewski-Szmek [Thu, 6 Aug 2015 00:19:57 +0000 (20:19 -0400)] 
man: update description of --quiet

This description should provide the general rule, without
listing all the subcommands, which is bound to get out of date
too often.

https://github.com/systemd/systemd/issues/216

8 years agobuild-sys: allow skipping installation of completions 888/head
Zbigniew Jędrzejewski-Szmek [Thu, 6 Aug 2015 00:10:02 +0000 (20:10 -0400)] 
build-sys: allow skipping installation of completions

./configure --with-bashcompletiondir=no or --without-bashcompletiondir
now works as expected. Similarly for zsh.

https://github.com/systemd/systemd/issues/533

8 years agoMerge pull request #885 from keszybz/logitech-g500
Daniel Mack [Thu, 6 Aug 2015 00:13:37 +0000 (02:13 +0200)] 
Merge pull request #885 from keszybz/logitech-g500

hwdb: add Logitech G500 (another version)

8 years agohwdb: add Logitech G500 (another version) 885/head
Zbigniew Jędrzejewski-Szmek [Wed, 5 Aug 2015 23:15:05 +0000 (19:15 -0400)] 
hwdb: add Logitech G500 (another version)

https://github.com/systemd/systemd/issues/562

8 years agoMerge pull request #881 from jrobeson/remove-fedup-todos
Daniel Mack [Wed, 5 Aug 2015 23:13:21 +0000 (01:13 +0200)] 
Merge pull request #881 from jrobeson/remove-fedup-todos

TODO: remove obsolete fedup related todos

8 years agoMerge pull request #883 from phomes/bool_vs_error_codes
Daniel Mack [Wed, 5 Aug 2015 23:12:45 +0000 (01:12 +0200)] 
Merge pull request #883 from phomes/bool_vs_error_codes

tree-wide: do not return error codes as bool

8 years agoMerge pull request #882 from phomes/indentation
Daniel Mack [Wed, 5 Aug 2015 23:12:05 +0000 (01:12 +0200)] 
Merge pull request #882 from phomes/indentation

tree-wide: fix indentation

8 years agotree-wide: do not return error codes as bool 883/head
Thomas Hindoe Paaboel Andersen [Wed, 5 Aug 2015 22:32:25 +0000 (00:32 +0200)] 
tree-wide: do not return error codes as bool

8 years agotree-wide: fix indentation 882/head
Thomas Hindoe Paaboel Andersen [Wed, 5 Aug 2015 22:31:09 +0000 (00:31 +0200)] 
tree-wide: fix indentation

8 years agoTODO: remove obsolete fedup related todos 881/head
Johnny Robeson [Wed, 5 Aug 2015 21:28:29 +0000 (17:28 -0400)] 
TODO: remove obsolete fedup related todos

Fedup is being replaced by a dnf plugin that relies on systemd offline
updates as per
https://fedoraproject.org/wiki/Changes/DNF_System_Upgrades

8 years agoMerge pull request #878 from poettering/network-dhcp-array-fix
Tom Gundersen [Wed, 5 Aug 2015 20:58:55 +0000 (22:58 +0200)] 
Merge pull request #878 from poettering/network-dhcp-array-fix

network: make enough space for string

8 years agonetwork: make enough space for string 878/head
Lennart Poettering [Wed, 5 Aug 2015 19:25:12 +0000 (22:25 +0300)] 
network: make enough space for string

Follow-up for PR #877.

8 years agoMerge pull request #877 from crawford/dhcp-private-options-v4
Lennart Poettering [Wed, 5 Aug 2015 19:20:36 +0000 (22:20 +0300)] 
Merge pull request #877 from crawford/dhcp-private-options-v4

networkd: save private-zone DHCP options

8 years agoudev: uaccess - do not log error when device node disappears
Kay Sievers [Wed, 5 Aug 2015 18:33:48 +0000 (20:33 +0200)] 
udev: uaccess - do not log error when device node disappears

https://github.com/systemd/systemd/issues/875

8 years agonetworkd: clean up duplicate code 862/head 877/head
Alex Crawford [Sat, 1 Aug 2015 04:48:47 +0000 (21:48 -0700)] 
networkd: clean up duplicate code

8 years agonetworkd: serialize the private options
Alex Crawford [Sat, 1 Aug 2015 03:18:51 +0000 (20:18 -0700)] 
networkd: serialize the private options

Save the private options along side the rest of the options in the lease
files.

8 years agonetworkd: add private options to lease struct
Alex Crawford [Sat, 1 Aug 2015 03:02:22 +0000 (20:02 -0700)] 
networkd: add private options to lease struct

This stores private-zone DHCP options inside of their respective DHCP
lease. These options aren't used by networkd (what would it do with
them?), but saving them will allow other programs to query the values.
To improve performance, the options are stored in ascending order by
tag.

8 years agoMerge pull request #876 from zonque/logind
Lennart Poettering [Wed, 5 Aug 2015 15:48:45 +0000 (18:48 +0300)] 
Merge pull request #876 from zonque/logind

logind: switch to sd_bus_track helper

8 years agologind: switch to sd_bus_track helper 876/head
Daniel Mack [Wed, 5 Aug 2015 13:58:39 +0000 (15:58 +0200)] 
logind: switch to sd_bus_track helper

Let logind use the sd_bus_track helper object to track the controllers of
sessions. This does not only remove quite some code but also kills the
unconditional matches for all NameOwnerChanged signals.

The latter is something we should never ever do, as it wakes up the daemon
every time a client connects, which doesn't scale.

8 years agoMerge pull request #874 from richardmaw-codethink/doc-nspawn-machine-search-path-v2
Lennart Poettering [Wed, 5 Aug 2015 12:11:27 +0000 (15:11 +0300)] 
Merge pull request #874 from richardmaw-codethink/doc-nspawn-machine-search-path-v2

man: Reference the canonical location of the search path in systemd-nspawn's documentation of the --machine option. (v2)

8 years agoman: point nspawn --machine to machinectl search-path 874/head
Richard Maw [Wed, 5 Aug 2015 08:40:36 +0000 (08:40 +0000)] 
man: point nspawn --machine to machinectl search-path

The --machine option used to describe searching for machines in
/var/lib/machines, which is not the whole story, so let's link to where
it's described in more detail.

8 years agoMerge pull request #871 from poettering/journald-meta-fields
Daniel Mack [Wed, 5 Aug 2015 09:09:48 +0000 (11:09 +0200)] 
Merge pull request #871 from poettering/journald-meta-fields

journald: fix count of object meta fields

8 years agoMerge pull request #864 from phomes/master
Lennart Poettering [Wed, 5 Aug 2015 08:40:34 +0000 (11:40 +0300)] 
Merge pull request #864 from phomes/master

hwdb: add Logitech LX8 DPI and wheel click settings

8 years agojournald: fix count of object meta fields 871/head
Lennart Poettering [Wed, 5 Aug 2015 08:31:52 +0000 (11:31 +0300)] 
journald: fix count of object meta fields

There are 12 object meta fields created in dispatch_message_real(), but
we only allocated space for 11. Fix this.

Fixes #866.

8 years agoMerge pull request #869 from poettering/tmpfiles-enoent
Daniel Mack [Wed, 5 Aug 2015 08:12:29 +0000 (10:12 +0200)] 
Merge pull request #869 from poettering/tmpfiles-enoent

sysctl: reword warning message a bit

8 years agosysctl: reword warning message a bit 869/head
Lennart Poettering [Wed, 5 Aug 2015 08:02:24 +0000 (11:02 +0300)] 
sysctl: reword warning message a bit

Let's make this less dramatic, in order to not confuse people too much
making them think that this was something to actually fix.

8 years agoMerge pull request #868 from jsynacek/jsynacek/sysctl
Lennart Poettering [Wed, 5 Aug 2015 07:58:54 +0000 (10:58 +0300)] 
Merge pull request #868 from jsynacek/jsynacek/sysctl

sysctl: bump loglevel when attempting to write invalid values [v2]

8 years agosysctl: bump loglevel when attempting to write invalid values 868/head
Jan Synacek [Tue, 4 Aug 2015 13:46:34 +0000 (15:46 +0200)] 
sysctl: bump loglevel when attempting to write invalid values

8 years agoMerge pull request #865 from mattst88/alpha-getxpid
Daniel Mack [Wed, 5 Aug 2015 05:38:08 +0000 (07:38 +0200)] 
Merge pull request #865 from mattst88/alpha-getxpid

Use getxpid syscall on alpha for raw_getpid()

8 years agoUse getxpid syscall on alpha for raw_getpid() 865/head
Matt Turner [Tue, 4 Aug 2015 21:47:01 +0000 (14:47 -0700)] 
Use getxpid syscall on alpha for raw_getpid()

Alpha does not have a getpid syscall, but rather has getxpid to match
OSF/1.

8 years agoMerge pull request #855 from richardmaw-codethink/machinectl-copy-to-from-relative...
Lennart Poettering [Tue, 4 Aug 2015 21:13:27 +0000 (00:13 +0300)] 
Merge pull request #855 from richardmaw-codethink/machinectl-copy-to-from-relative-paths-v2

Allow relative paths in `machinectl copy-{from,to}` (v2)

8 years agogpt-auto-generator: remove unused variable 864/head
Thomas Hindoe Paaboel Andersen [Tue, 4 Aug 2015 20:36:21 +0000 (22:36 +0200)] 
gpt-auto-generator: remove unused variable

8 years agohwdb: add Logitech LX8 DPI and wheel click settings
Thomas Hindoe Paaboel Andersen [Tue, 4 Aug 2015 20:12:35 +0000 (22:12 +0200)] 
hwdb: add Logitech LX8 DPI and wheel click settings

8 years agoMerge pull request #857 from dvdhrm/proxy-reload
Kay Sievers [Tue, 4 Aug 2015 15:26:20 +0000 (17:26 +0200)] 
Merge pull request #857 from dvdhrm/proxy-reload

bus-proxy: add ExecReload=

8 years agoMerge pull request #860 from walyong/smack_v11
Daniel Mack [Tue, 4 Aug 2015 12:27:09 +0000 (14:27 +0200)] 
Merge pull request #860 from walyong/smack_v11

Smack v11: set only the default smack process label if the command path has no execute label

8 years agoMerge pull request #858 from dvdhrm/proxy-env
Daniel Mack [Tue, 4 Aug 2015 12:23:17 +0000 (14:23 +0200)] 
Merge pull request #858 from dvdhrm/proxy-env

bus-proxy: discard invalid environment updates

8 years agocore: set default process label only exec label is none 860/head
WaLyong Cho [Mon, 27 Jul 2015 17:55:35 +0000 (02:55 +0900)] 
core: set default process label only exec label is none

When command path has access label and no SmackProcessLabel= is not
set, default process label will be set. But if the default process
label has no rule for the access label of the command path then smack
access error will be occurred.
So, if the command path has execute label then the child have to set
its label to the same of execute label of command path instead of
default process label.

8 years agosmack-util: revise smack-util apis and add read smack attr apis
WaLyong Cho [Mon, 27 Jul 2015 17:43:55 +0000 (02:43 +0900)] 
smack-util: revise smack-util apis and add read smack attr apis

- Add smack xattr lookup table
- Unify all of mac_smack_apply_xxx{_fd}() to mac_smack_apply() and
  mac_smack_apply_fd().
- Add smack xattr read apis similar with apply apis as
  mac_smack_read{_fd}().

8 years agoutil: add getxattr helper apis
WaLyong Cho [Mon, 27 Jul 2015 17:40:50 +0000 (02:40 +0900)] 
util: add getxattr helper apis

To get xattr of given path or fd on newly allocated buffer, add new
helper api getxattr_malloc() and fgetxattr_malloc().

8 years agobus-proxy: discard invalid environment updates 858/head
David Herrmann [Tue, 4 Aug 2015 11:36:03 +0000 (13:36 +0200)] 
bus-proxy: discard invalid environment updates

If the caller provides invalid assignments via
UpdateActivationEnvironment=, we now drop it and warn loudly about it. We
need this to be compatible to dbus1, but we also clearly want to tell the
caller that they better ought to follow POSIX recommendations and use
valid labels only.

Fixes #826.

8 years agobus-proxy: add ExecReload= 857/head
David Herrmann [Tue, 4 Aug 2015 11:19:50 +0000 (13:19 +0200)] 
bus-proxy: add ExecReload=

Make sure we support ExecReload= for bus-proxyd to reload configuration
during runtime. This is *really* handy when hacking on kdbus.

Package-managers are still recommended to run
 `busctl --address=unix:path=` directly.

8 years agoMerge pull request #856 from richardmaw-codethink/doc-invalid-environmentfile-lines
Daniel Mack [Tue, 4 Aug 2015 10:24:33 +0000 (12:24 +0200)] 
Merge pull request #856 from richardmaw-codethink/doc-invalid-environmentfile-lines

man: Document invalid lines in EnvironmentFile

8 years agonetworkd: add DHCP options for private zone
Alex Crawford [Wed, 4 Mar 2015 03:07:31 +0000 (19:07 -0800)] 
networkd: add DHCP options for private zone

8 years agobasic: add LIST_INSERT_BEFORE
Alex Crawford [Tue, 4 Aug 2015 06:11:53 +0000 (23:11 -0700)] 
basic: add LIST_INSERT_BEFORE

Similar in function to LIST_INSERT_AFTER, this will insert a new element
into the list before the specified position. If the specified position
is NULL, the element is added as the tail of the list.

8 years agoman: Document invalid lines in EnvironmentFile 856/head
Richard Maw [Tue, 4 Aug 2015 09:58:50 +0000 (09:58 +0000)] 
man: Document invalid lines in EnvironmentFile

If a line doesn't contain an = separator, it is skipped, rather than
raising an error.

This is potentially useful, so let's document this behaviour.

8 years agomachinectl: support relative host paths in copy-{from,to} 855/head
Richard Maw [Fri, 31 Jul 2015 15:24:09 +0000 (15:24 +0000)] 
machinectl: support relative host paths in copy-{from,to}

8 years agomachined: Relax path checks for Copy{From,To}
Richard Maw [Tue, 4 Aug 2015 08:55:04 +0000 (08:55 +0000)] 
machined: Relax path checks for Copy{From,To}

Absolute paths should be sufficient to prevent funny business,
and while path_is_safe() checks this, it also checks whether the path
contains . or .. components, which while odd, aren't a security risk.

8 years agoMerge pull request #850 from ssahani/dhcp
Daniel Mack [Tue, 4 Aug 2015 06:42:25 +0000 (08:42 +0200)] 
Merge pull request #850 from ssahani/dhcp

networkd: DHCP fix CID 1315105

8 years agonetworkd: DHCP fix CID 1315105 850/head
Susant Sahani [Tue, 4 Aug 2015 06:01:03 +0000 (11:31 +0530)] 
networkd: DHCP fix CID 1315105

CID 1315105: Resource leaks (RESOURCE_LEAK)
/src/libsystemd-network/sd-dhcp-server.c: 800 in
dhcp_server_handle_message()
*** CID 1315105: Resource leaks (RESOURCE_LEAK)
/src/libsystemd-network/sd-dhcp-server.c: 800 in

8 years agoUpdate bugtracker address
Zbigniew Jędrzejewski-Szmek [Tue, 4 Aug 2015 04:03:55 +0000 (00:03 -0400)] 
Update bugtracker address

8 years agoMerge pull request #845 from poettering/terminal-o-nonblock
Daniel Mack [Mon, 3 Aug 2015 18:57:19 +0000 (20:57 +0200)] 
Merge pull request #845 from poettering/terminal-o-nonblock

add O_NONBLOCK to terminal handling

8 years agotree-wide: convert some more mfree() candidates
Daniel Mack [Mon, 3 Aug 2015 17:26:07 +0000 (19:26 +0200)] 
tree-wide: convert some more mfree() candidates

8 years agoterminal-util: no real reason to assert on O_CREAT 845/head
Lennart Poettering [Mon, 3 Aug 2015 17:06:01 +0000 (19:06 +0200)] 
terminal-util: no real reason to assert on O_CREAT

That's just handle this as a normal error.

8 years agoterminal-util: cast a couple of ioctl()s to void
Lennart Poettering [Mon, 3 Aug 2015 17:05:43 +0000 (19:05 +0200)] 
terminal-util: cast a couple of ioctl()s to void

8 years agoterminal-util: when resetting terminals, don't wait for carrier
Lennart Poettering [Mon, 3 Aug 2015 17:04:08 +0000 (19:04 +0200)] 
terminal-util: when resetting terminals, don't wait for carrier

In case of non-CLOCAL lines (i.e. those with carrier detect configured)
we shouldnt wait for a carrier if all we try to do is reset the TTY.
Hence, whenever we open such a TTY pass O_NONBLOCK.

Note that we continue to open ttys we intend to write to without
O_ONBLOCK, we only add it in cases we invoke ioctl()s or other terminal
operations without reading or writing to the device.

Fixes #835.

8 years agoMerge pull request #844 from poettering/clock-boottime2
Tom Gundersen [Mon, 3 Aug 2015 15:58:54 +0000 (17:58 +0200)] 
Merge pull request #844 from poettering/clock-boottime2

tree-wide: convert bootchart and lldp code to use clock_boottime_or_m…

8 years agoMerge pull request #843 from poettering/clock-boottime
Tom Gundersen [Mon, 3 Aug 2015 15:57:26 +0000 (17:57 +0200)] 
Merge pull request #843 from poettering/clock-boottime

sd-event: make sure sd_event_now() cannot fail

8 years agotree-wide: convert bootchart and lldp code to use clock_boottime_or_monotonic() 844/head
Lennart Poettering [Mon, 3 Aug 2015 14:43:29 +0000 (16:43 +0200)] 
tree-wide: convert bootchart and lldp code to use clock_boottime_or_monotonic()

We should avoid using CLOCK_BOOTTIME directly unless we actually can
sensible distuingish it from CLOCK_MONOTONIC. CLOCK_BOOTTIME is only
fully feature on very recent Linux kernels, hence we should stick to a
fallback logic, which is already available in the
clock_boottime_or_monotonic() call.

8 years agoMerge pull request #840 from systemd-mailing-devs/1438566907-9544-1-git-send-email...
Lennart Poettering [Mon, 3 Aug 2015 15:34:54 +0000 (17:34 +0200)] 
Merge pull request #840 from systemd-mailing-devs/1438566907-9544-1-git-send-email-wangkefeng.wang@huawei.com

logind: add standard gpio power button support

8 years agosd-event: make sure sd_event_now() cannot fail 843/head
Lennart Poettering [Mon, 3 Aug 2015 15:29:09 +0000 (17:29 +0200)] 
sd-event: make sure sd_event_now() cannot fail

Previously, if the event loop never ran before sd_event_now() would
fail. With this change it will instead fall back to invoking now(). This
way, the function cannot fail anymore, except for programming error when
invoking it with wrong parameters.

This takes into account the fact that many callers did not handle the
error condition correctly, and if the callers did, then they kept simply
invoking now() as fall back on their own. Hence let's shorten the code
using this call, and make things more robust, and let's just fall back
to now() internally.

Whether now() is used or the cache timestamp may still be detected via
the return value of sd_event_now(). If > 0 is returned, then the fall
back to now() was used, if == 0 is returned, then the cached value was
returned.

This patch also simplifies many of the invocations of sd_event_now():
the manual fall back to now() can be removed. Also, in cases where the
call is invoked withing void functions we can now protect the invocation
via assert_se(), acknowledging the fact that the call cannot fail
anymore except for programming errors with the parameters.

This change is inspired by #841.

8 years agoMerge pull request #841 from teg/resolved-exponential-resend
Daniel Mack [Mon, 3 Aug 2015 14:32:40 +0000 (16:32 +0200)] 
Merge pull request #841 from teg/resolved-exponential-resend

resolved: exponential backoff of packet resend

8 years agoresolved: transaction - increase number of retry attempts 841/head
Tom Gundersen [Mon, 3 Aug 2015 12:25:49 +0000 (14:25 +0200)] 
resolved: transaction - increase number of retry attempts

With the exponential backoff, we can perform more requests in the same amount of time,
so bump this a bit.

In case of large RTT this may be necessary in order not to regress, and in case
of large packet-loss it will make us more robust. The latter is particularly
relevant once we start probing for features (and hence may see packet-loss
until we settle on the right feature level).

8 years agoresolved: transaction - exponentially increase retry timeouts
Tom Gundersen [Tue, 28 Jul 2015 00:32:24 +0000 (02:32 +0200)] 
resolved: transaction - exponentially increase retry timeouts

Rather than fixing this to 5s for unicast DNS and 1s for LLMNR, start
at a tenth of those values and increase exponentially until the old
values are reached. For LLMNR the recommended timeout for IEEE802
networks (which basically means all of the ones we care about) is 100ms,
so that should be uncontroversial. For unicast DNS I have found no
recommended value. However, it seems vastly more likely that hitting a
500ms timeout is casued by a packet loss, rather than the RTT genuinely
being greater than 500ms, so taking this as a startnig value seems
reasonable to me.

In the common case this greatly reduces the latency due to normal packet
loss. Moreover, once we get support for probing for features, this means
that we can send more packets before degrading the feature level whilst
still allowing us to settle on the correct feature level in a reasonable
timeframe.

The timeouts are tracked per server (or per scope for the multicast
protocols), and once a server (or scope) receives a successfull package
the timeout is reset. We also track the largest RTT for the given
server/scope, and always start our timouts at twice the largest
observed RTT.

8 years agoresolved: cache - use clock_boottime_or_monotonic()
Tom Gundersen [Tue, 28 Jul 2015 00:45:04 +0000 (02:45 +0200)] 
resolved: cache - use clock_boottime_or_monotonic()

We cannot rely on CLOCK_BOOTTIME being supported by the kernel, so fallack
to CLOCK_MONOTONIC if the former is not supported.

8 years agoMerge pull request #837 from ssahani/dhcp
Daniel Mack [Mon, 3 Aug 2015 07:55:41 +0000 (09:55 +0200)] 
Merge pull request #837 from ssahani/dhcp

networkd: fix neworkd crash

8 years agologind: add standard gpio power button support 840/head
Kefeng Wang [Mon, 3 Aug 2015 01:55:07 +0000 (09:55 +0800)] 
logind: add standard gpio power button support

Many boards like hisilicon D02 board use standard gpio key to power down system.
A description of gpio-key in dts shown below,

gpio_keys {
compatible = "gpio-keys";
#address-cells = <1>;
#size-cells = <0>;

pwrbutton {
label = "Power Button";
gpios = <&porta 8 1>;
linux,code = <116>;  // KEY_POWER, used by SC System Power Down
};
};

-bash-4.3# udevadm info -a /dev/input/event3

Udevadm info starts with the device specified by the devpath and then
walks up the chain of parent devices. It prints for every device
found, all possible attributes in the udev rules key format.
A rule to match, can be composed by the attributes of the device
and the attributes from one single parent device.

  looking at device '/devices/platform/gpio_keys/input/input3/event3':
    KERNEL=="event3"
    SUBSYSTEM=="input"
    DRIVER==""

  looking at parent device '/devices/platform/gpio_keys/input/input3':
    KERNELS=="input3"
    SUBSYSTEMS=="input"
    DRIVERS==""
    ATTRS{name}=="gpio_keys"
    ATTRS{phys}=="gpio-keys/input0"
    ATTRS{uniq}==""
    ATTRS{properties}=="0"

  looking at parent device '/devices/platform/gpio_keys':
    KERNELS=="gpio_keys"
    SUBSYSTEMS=="platform"
    DRIVERS=="gpio-keys"
    ATTRS{keys}=="116"
    ATTRS{switches}==""
    ATTRS{driver_override}=="(null)"
    ATTRS{disabled_keys}==""
    ATTRS{disabled_switches}==""

  looking at parent device '/devices/platform':
    KERNELS=="platform"
    SUBSYSTEMS==""
    DRIVERS==""

8 years agoMerge pull request #836 from mbiebl/man-fix-typo-systemd-fsck
Daniel Mack [Sun, 2 Aug 2015 20:54:13 +0000 (22:54 +0200)] 
Merge pull request #836 from mbiebl/man-fix-typo-systemd-fsck

man: fix typo in systemd-fsck@

8 years agoman: fix typo in systemd-fsck@ 836/head
Michael Biebl [Sun, 2 Aug 2015 20:22:15 +0000 (22:22 +0200)] 
man: fix typo in systemd-fsck@

8 years agoMerge pull request #834 from namhyung/sdbus-cleanup-v2
David Herrmann [Sun, 2 Aug 2015 17:32:21 +0000 (19:32 +0200)] 
Merge pull request #834 from namhyung/sdbus-cleanup-v2

sd-bus: Small cleanups (v2)

8 years agosd-bus: cleanup bus_reset_parsed_address() 834/head
Namhyung Kim [Sat, 1 Aug 2015 15:59:42 +0000 (00:59 +0900)] 
sd-bus: cleanup bus_reset_parsed_address()

Both strv_free() and mfree() return NULL pointer after free.