chiark / gitweb /
7 years agoAdd function to open temp files in selinux mode
Zbigniew Jędrzejewski-Szmek [Mon, 14 Jul 2014 01:10:38 +0000 (21:10 -0400)]
Add function to open temp files in selinux mode

7 years agosysusers: preserve label of /etc/{passwd, group}
Colin Walters [Sun, 13 Jul 2014 20:35:33 +0000 (13:35 -0700)]
sysusers: preserve label of /etc/{passwd, group}

These files are specially labeled on SELinux systems, and we need to
preserve that label.

7 years agobuild-sys: Do not distribute generated emergency.service
Jon Severinsson [Fri, 11 Jul 2014 12:37:36 +0000 (14:37 +0200)]
build-sys: Do not distribute generated emergency.service

It is already in nodist_systemunit_DATA and if it is
shipped, it contains the hardcoded path to systemctl
which will cause it to fail to start when
rootprefix != prefix and rootbindir != bindir.

7 years agoRevert "build-sys: include PolicyKit files as part of distribution"
Mike Gilbert [Fri, 4 Jul 2014 18:43:14 +0000 (14:43 -0400)]
Revert "build-sys: include PolicyKit files as part of distribution"

This reverts commit 0c26bfc3d21fdb3963f1248c237e2f1a33b5566d.

src/core/ depends on values which
are specified at configure time, so we cannot ship the corresponding
policy file in the tarball.

Since we need to regenerate one policy file, we might as well generate
them all.

7 years agosd-event: don't require a signal event source to be enabled for the child event sourc...
Lennart Poettering [Fri, 11 Jul 2014 14:48:35 +0000 (16:48 +0200)]
sd-event: don't require a signal event source to be enabled for the child event source to work

7 years agogitignore: ignore .swp files
David Herrmann [Fri, 11 Jul 2014 14:35:37 +0000 (16:35 +0200)]
gitignore: ignore .swp files

vim places them in the source-tree while editing files. Ignore them.

7 years agosd-event: always call epoll_ctl() on mask-updates if edge-triggered
David Herrmann [Wed, 9 Jul 2014 22:47:23 +0000 (00:47 +0200)]
sd-event: always call epoll_ctl() on mask-updates if edge-triggered

A call to sd_event_source_set_io_events() skipps calling into the kernel
if the new event-mask matches the old one. This is safe for
level-triggered sources as the kernel moves them onto the ready-list
automatically if events change. However, edge-triggered sources might not
be on the ready-list even though events are present.

A call to sd_event_source_set_io_events() with EPOLLET set might thus be
used to just move the io-source onto the ready-list so the next poll
will return it again. This is very useful to avoid starvation in
priority-based event queues.

Imagine a read() loop on an edge-triggered fd. If we cannot read data fast
enough to drain the receive queue, we might decide to skip reading for now
and schedule it for later. On edge-triggered io-sources we have to make
sure it's put on the ready-list so the next dispatch-round will return it
again if it's still the highest priority task. We could make sd-event
handle edge-triggered sources directly and allow marking them ready again.
However, it's much simpler to let the kernel do that for now via

7 years agoshared: fix coding-style for ring-buffer implementation
David Herrmann [Wed, 9 Jul 2014 18:20:46 +0000 (20:20 +0200)]
shared: fix coding-style for ring-buffer implementation

We use "typedef struct Ring Ring" with camel-case for internal objects.
So rename "struct ring" to "Ring".

7 years agoshared: add MIN3 macro
David Herrmann [Mon, 30 Jun 2014 13:43:40 +0000 (15:43 +0200)]
shared: add MIN3 macro

This is like MIN but evaluates 3 arguments. We already have MAX3, so add
the equivalent for MIN.

7 years agoFix build without any compression enabled
Zbigniew Jędrzejewski-Szmek [Fri, 11 Jul 2014 14:42:06 +0000 (10:42 -0400)]
Fix build without any compression enabled

7 years agoendian: explicitly include endian.h wherever we want to use __BYTE_ORDER
Lennart Poettering [Fri, 11 Jul 2014 14:13:13 +0000 (16:13 +0200)]
endian: explicitly include endian.h wherever we want to use __BYTE_ORDER

7 years agoalways check for __BYTE_ORDER == __BIG_ENDIAN when checking for endianess
Lennart Poettering [Fri, 11 Jul 2014 13:56:16 +0000 (15:56 +0200)]
always check for __BYTE_ORDER == __BIG_ENDIAN when checking for endianess

