Commit Graph

11578 Commits

Author SHA1 Message Date
Susant Sahani
c8a09ef463 networkd: macvlan improve logging
Replace strerror() usage with log_netdev_error_errno()
2015-06-11 13:08:19 +05:30
Lennart Poettering
37c47e5e5b Merge pull request #3 from threatgrid/more_cgtop_enhancements
cgtop enhancements for easier machine-readable output
2015-06-11 01:52:25 +02:00
Charles Duffy
1d84ae050c cgtop: IO readings are valid if any data is available, even if unchanged since last tick
Emit "0" rather than "-" if no change in IO values are seen for a process since
last tick, so long as accounting has registered content at all.
2015-06-10 18:06:28 -05:00
Lennart Poettering
96490500cf Merge pull request #6 from xnox/drop-name
shared: Drop 'name=' prefix from SYSTEMD_CGROUP_CONTROLLER define.
2015-06-11 00:50:04 +02:00
Lennart Poettering
d112701190 Merge pull request #148 from teg/sd-network-race
sd-network: allow the state dir to be created after the monitor
2015-06-10 20:43:38 +02:00
Lennart Poettering
ad091530b3 Merge pull request #151 from mischief/dns-shared-3
move dns code from resolve to shared v3
2015-06-10 20:43:06 +02:00
David Herrmann
26589352b2 bus: we now support path_namespace=/
Our bloom-filters support root-path matching. Make sure we properly add
the path_namespace= tag.
2015-06-10 20:22:40 +02:00
David Herrmann
744dccdd36 bus: fix pattern matching
DBus-spec defines two different pattern matchings:

  1) Path and namespace prefix matching. In this case, A matches B either
     if both are equal, or if B is fully included in the namespace of A.
     In other words, A has to be a prefix of B, but end with a separator
     character (or the following character in B must be one).

     This is used for path_namespace= and arg0namespace=

  2) The other pattern matching is used for arg0path= which does a two-way
     matching. That is, A must be a prefix of B, or B a prefix of A.
     Furthermore, the prefix must end with a separator.

Fix the sd-bus helpers to reflect that. The 'simple_' and 'complex_'
prefixes don't make any sense now, but.. eh..
2015-06-10 20:22:40 +02:00
David Herrmann
2e90f867f9 bus: fix test-bus-kerne-bloom.c to match properly
Make sure we actually verify our match-rules are executed properly. Right
now all we test is the bloom-matches, which are non-reliable as they leave
through false-positives.
2015-06-10 20:22:40 +02:00
David Herrmann
a867b00226 bus: fix arg0path= two-way matching
DBus spec clearly defines arg0path= to be a two-way matching. That is,
either the matcher or the matchee can be a prefix of the other to match.
This is not possible to implement with bloom-filters. Instead, we'd have
to add a separate filter for each prefix. This is non-trivial, though.
Hence, just skip the match for now and match locally.
2015-06-10 20:22:40 +02:00
David Herrmann
7cd4dbe9ca bus: fix bloom_add_prefixes() to add all required data
Lets look at an example where we add arg0="/foo/bar/waldo" to a
bloom-filter. The following strings are added:
  "arg0:/foo/bar/waldo"
  "arg0-slash-prefix:/foo/bar"
  "arg0-slash-prefix:/foo"

Two problems arise:

1) If we match on "arg0path=/foo/bar/waldo", the dbus-spec explicitly
states that equal strings are also considered prefixes. However, in the
bloom-match, we can only provide a single match-filter. Therefore, we have
to add "arg0-slash-prefix:/foo/bar/waldo" there, but this never occured in
the bloom-mask of the message.
Hence, this patch makes sure bloom_add_prefixes() adds the full path as
prefix, too.

2) If we match on "arg0path=/foo/", the dbus-spec states that arg0path
does prefix-matching with the trailing slash _included_, unlike
path_namespace= matches, which does *not* include them. This is
inconsistent, but we have to support the specs. Therefore, we must add
prefixes with _and_ without trailing separators.
Hence, this patch makes sure bloom_add_prefixes() adds all prefixes with
the trailing slash included.