Let's always stick to glibc's way to determine byte order, and not mix
autoconf-specific checks with gcc checks.

7 years agohostnamed: introduce new location machin-info field, too
Lennart Poettering [Fri, 11 Jul 2014 13:50:32 +0000 (15:50 +0200)]
hostnamed: introduce new location machin-info field, too

7 years agohostnamed: drop nss-myhostname check
Lennart Poettering [Fri, 11 Jul 2014 13:38:17 +0000 (15:38 +0200)]
hostnamed: drop nss-myhostname check

The check only cares about whether the module is installed, not enabled.
But installation we should know anyway, after all we ship the module
with systemd these days...

7 years agohostnamed: make use of in_charset() to verify charset
Lennart Poettering [Fri, 11 Jul 2014 13:37:11 +0000 (15:37 +0200)]
hostnamed: make use of in_charset() to verify charset

7 years agonss-myhostname: simplify array building a bit
Lennart Poettering [Fri, 11 Jul 2014 13:34:18 +0000 (15:34 +0200)]
nss-myhostname: simplify array building a bit

7 years agohostnamed: minor modernization
Lennart Poettering [Fri, 11 Jul 2014 13:31:49 +0000 (15:31 +0200)]
hostnamed: minor modernization

7 years agojournald: turn ForwardToSyslog= off by default
Lennart Poettering [Fri, 11 Jul 2014 11:30:16 +0000 (13:30 +0200)]
journald: turn ForwardToSyslog= off by default

After all, rsyslog and friends nowadays read their data directly from
the journal, hence the forwarding is unnecessary in most cases.

7 years agoutil: fix has cc check and add test
Zbigniew Jędrzejewski-Szmek [Fri, 11 Jul 2014 13:21:15 +0000 (09:21 -0400)]
util: fix has cc check and add test

7 years agoshell-completion: add hostnamectl set-deployment
Zbigniew Jędrzejewski-Szmek [Fri, 11 Jul 2014 13:08:47 +0000 (09:08 -0400)]
shell-completion: add hostnamectl set-deployment

7 years agoAdd DEPLOYMENT to hostnamectl
Jóhann B. Guðmundsson [Tue, 8 Jul 2014 21:26:05 +0000 (21:26 +0000)]
Add DEPLOYMENT to hostnamectl

[zj: remove the check against a fixed list of environments.]

7 years agoshell-completion,man: beef up chassis completions and description
Zbigniew Jędrzejewski-Szmek [Fri, 11 Jul 2014 12:25:20 +0000 (08:25 -0400)]
shell-completion,man: beef up chassis completions and description

Parameters to hostnamectl command are not optional and should not be marked
as such in the man page.

7 years agoman: document x-systemd.device-timeout for crypttab
Zbigniew Jędrzejewski-Szmek [Fri, 11 Jul 2014 02:34:43 +0000 (22:34 -0400)]
man: document x-systemd.device-timeout for crypttab

7 years agoman: proper link for dmesg
Zbigniew Jędrzejewski-Szmek [Fri, 11 Jul 2014 02:18:32 +0000 (22:18 -0400)]
man: proper link for dmesg

7 years agosysusers: allow overrides in /etc and /run
Zbigniew Jędrzejewski-Szmek [Thu, 10 Jul 2014 12:50:32 +0000 (08:50 -0400)]
sysusers: allow overrides in /etc and /run

An administrator might want to block a certain sysusers config file from
being executed, e.g. to block the creation of a certain user.

Only a relatively short description is added in the man page, since
overrides should be relatively rare.

7 years agonss-mymachines: add new NSS module for automatically resolving addresses of all local...
Lennart Poettering [Fri, 11 Jul 2014 01:15:21 +0000 (03:15 +0200)]
nss-mymachines: add new NSS module for automatically resolving addresses of all local containers

7 years agobuild-sys: export sd_path APIs
Lennart Poettering [Fri, 11 Jul 2014 01:13:24 +0000 (03:13 +0200)]
build-sys: export sd_path APIs

7 years agonss-myhostname: move NSS boilerplate to nss-util.h
Lennart Poettering [Thu, 10 Jul 2014 21:33:55 +0000 (23:33 +0200)]
nss-myhostname: move NSS boilerplate to nss-util.h

7 years agomachinectl: show network interface name for containers
Lennart Poettering [Thu, 10 Jul 2014 21:12:32 +0000 (23:12 +0200)]
machinectl: show network interface name for containers

Also, append the if indexes as scope field to the addresses we show.
That way they may be used for connecting to the containers directly.

7 years agonspawn: register external network interface with machined
Lennart Poettering [Thu, 10 Jul 2014 20:48:30 +0000 (22:48 +0200)]
nspawn: register external network interface with machined

7 years agomachined: allow registering host-side network interfaces for communication with conta...
Lennart Poettering [Thu, 10 Jul 2014 20:47:55 +0000 (22:47 +0200)]
machined: allow registering host-side network interfaces for communication with containers

7 years agonetworkd: always prefer dhcp routes over ipv4ll routes
Lennart Poettering [Thu, 10 Jul 2014 19:32:44 +0000 (21:32 +0200)]
networkd: always prefer dhcp routes over ipv4ll routes

7 years agomachined: when querying addresses of a container, use same code as nss-myhostname...
Lennart Poettering [Thu, 10 Jul 2014 19:27:14 +0000 (21:27 +0200)]
machined: when querying addresses of a container, use same code as nss-myhostname uses

7 years agolibsystemd: make use of our common sockaddr_union everywhere
Lennart Poettering [Thu, 10 Jul 2014 19:16:40 +0000 (21:16 +0200)]
libsystemd: make use of our common sockaddr_union everywhere

7 years agoshared: split out in_addr related calls from socket-util.[ch] into its private in...
Lennart Poettering [Thu, 10 Jul 2014 19:15:26 +0000 (21:15 +0200)]
shared: split out in_addr related calls from socket-util.[ch] into its private in-addr-util.[ch]

These are enough calls for a new file, and they are sufficiently
different from the sockaddr-related calls, hence let's split this out.

7 years agonss-myhostname: move local address listing logic into shared, so that we can make...
Lennart Poettering [Thu, 10 Jul 2014 19:01:25 +0000 (21:01 +0200)]
nss-myhostname: move local address listing logic into shared, so that we can make use of it from machined

7 years agonss-myhostname: only export the NSS entry point symbols, nothing else
Lennart Poettering [Thu, 10 Jul 2014 18:38:07 +0000 (20:38 +0200)]
nss-myhostname: only export the NSS entry point symbols, nothing else

7 years agomachined: various modernizations when enumerating container addresses
Lennart Poettering [Thu, 10 Jul 2014 18:21:20 +0000 (20:21 +0200)]
machined: various modernizations when enumerating container addresses

7 years agonss-myhostname: following the usual naming scheme for .c/.h files
Lennart Poettering [Thu, 10 Jul 2014 18:12:07 +0000 (20:12 +0200)]
nss-myhostname: following the usual naming scheme for .c/.h files

7 years agonss-myhostname: various modernizations
Lennart Poettering [Thu, 10 Jul 2014 17:55:53 +0000 (19:55 +0200)]
nss-myhostname: various modernizations

7 years agoresolved: properly free network monitor
Lennart Poettering [Thu, 10 Jul 2014 16:25:51 +0000 (18:25 +0200)]
resolved: properly free network monitor

7 years agoevent: pull in sd-event.h from event-util.h
Lennart Poettering [Thu, 10 Jul 2014 16:25:08 +0000 (18:25 +0200)]
event: pull in sd-event.h from event-util.h

7 years agoupdate TODO
Lennart Poettering [Thu, 10 Jul 2014 16:24:55 +0000 (18:24 +0200)]
update TODO

7 years agosysusers: don't allow control characters in gecos fields
Lennart Poettering [Wed, 9 Jul 2014 17:21:42 +0000 (19:21 +0200)]
sysusers: don't allow control characters in gecos fields

7 years agosysusers: don't allow user names longer than UT_NAMESIZE
Lennart Poettering [Wed, 9 Jul 2014 17:20:58 +0000 (19:20 +0200)]
sysusers: don't allow user names longer than UT_NAMESIZE

As pointed out by Miloslav Trmač it might be a good idea to make sure
that usernames stay with in the utmp-defined limits.

7 years agoupdate TODO
Lennart Poettering [Wed, 9 Jul 2014 17:20:48 +0000 (19:20 +0200)]
update TODO

7 years agounits: make ExecStopPost action part of ExecStart
Michal Sekletar [Tue, 8 Jul 2014 15:42:23 +0000 (17:42 +0200)]
units: make ExecStopPost action part of ExecStart