The final set of strings added therefore is:
  "arg0:/foo/bar/waldo"
  "arg0-slash-prefix:/foo/bar/waldo"
  "arg0-slash-prefix:/foo/bar/"
  "arg0-slash-prefix:/foo/bar"
  "arg0-slash-prefix:/foo/"
  "arg0-slash-prefix:/foo"
  "arg0-slash-prefix:/"
2015-06-10 20:22:40 +02:00
Nick Owens
37de250906 libsystemd-network: use domain validation instead of hostname validation for dhcp domain option
previously hostname_is_valid was used to validate domain names, which
would silently drop perfectly valid dns names that were longer than a
single dns label.
2015-06-10 11:15:46 -07:00
Nick Owens
df6cfeeff7 shared: add convenience function for validating dns names 2015-06-10 11:15:46 -07:00
Nick Owens
4ad7f2761d resolve: move dns routines into shared 2015-06-10 11:15:45 -07:00
Tom Gundersen
870395a4d8 sd-network: allow the state dir to be created after the monitor
We now listen for new subdirs of /run/systemd, and /run/systemd/netif in case
/run/systemd/netif/links does not exist.
2015-06-10 20:08:11 +02:00
Daniel Mack
a8467435a0 Merge pull request #147 from poettering/cmsg
util: introduce CMSG_FOREACH() macro and make use of it everywhere
2015-06-10 20:06:43 +02:00
Lennart Poettering
2a1288ff89 util: introduce CMSG_FOREACH() macro and make use of it everywhere
It's only marginally shorter then the usual for() loop, but certainly
more readable.
2015-06-10 19:29:47 +02:00
Zbigniew Jędrzejewski-Szmek
cd32b977fa Fix typo
Follow up for 7c918141ed.
2015-06-10 13:17:38 -04:00
Lennart Poettering
5410b2ed62 Merge pull request #142 from teg/sd-network-unref-NULL
sd-network: allow NULL in sd_network_monitor_unref
2015-06-10 16:59:43 +02:00
Tom Gundersen
0b3476266f sd-network: allow NULL in sd_network_monitor_unref
Match rest of codebase, we always allow unref'ing NULL.
2015-06-10 16:34:43 +02:00
Zbigniew Jędrzejewski-Szmek
b078b5a7ab Merge pull request #85 from keszybz/selinux-context 2015-06-10 10:20:50 -04:00
Zbigniew Jędrzejewski-Szmek
ad5ecc1138 test-copy: test copy_bytes() 2015-06-10 10:14:40 -04:00
Lennart Poettering
aa0d0ed6b8 sd-bus: remove ucred parameter from bus_message_from_header() since we don't use it anymore 2015-06-10 15:52:52 +02:00
Lennart Poettering
3c42e8b281 sd-bus: fix early exit when we lack all data in bus_get_owner_creds_dbus1() 2015-06-10 15:52:52 +02:00
Lennart Poettering
b56c4604fa bus-message: remove shadow warning with log_debug_bus_message() 2015-06-10 15:52:52 +02:00
Zbigniew Jędrzejewski-Szmek
2de56f7094 journald: simplify context handling
By using our homegrown function we can dispense with all the iffdefery.
2015-06-10 09:12:57 -04:00
Zbigniew Jędrzejewski-Szmek
c4e6556c46 sd-bus: store selinux context at connection time
This appears to be the right time to do it for SOCK_STREAM
unix sockets.

Also: condition bus_get_owner_creds_dbus1 was reversed. Split
it out to a separate variable for clarity and fix.

https://bugzilla.redhat.com/show_bug.cgi?id=1224211
2015-06-10 09:12:57 -04:00
Lennart Poettering
0748385cc4 Merge pull request #132 from ssahani/bond
networkd: bond  improve logging
2015-06-10 15:10:47 +02:00
Lennart Poettering
521446dbff Merge pull request #138 from utezduyar/use-async-convenience-function-on-setting-hostname
networkd: use async convenience call to set hostname
2015-06-10 15:09:03 +02:00
Lennart Poettering
251811f69b Merge pull request #133 from ssahani/net
networkd: vxlan improve logging
2015-06-10 15:08:48 +02:00
Zbigniew Jędrzejewski-Szmek
d868f2a3a1 sd-bus: do not use per-datagram auxiliary information
SELinux information cannot be retrieved this way, since we are
using stream unix sockets and SCM_SECURITY does not work for
them.