Currently after exiting rescue shell we isolate default target. User
might want to isolate to some other target than default one. However
issuing systemctl isolate command to desired target would bring system
to default target as a consequence of running ExecStopPost action.

Having common ancestor for rescue shell and possible followup systemctl
default command should fix this. If user exits rescue shell we will
proceed with isolating default target, otherwise, on manual isolate,
parent shell process is terminated and we don't isolate default target,
but target chosen by user.

Suggested-by: Michal Schmidt <>
7 years agotimedated: manage systemd-timesyncd directly instead of lists of alternatives
Kay Sievers [Wed, 9 Jul 2014 12:29:20 +0000 (14:29 +0200)]
timedated: manage systemd-timesyncd directly instead of lists of alternatives

Alternative NTP implementations should add a:
to take over the built-in NTP functionality of systemd.

7 years agohostnamed: update documentation with new "watch" chassis type
Tomasz Torcz [Wed, 9 Jul 2014 11:37:50 +0000 (13:37 +0200)]
hostnamed: update documentation with new "watch" chassis type

7 years agohostnamed: add a new chassis type for watches
Lennart Poettering [Wed, 9 Jul 2014 11:20:05 +0000 (13:20 +0200)]
hostnamed: add a new chassis type for watches

7 years agojournal/compress: improve xz compression performance
Jon Severinsson [Tue, 8 Jul 2014 16:29:46 +0000 (18:29 +0200)]
journal/compress: improve xz compression performance

The new lzma2 compression options at the top of compress_blob_xz are
equivalent to using preset "0", exept for using a 1 MiB dictionary
(the same as preset "1"). This makes the memory usage at most 7.5 MiB
in the compressor, and 1 MiB in the decompressor, instead of the
previous 92 MiB in the compressor and 8 MiB in the decompressor.

According to test-compress-benchmark this commit makes XZ compression
20 times faster, with no increase in compressed data size.
Using more realistic test data (an ELF binary rather than repeating
ASCII letters 'a' through 'z' in order) it only provides a factor 10
speedup, and at a cost if a 10% increase in compressed data size.
But that is still a worthwhile trade-off.

According to test-compress-benchmark XZ compression is still 25 times
slower than LZ4, but the compressed data is one eighth the size.
Using more realistic test data XZ compression is only 18 times slower
than LZ4, and the compressed data is only one quarter the size.

$ ./test-compress-benchmark
XZ: compressed & decompressed 2535300963 bytes in 42.30s (57.15MiB/s), mean compresion 99.95%, skipped 3570 bytes
LZ4: compressed & decompressed 2535303543 bytes in 1.60s (1510.60MiB/s), mean compresion 99.60%, skipped 990 bytes

7 years agofix #ifdef
Ronny Chevalier [Tue, 8 Jul 2014 07:22:25 +0000 (09:22 +0200)]
fix #ifdef

7 years agoupdate .gitignore
Ronny Chevalier [Mon, 7 Jul 2014 08:04:33 +0000 (10:04 +0200)]
update .gitignore

7 years agoescape: move to rootbindir
Michael Biebl [Tue, 8 Jul 2014 19:06:07 +0000 (21:06 +0200)]
escape: move to rootbindir

The systemd-escape utility might be used during early boot (e.g. when
being triggered from udev rules), so move it to rootbindir to support
systems with a split /usr setup.

7 years agoaccelerometer: Don't wait for new data from the sensor
Bastien Nocera [Tue, 8 Jul 2014 16:29:06 +0000 (18:29 +0200)]
accelerometer: Don't wait for new data from the sensor

Instead of waiting for new data from the sensor, which might be
a long time coming, depending on the sensor device, ask the kernel
for the last state for that particular input device.

7 years agoload-fragment: ConditionFirstBoot wants a bool string, not a path
Michal Schmidt [Tue, 8 Jul 2014 15:17:14 +0000 (17:17 +0200)]
load-fragment: ConditionFirstBoot wants a bool string, not a path

7 years agosystemctl: fix visual alignment for lines prefixed with color dots
Michal Schmidt [Tue, 8 Jul 2014 13:17:36 +0000 (15:17 +0200)]
systemctl: fix visual alignment for lines prefixed with color dots

7 years agologind: allow switching to unused VTs via SwitchTo()
David Herrmann [Tue, 8 Jul 2014 10:56:55 +0000 (12:56 +0200)]
logind: allow switching to unused VTs via SwitchTo()

If compositors use the new SwitchTo() logic to map F1-F12, we should allow
them to switch to unregistered VTs, too. Otherwise, the auto-spawn logic
of gettys won't trigger.

Reported-by: Jasper St. Pierre <>
Signed-off-by: David Herrmann <>
7 years agoman: add a mapping for external manpages
Zbigniew Jędrzejewski-Szmek [Mon, 7 Jul 2014 22:25:54 +0000 (18:25 -0400)]
man: add a mapping for external manpages

It is annoying when we have dead links on fd.o.

Add project='man-pages|die-net|archlinux' to <citerefentry>-ies.

In generated html, add external links to,,

By default, pages in sections 2 and 4 go to man7, since Michael
Kerrisk is the autorative source on kernel related stuff.

The rest of links goes to, because they have the

Except for the pacman stuff, since it seems to be only available from

Poor gummiboot gets no link, because gummitboot(8) ain't to be found
on the net. According to common wisdom, that would mean that it does
not exist. But I have seen Kay using it, so I know it does, and
deserves to be found. Can somebody be nice and put it up somewhere?

7 years agoFix typo
Zbigniew Jędrzejewski-Szmek [Mon, 7 Jul 2014 22:30:41 +0000 (18:30 -0400)]
Fix typo

7 years agofstab-generator: fix trivial leak
Zbigniew Jędrzejewski-Szmek [Mon, 7 Jul 2014 22:36:03 +0000 (18:36 -0400)]
fstab-generator: fix trivial leak

7 years agoREADME: add liblz4
Zbigniew Jędrzejewski-Szmek [Mon, 7 Jul 2014 22:29:19 +0000 (18:29 -0400)]
README: add liblz4

7 years agojournal/compress: fix calls to decompress_blob
Zbigniew Jędrzejewski-Szmek [Mon, 7 Jul 2014 22:31:10 +0000 (18:31 -0400)]
journal/compress: fix calls to decompress_blob

7 years agoresolved: make use of union in_addr_union in resolved, too
Lennart Poettering [Mon, 7 Jul 2014 21:11:48 +0000 (23:11 +0200)]
resolved: make use of union in_addr_union in resolved, too

7 years agonetworkd: simplify signal handling of SIGTERM/SIGINT
Lennart Poettering [Mon, 7 Jul 2014 21:11:03 +0000 (23:11 +0200)]
networkd: simplify signal handling of SIGTERM/SIGINT

sd-event makes handling SIGTERM/SIGINT a lot easier than it used to,
let's make use of this

7 years agoresolved: make sure SIGTER/SIGINT actually can be caught and processed
Lennart Poettering [Mon, 7 Jul 2014 21:09:02 +0000 (23:09 +0200)]
resolved: make sure SIGTER/SIGINT actually can be caught and processed

7 years agoresolved: let config_parse() open the configuration file for us
Lennart Poettering [Mon, 7 Jul 2014 21:03:17 +0000 (23:03 +0200)]
resolved: let config_parse() open the configuration file for us

7 years agoshared: fix format string for usec_t type
Lennart Poettering [Mon, 7 Jul 2014 20:49:59 +0000 (22:49 +0200)]
shared: fix format string for usec_t type

7 years agoman: document systemd-escape(1)
Lennart Poettering [Mon, 7 Jul 2014 20:48:25 +0000 (22:48 +0200)]
man: document systemd-escape(1)

7 years agoescape: beef up new systemd-escape tool
Lennart Poettering [Mon, 7 Jul 2014 20:23:00 +0000 (22:23 +0200)]
escape: beef up new systemd-escape tool

Add various options for making it easy unescape, or mangle, or format as
template instance or append a suffix.

7 years agoadd new systemd-escape tool
Michael Biebl [Tue, 3 Jun 2014 23:57:11 +0000 (01:57 +0200)]
add new systemd-escape tool

7 years agoupdate TODO
Lennart Poettering [Mon, 7 Jul 2014 19:20:29 +0000 (21:20 +0200)]
update TODO

7 years agodropin: add format attribute and fix a wrong caller
Thomas Hindoe Paaboel Andersen [Mon, 7 Jul 2014 19:40:00 +0000 (21:40 +0200)]
dropin: add format attribute and fix a wrong caller