SCM_CREDENTIALS use dropped to be consistent. We also should
get this information at connection time.

https://bugzilla.redhat.com/show_bug.cgi?id=1224211
"SCM_SECURITY was only added for datagram sockets."
2015-06-10 09:03:57 -04:00
Umut Tezduyar Lindskog
9c34154a2b networkd: use async convenience call to set hostname 2015-06-10 13:15:39 +02:00
Torstein Husebø
348d8cc8d7 sd-bus: Correct typo 2015-06-10 13:08:31 +02:00
Lennart Poettering
9eb212568f Merge pull request #117 from utezduyar/feat/dump-sync-dbus-message-with-logging-on
sd-bus: dump sync messages in debug mode
2015-06-10 11:38:12 +02:00
Umut Tezduyar Lindskog
f9f97ca692 sd-bus: dump sync messages in debug mode 2015-06-10 09:22:32 +02:00
Susant Sahani
7676666c6a network: veth imprve logging
Replaces a lof of strerror() usage with log_netdev_error_errno()
2015-06-10 12:22:39 +05:30
Susant Sahani
f545680e3d networkd: vxlan improve logging
Replaces a lof of strerror() usage with log_netdev_error_errno()
2015-06-10 12:02:48 +05:30
Susant Sahani
a668086ec7 networkd: bond improve logging
Replaces a lof of strerror() usage with log_netdev_error_errno()
2015-06-10 11:57:28 +05:30
Charles Duffy
dcc7aacd67 cgtop: more sensible flushing behavior w/ non-TTY output
- Explicitly flush stdout before sleep between iterations
- Only clear user keystrokes when output is to TTY
- Add a newline between output batches when output is not to TTY
2015-06-09 19:39:16 -05:00
Charles Duffy
780fe62eca cgtop: allow user to force looping behavior even in non-TTY mode 2015-06-09 19:39:16 -05:00
Charles Duffy
a2c9f63136 cgtop: raw output option (disable conversion to human-readable units) 2015-06-09 19:39:16 -05:00
Lennart Poettering
cde40acc80 logind,sd-event: drop spurious new-lines 2015-06-10 01:28:58 +02:00
Lennart Poettering
ce30c8dcb4 tree-wide: whenever we fork off a foreign child process reset signal mask/handlers
Also, when the child is potentially long-running make sure to set a
death signal.

Also, ignore the result of the reset operations explicitly by casting
them to (void).
2015-06-10 01:28:58 +02:00
Lennart Poettering
0c2c2a3aeb signal-util: modernize and share more code 2015-06-10 01:28:58 +02:00
Thomas Hindoe Paaboel Andersen
60053efbba core: log oom during killing spree
but don't do anything else. We still want to kill as much as
possible.

Coverity CID#996306
2015-06-09 22:07:27 +02:00
Martin Pitt
36908eb87d path-util: Fix path_is_mount_point for parent mount points in symlink mode
When we have a structure like this:

  /bin -> /usr/bin
  /usr is a mount point

Then path_is_mount_point("/bin", AT_SYMLINK_FOLLOW) needs to look at the pair
/usr/bin and /usr, not at the pair / and /usr/bin, as the latter have different
mount IDs. But we only want to consider the base name, not any parent.

Thus we have to resolve the given path first to get the real parent when
allowing symlinks.

Bug: https://github.com/systemd/systemd/issues/61
2015-06-09 16:16:56 +02:00
Zbigniew Jędrzejewski-Szmek
236f83afa9 bus-creds: always set SD_BUS_CREDS_PID when we set pid in the mask
Also reorder the code a bit to be easier to parse.
2015-06-09 09:13:35 -04:00
Lennart Poettering
efbea94798 Revert "hwdb: actually search /run/udev/hwdb.d" 2015-06-09 11:26:06 +02:00
Lennart Poettering
4b955cb9bc Merge pull request #118 from haraldh/set_consume2
util:bind_remount_recursive() fix "use after free" - 2
2015-06-09 11:04:41 +02:00
Lennart Poettering
fd3102491f Merge pull request #77 from haraldh/cryptsetup
cryptsetup: craft a unique ID with the source device
2015-06-09 11:00:31 +02:00