7 years agofstab-generator: add comma when removed option is in the middle
Zbigniew Jędrzejewski-Szmek [Mon, 7 Jul 2014 20:10:38 +0000 (16:10 -0400)]
fstab-generator: add comma when removed option is in the middle

xxx,x-systemd.default-timeout=y,zzz was filtered to xxxzzz,
but should be xxx,zzz, of course.

7 years agonetworkd TODO: add more bonding options
Susant Sahani [Fri, 4 Jul 2014 16:19:08 +0000 (21:49 +0530)]
networkd TODO: add more bonding options

Add more bonding option in TODO section

7 years agonetworkd todo : remove tun/tap
Susant Sahani [Fri, 4 Jul 2014 16:17:17 +0000 (21:47 +0530)]
networkd todo : remove tun/tap

Remove tun/tap from todo

7 years agonetworkd: add support for mode
Susant Sahani [Fri, 4 Jul 2014 17:05:02 +0000 (22:35 +0530)]
networkd: add support for mode

This patch adds supports networkd to configure bond mode
during creation via persistent conf. Mode can be configured
with conf param 'Mode'. A new section Bond is added to the
conf to support bond mode.

These modes can be configured now.


Example conf file: test-bond.conf


Test case:
1. start networkd service:

12: bond1: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 1500 qdisc
noqueue state UNKNOWN mode DEFAULT group default
link/ether 22:89:6c:47:23:d2 brd ff:ff:ff:ff:ff:ff

2. find bond mode:

cat /proc/net/bonding/bond1
    Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)
    Bonding Mode: load balancing (xor)
    Transmit Hash Policy: layer2 (0)
    MII Status: up
    MII Polling Interval (ms): 0
    Up Delay (ms): 0
    Down Delay (ms): 0

       1. Added file networkd-bond.c
       2. Bond mode enum BondMode
       3. conf section [Bond]

[tomegun: whitespace]

7 years agonetworkd veth: Make kind assert
Susant Sahani [Mon, 7 Jul 2014 16:37:39 +0000 (22:07 +0530)]
networkd veth: Make kind assert

It's more appropriate to make it's assert than -ENOTSUP

7 years agoupdate TODO
Lennart Poettering [Mon, 7 Jul 2014 19:07:23 +0000 (21:07 +0200)]
update TODO

7 years agofirstboot: get rid of firstboot generator again, introduce ConditionFirstBoot= instead
Lennart Poettering [Mon, 7 Jul 2014 17:25:31 +0000 (19:25 +0200)]
firstboot: get rid of firstboot generator again, introduce ConditionFirstBoot= instead

As Zbigniew pointed out a new ConditionFirstBoot= appears like the nicer
way to hook in systemd-firstboot.service on first boots (those with /etc
unpopulated), so let's do this, and get rid of the generator again.

7 years agofirstboot: follow lock protocol when changing /etc/shadow
Lennart Poettering [Mon, 7 Jul 2014 16:57:09 +0000 (18:57 +0200)]
firstboot: follow lock protocol when changing /etc/shadow

7 years agoman: document systemd-firstboot(1)
Lennart Poettering [Mon, 7 Jul 2014 16:45:53 +0000 (18:45 +0200)]
man: document systemd-firstboot(1)

7 years agoman: drop references to the --priviliged command line option which has been removed...
Lennart Poettering [Mon, 7 Jul 2014 16:45:07 +0000 (18:45 +0200)]
man: drop references to the --priviliged command line option which has been removed a while back

7 years agobase-filesystem.c: terminate string array elements with \0
Harald Hoyer [Mon, 7 Jul 2014 15:45:53 +0000 (17:45 +0200)]
base-filesystem.c: terminate string array elements with \0

NULSTR_FOREACH() looks for a terminating zero and the element also needs

7 years agoservice: flush status text and errno values each time a service is started
Lennart Poettering [Mon, 7 Jul 2014 15:33:46 +0000 (17:33 +0200)]
service: flush status text and errno values each time a service is started

We shouldn't show status texts from previous service starts

7 years agosystemctl: show StatusErrno value in "systemctl status"
Lennart Poettering [Mon, 7 Jul 2014 15:33:26 +0000 (17:33 +0200)]
systemctl: show StatusErrno value in "systemctl status"

7 years agoservice: don't accept negative ERRNO= notification messages
Lennart Poettering [Mon, 7 Jul 2014 15:32:44 +0000 (17:32 +0200)]
service: don't accept negative ERRNO= notification messages

7 years agoservice: minor modernization
Lennart Poettering [Mon, 7 Jul 2014 15:03:34 +0000 (17:03 +0200)]
service: minor modernization

7 years agocore: Added support for ERRNO NOTIFY_SOCKET message parsing, and added StatusErrno...
Miguel Angel Ajo [Mon, 7 Jul 2014 12:20:36 +0000 (14:20 +0200)]
core: Added support for ERRNO NOTIFY_SOCKET message parsing, and added StatusErrno dbus property along StatusText to allow notification of numeric status condition while degraded service operation or any other special situation.

7 years agofirstboot: change /etc/shadow access mode to 000
Lennart Poettering [Mon, 7 Jul 2014 14:54:09 +0000 (16:54 +0200)]
firstboot: change /etc/shadow access mode to 000

It appears to be customary to remove all access bits from /etc/shadow
including those for the root owner), hence let's do the same.

7 years agodhcp-network: make clear that we are ANDing Fragment offset field with mask
Michal Sekletar [Mon, 7 Jul 2014 13:27:24 +0000 (15:27 +0200)]
dhcp-network: make clear that we are ANDing Fragment offset field with mask

Reading BPF assembly written as C macros is inherently difficult. Don't
make it harder than necessary and provide clearer explanation in the

7 years agodhcp-network: ignore IP packets with More Fragments (MF) flag set
Michal Sekletar [Mon, 7 Jul 2014 12:15:41 +0000 (14:15 +0200)]
dhcp-network: ignore IP packets with More Fragments (MF) flag set

We already ignore IP fragments, because we expect that Fragment
offset (FO) field is not set. However first fragment in a fragmented IP
flow will have all zeroes in FO field. We should ignore such packet as
well, thus we need to look at MF flag in the IP header. Checking MF flag
will filter out all except last packet in fragmented flows. Last one
will be ruled out by next check for value of FO.

7 years agofirstboot: add new component to query basic system settings on first boot, or when...
Lennart Poettering [Mon, 7 Jul 2014 13:05:37 +0000 (15:05 +0200)]
firstboot: add new component to query basic system settings on first boot, or when creating OS images offline

A new tool "systemd-firstboot" can be used either interactively on boot,
where it will query basic locale, timezone, hostname, root password
information and set it. Or it can be used non-interactively from the
command line when prepareing disk images for booting. When used
non-inertactively the tool can either copy settings from the host, or
take settings on the command line.

$ systemd-firstboot --root=/path/to/my/new/root --copy-locale --copy-root-password --hostname=waldi

The tool will be automatically invoked (interactively) now on first boot
if /etc is found unpopulated.

This also creates the infrastructure for generators to be notified via
an environment variable whether they are running on the first boot, or

7 years agoarchitecture: add string table entries for mips-le archs which were missing
Lennart Poettering [Mon, 7 Jul 2014 12:59:06 +0000 (14:59 +0200)]
architecture: add string table entries for mips-le archs which were missing

7 years agoman: chroot jails are no longer detected by ConditionVirtualization=
Lennart Poettering [Mon, 7 Jul 2014 12:58:36 +0000 (14:58 +0200)]
man: chroot jails are no longer detected by ConditionVirtualization=

7 years agoman: add missing archs to ConditionArchitecture= description
Lennart Poettering [Mon, 7 Jul 2014 12:58:13 +0000 (14:58 +0200)]
man: add missing archs to ConditionArchitecture= description

7 years agofileio: simplify write_env_file()
Lennart Poettering [Mon, 7 Jul 2014 10:05:41 +0000 (12:05 +0200)]
fileio: simplify write_env_file()

7 years agoutil: don't consider tabs special in string_has_cc() anymore
Lennart Poettering [Mon, 7 Jul 2014 10:04:55 +0000 (12:04 +0200)]
util: don't consider tabs special in string_has_cc() anymore

Instead, take a list of exceptions to our usual CC check

7 years agoshared: make timezone and locale enumeration and validation generic
Lennart Poettering [Mon, 7 Jul 2014 09:49:48 +0000 (11:49 +0200)]
shared: make timezone and locale enumeration and validation generic

This way we can reuse it other code thatn just localectl/localed +

7 years agoupdate TODO
Lennart Poettering [Mon, 7 Jul 2014 09:48:06 +0000 (11:48 +0200)]
update TODO