chiark / gitweb /
7 years agonspawn: do not invoke RegisterMachine on machined from inside the new PID namespace
Lennart Poettering [Thu, 9 Jan 2014 00:42:57 +0000 (08:42 +0800)]
nspawn: do not invoke RegisterMachine on machined from inside the new PID namespace

On kdbus user credentials are not translated across PID namespaces, but
simply invalidated if sender and receiver namespaces don't match. This
makes it impossible to properly authenticate requests from different PID
namespaces (which is probably a good thing). Hence, register the machine
in the parent and not the client and properly synchronize this.

7 years agobus: make the bus driver support the driver interface under both / and /org/freedeskt...
Lennart Poettering [Thu, 9 Jan 2014 00:19:22 +0000 (08:19 +0800)]
bus: make the bus driver support the driver interface under both / and /org/freedesktop/DBus

Some clients apparently use the "/" path instead of
"/org/freedesktop/DBus". dbus-daemon didn't care, so we need to support

7 years agologind: wait for the user service to finish startup before completing login attempt
Lennart Poettering [Wed, 8 Jan 2014 22:45:38 +0000 (06:45 +0800)]
logind: wait for the user service to finish startup before completing login attempt

7 years agodriverd: fix use-after-free error when maintaining match lists
Lennart Poettering [Wed, 8 Jan 2014 15:06:48 +0000 (23:06 +0800)]
driverd: fix use-after-free error when maintaining match lists

7 years agoRevert "bus-driverd: do not track identical matches"
Kay Sievers [Wed, 8 Jan 2014 15:07:28 +0000 (23:07 +0800)]
Revert "bus-driverd: do not track identical matches"

This reverts commit 234e28aa1cd37dee597c719ac5ca004c6215d28c.

7 years agobus: export bus address also when compiled without kdbus
Mantas Mikulėnas [Wed, 8 Jan 2014 12:08:34 +0000 (14:08 +0200)]
bus: export bus address also when compiled without kdbus

It was removed from user@.service, so it should be added here.

7 years agobus: use existing macros from def.h
Mantas Mikulėnas [Wed, 8 Jan 2014 12:08:33 +0000 (14:08 +0200)]
bus: use existing macros from def.h

7 years agobus-driverd: do not track identical matches
Kay Sievers [Wed, 8 Jan 2014 13:32:37 +0000 (21:32 +0800)]
bus-driverd: do not track identical matches

Identical matches are only one time in the hash map but multiple
times in the list; when removing, the hash will be empty but the
list still has entries.

Not adding dupicates to the list should keep us in sync and prevent
hitting the assert.

7 years agobus-driverd: properly reply to UpdateActivationEnvironment call
Kay Sievers [Wed, 8 Jan 2014 10:20:02 +0000 (18:20 +0800)]
bus-driverd: properly reply to UpdateActivationEnvironment call

7 years agodbus1-generator: install user version
Kay Sievers [Wed, 8 Jan 2014 10:10:39 +0000 (18:10 +0800)]
dbus1-generator: install user version

7 years agopam_systemd: export DBUS_SESSION_BUS_ADDRESS
Kay Sievers [Mon, 6 Jan 2014 04:00:16 +0000 (08:00 +0400)]
pam_systemd: export DBUS_SESSION_BUS_ADDRESS

7 years agobus: allow omitting quotes for values in match strings
Lennart Poettering [Wed, 8 Jan 2014 10:09:25 +0000 (18:09 +0800)]
bus: allow omitting quotes for values in match strings

dbus-daemon allows this, the dbus specification doesn't explicitly say
anything about it, so let's follow dbus-daemon on this.

7 years agoupdate TODO
Lennart Poettering [Wed, 8 Jan 2014 10:09:05 +0000 (18:09 +0800)]
update TODO

7 years agobus-driverd: implement UpdateActivationEnvironment method
Kay Sievers [Wed, 8 Jan 2014 09:09:31 +0000 (17:09 +0800)]
bus-driverd: implement UpdateActivationEnvironment method

7 years agoman: document label escaping functions
Zbigniew Jędrzejewski-Szmek [Wed, 8 Jan 2014 04:05:17 +0000 (23:05 -0500)]
man: document label escaping functions

7 years agoman: fix bogus description of sd_bus_creds_has_*_cap
Zbigniew Jędrzejewski-Szmek [Wed, 8 Jan 2014 03:27:43 +0000 (22:27 -0500)]
man: fix bogus description of sd_bus_creds_has_*_cap

7 years agodbus1-generator: fix copy-pasto
Zbigniew Jędrzejewski-Szmek [Wed, 8 Jan 2014 03:18:46 +0000 (22:18 -0500)]
dbus1-generator: fix copy-pasto

7 years agosleep.c: fix typo
Michele Curti [Tue, 7 Jan 2014 16:51:41 +0000 (17:51 +0100)]
sleep.c: fix typo

7 years agoman: document sd-bus error functions
Zbigniew Jędrzejewski-Szmek [Wed, 8 Jan 2014 02:46:36 +0000 (21:46 -0500)]
man: document sd-bus error functions

7 years agobus-driverd: support user mode
Kay Sievers [Tue, 7 Jan 2014 12:20:22 +0000 (20:20 +0800)]
bus-driverd: support user mode

7 years agobus-proxyd: support --user bus address
Kay Sievers [Mon, 6 Jan 2014 23:30:34 +0000 (07:30 +0800)]
bus-proxyd: support --user bus address

7 years agokeymap: Recognize different Toshiba Satellite capitalizations
Martin Pitt [Tue, 7 Jan 2014 08:40:01 +0000 (09:40 +0100)]
keymap: Recognize different Toshiba Satellite capitalizations

7 years agohwdb: fix match for Thinkpad X201 tablet
AppleBloom [Tue, 7 Jan 2014 01:51:47 +0000 (20:51 -0500)]
hwdb: fix match for Thinkpad X201 tablet

7 years agohwdb: remove duplicate entry for Samsung 700Z
Dmitry Pisklov [Tue, 7 Jan 2014 01:08:21 +0000 (20:08 -0500)]
hwdb: remove duplicate entry for Samsung 700Z

keyboardbrightnessup/down are not even real keys.

7 years agohwdb: add Samsung 700G
Dmitry Pisklov [Tue, 7 Jan 2014 01:06:59 +0000 (20:06 -0500)]
hwdb: add Samsung 700G

7 years agohwdb: change key mappings for Samsung 90X3A
Raudi [Tue, 7 Jan 2014 00:44:08 +0000 (19:44 -0500)]
hwdb: change key mappings for Samsung 90X3A

The Key codes didn't match with the described key. Also the key
identifier strings were missing. I hope I chose appropriate ones.

7 years agomount: don't creat links for mount units when runnin in user mode
Lennart Poettering [Mon, 6 Jan 2014 23:25:05 +0000 (07:25 +0800)]
mount: don't creat links for mount units when runnin in user mode

7 years agodbus1-generator: always pull proxy socket into
Kay Sievers [Mon, 6 Jan 2014 23:09:08 +0000 (07:09 +0800)]
dbus1-generator: always pull proxy socket into

dbus.socket does that for --system, we need to explicitly pull it
in for --user.

7 years agocore: do not add implicit dbus.socket dependency
Kay Sievers [Mon, 6 Jan 2014 22:37:23 +0000 (06:37 +0800)]
core: do not add implicit dbus.socket dependency

Sockets are ordered before anyway, and
is ordered before, and hence all bus services end up
being ordered after dbus.socket anyway. Since for kdbus clients
dbus.socket is obsolete, let's not add this dependency explicitly.

Also, it's hot in Australia and we are going for breakfast now.

7 years agobus-proxyd: --user -- add Accept=yes to socket
Kay Sievers [Mon, 6 Jan 2014 22:36:39 +0000 (06:36 +0800)]
bus-proxyd: --user -- add Accept=yes to socket

7 years agoupdate TODO
Lennart Poettering [Mon, 6 Jan 2014 22:34:39 +0000 (06:34 +0800)]
update TODO

7 years agocore: --user -- add an sort against it like --system does
Kay Sievers [Mon, 6 Jan 2014 03:52:17 +0000 (07:52 +0400)]
core: --user -- add an sort against it like --system does

7 years agocore: --user -- move generator directories from /tmp to $XDG_RUNTIME_DIR
Kay Sievers [Mon, 6 Jan 2014 03:50:26 +0000 (07:50 +0400)]
core: --user -- move generator directories from /tmp to $XDG_RUNTIME_DIR

7 years agobus-proxyd: fix socket path
Kay Sievers [Mon, 6 Jan 2014 17:33:58 +0000 (01:33 +0800)]
bus-proxyd: fix socket path

7 years agolibsystemd-dns: expose list of DNS servers
Tom Gundersen [Mon, 6 Jan 2014 11:17:34 +0000 (12:17 +0100)]
libsystemd-dns: expose list of DNS servers

My original patch only returned the first DNS server, but we might
want all of them.

7 years agolibsystemd-dhcp: expose received DNS server
Tom Gundersen [Sun, 5 Jan 2014 22:01:32 +0000 (23:01 +0100)]
libsystemd-dhcp: expose received DNS server

7 years agoconfigure: use POSIX conformant syntax for test
Dave Reisner [Sun, 5 Jan 2014 16:57:05 +0000 (11:57 -0500)]
configure: use POSIX conformant syntax for test

In shells like bash, == and = are equivalent in test contexts. In POSIX
compliant shells, == isn't a valid operator.

7 years agoFix format string mismatch introduced in ab9001a1
Michael Scherer [Sun, 5 Jan 2014 16:06:50 +0000 (17:06 +0100)]
Fix format string mismatch introduced in ab9001a1

src/libsystemd-bus/sd-bus.c: In function 'sd_bus_open_user':
src/libsystemd-bus/sd-bus.c:1104:25: warning: format '%s' expects argument of type 'char *', but argument 3 has type 'long unsigned int' [-Wformat=]
                         asprintf(&b->address, UNIX_USER_BUS_FMT, (unsigned long) getuid());

7 years agoRevert "bus: driverd: don't attempt to remove from empty list"
Kay Sievers [Sun, 5 Jan 2014 14:53:39 +0000 (18:53 +0400)]
Revert "bus: driverd: don't attempt to remove from empty list"

We need to find the real reason for the failure, this just
avoids the symptoms.

This reverts commit 215c7625dd510759290d45d6c46434e4338843ec.

7 years agojournal: Add missing byte order conversions
George McCollister [Tue, 31 Dec 2013 20:37:32 +0000 (14:37 -0600)]
journal: Add missing byte order conversions

Convert entry_array.items[0] to host byte order prior to passing it to

[zj: also use le64toh in journal-verify.c]

7 years agoshared/install: use char** convention for strvs
Zbigniew Jędrzejewski-Szmek [Fri, 27 Dec 2013 05:16:39 +0000 (00:16 -0500)]
shared/install: use char** convention for strvs

7 years agoRemove unused variables
Zbigniew Jędrzejewski-Szmek [Sun, 5 Jan 2014 05:32:43 +0000 (00:32 -0500)]
Remove unused variables

7 years agostrv: multiple cleanups
Simon Peeters [Sat, 4 Jan 2014 01:35:27 +0000 (02:35 +0100)]
strv: multiple cleanups

- turn strv_merge into strv_extend_strv.
   appending strv b to the end of strv a instead of creating a new strv
- strv_append: remove in favor of strv_extend and strv_push.
- strv_remove: write slightly more elegant
- strv_remove_prefix: remove unused function
- strv_overlap: use strv_contains
- strv_printf: STRV_FOREACH handles NULL correctly

7 years agoshared: util.c: unify split and split_quoted
Simon Peeters [Sat, 4 Jan 2014 01:35:25 +0000 (02:35 +0100)]
shared: util.c: unify split and split_quoted

7 years agoTODO: extend login capability note
David Herrmann [Sun, 5 Jan 2014 12:59:12 +0000 (13:59 +0100)]
TODO: extend login capability note

We cannot remove CAP_SYS_ADMIN, which basically makes removing all other
capabilities useless. Anyhow, still wouldn't hurt checking whether stuff
like CAP_KILL can be dropped from logind.

7 years agohwdb: update
Marcel Holtmann [Sun, 5 Jan 2014 08:44:34 +0000 (00:44 -0800)]
hwdb: update

7 years agobus: driverd: don't attempt to remove from empty list
Marc-Antoine Perennou [Sat, 28 Dec 2013 04:54:18 +0000 (13:54 +0900)]
bus: driverd: don't attempt to remove from empty list

7 years agobus: open user, not system, bus in bus_open_user_systemd()
Mantas Mikulėnas [Sat, 4 Jan 2014 23:57:11 +0000 (01:57 +0200)]
bus: open user, not system, bus in bus_open_user_systemd()

7 years agoutil.c: use read_one_line_file where possible
Simon Peeters [Sat, 4 Jan 2014 01:35:26 +0000 (02:35 +0100)]
util.c: use read_one_line_file where possible

7 years agoshared: procfs_file_alloca: handle pid==0
Simon Peeters [Sat, 4 Jan 2014 01:35:23 +0000 (02:35 +0100)]
shared: procfs_file_alloca: handle pid==0

when pid is set to 0 use /proc/self

7 years agoUpdate .mailmap file
Stefan Beller [Fri, 3 Jan 2014 19:33:21 +0000 (20:33 +0100)]
Update .mailmap file

This commit updates email addresses of people, who are already in the
.mailmap file, so I'd assume they have sorted out their viewpoint on
privacy within the .mailmap file.

The entries for this commit have been produced using:
        # Finding out duplicates by comparing email addresses:
        git shortlog -sne |awk '{ print $NF }' |sort |uniq -d

        # Finding out duplicates by comparing names:
        git shortlog -sne |awk '{ NF--; $1=""; print }' |sort |uniq -d

7 years agoswap: remove if/else with the same data path
Stefan Beller [Fri, 3 Jan 2014 19:33:20 +0000 (20:33 +0100)]
swap: remove if/else with the same data path

This was introduced in e1770af812 (2012-02-03, swap: replace failure
boolean by result enum).

This just removes unneeded lines of code, no functional change.

7 years agoman: document some more bus functions
Zbigniew Jędrzejewski-Szmek [Sun, 5 Jan 2014 00:28:52 +0000 (19:28 -0500)]
man: document some more bus functions

7 years agonetworkd: refuse to use .network files with missing Address/Gateway key
Tom Gundersen [Sat, 4 Jan 2014 20:13:47 +0000 (21:13 +0100)]
networkd: refuse to use .network files with missing Address/Gateway key

These keys are mandatory in [Address]/[Route] sections. Otherwise, we
hit an assert:

ens3: setting addresses
Assertion 'address->family == 2 || address->family == 10' failed at /build/amd64-generic/tmp/portage/sys-apps/systemd-9999-r1/work/systemd-9999/src/network/networkd-address.c:137, function address_configure(). Aborting.

Reported-by: Alex Polvi <>
At the same time make sure Route's Destination and Gateway uses the same address family.

7 years agoman: typo fix
Thomas Hindoe Paaboel Andersen [Sat, 4 Jan 2014 22:21:13 +0000 (23:21 +0100)]
man: typo fix

7 years agosd-event: add missing symbol, sd_event_source_set_io_fd
Dave Reisner [Sat, 4 Jan 2014 02:15:00 +0000 (21:15 -0500)]
sd-event: add missing symbol, sd_event_source_set_io_fd

This appears to have been omitted in 30caf8f3afd29da8 when the
the function was added.

7 years agoudev: net_id - handle virtio buses
Tom Gundersen [Sat, 4 Jan 2014 13:43:45 +0000 (14:43 +0100)]
udev: net_id - handle virtio buses

This was already supported in path_id, so should be uncontroversial.

7 years agoRevert "net-util: add support for Type=ethernet"
Tom Gundersen [Sat, 4 Jan 2014 03:22:06 +0000 (04:22 +0100)]
Revert "net-util: add support for Type=ethernet"

This reverts commit 4cd1214db6cf4b262e8ce6381bc710091b375c96.

This may still be fixed in the kernel, revert this for now until
we see how it all shakes out.

7 years agosystemctl: improve readability on failed commands
Thomas Hindoe Paaboel Andersen [Fri, 3 Jan 2014 22:50:59 +0000 (23:50 +0100)]
systemctl: improve readability on failed commands

Not long ago a failed command would print:
"Failed to start something.service: ..."
regardless of whether the command was to start/stop/restart/etc.

With e3e0314 this was improved to print the method used. E.g. for stopping:
"Failed to StopUnit something.service: ..."

This patch matches the method to a more human readable word. E.g:
"Failed to stop something.service: ..."

7 years agoman: document a batch of bus functions
Zbigniew Jędrzejewski-Szmek [Sat, 4 Jan 2014 05:08:50 +0000 (00:08 -0500)]
man: document a batch of bus functions

7 years agoman: networkd - document DHCP option
Tom Gundersen [Fri, 3 Jan 2014 20:07:01 +0000 (21:07 +0100)]
man: networkd - document DHCP option

7 years agonet-util: add support for Type=ethernet
Tom Gundersen [Fri, 3 Jan 2014 19:55:23 +0000 (20:55 +0100)]
net-util: add support for Type=ethernet

When DEVTYPE is not set for a nic, it means it is a wired/ethernet

7 years agonetworkd: link hash uses 64, not 32 bit keys
Tom Gundersen [Fri, 3 Jan 2014 17:27:26 +0000 (18:27 +0100)]
networkd: link hash uses 64, not 32 bit keys

7 years agonetworkd: print the ifindex of added links
Tom Gundersen [Fri, 3 Jan 2014 17:20:11 +0000 (18:20 +0100)]
networkd: print the ifindex of added links

This debug information may be useful when comapring to dropped rtnetlink messages.

7 years agonetworkd: improve logging
Tom Gundersen [Fri, 3 Jan 2014 15:38:18 +0000 (16:38 +0100)]
networkd: improve logging

This gives a bit better messages when a link is added twice.

7 years agonetworkd: improve link state change logging
Tom Gundersen [Fri, 3 Jan 2014 15:20:10 +0000 (16:20 +0100)]
networkd: improve link state change logging

7 years agonetworkd: add some debug info about notifications we ignore
Tom Gundersen [Fri, 3 Jan 2014 15:02:12 +0000 (16:02 +0100)]
networkd: add some debug info about notifications we ignore

7 years agobus: always create --user bus when kdbus is active
Kay Sievers [Fri, 3 Jan 2014 01:57:45 +0000 (02:57 +0100)]
bus: always create --user bus when kdbus is active

We set the variable in the unit file for --user, so this check is
always true.

7 years agonetworkd: link - explicitly set the link to be up if the call to IFF_UP succeeds
Tom Gundersen [Fri, 3 Jan 2014 01:07:56 +0000 (02:07 +0100)]
networkd: link - explicitly set the link to be up if the call to IFF_UP succeeds

No need to wait for the NEWLINK message to arrive.

7 years agonetworkd: fix memory leak in error path
Zbigniew Jędrzejewski-Szmek [Fri, 3 Jan 2014 00:49:49 +0000 (19:49 -0500)]
networkd: fix memory leak in error path

7 years agonetworkd: do not deference null pointer in cleanup
Zbigniew Jędrzejewski-Szmek [Fri, 3 Jan 2014 00:49:43 +0000 (19:49 -0500)]
networkd: do not deference null pointer in cleanup

7 years agocore: fix gcc unused variable warning
Zbigniew Jędrzejewski-Szmek [Fri, 3 Jan 2014 00:49:33 +0000 (19:49 -0500)]
core: fix gcc unused variable warning

7 years agobus: fix memleak in sd_bus_creds_new_from_pid
Zbigniew Jędrzejewski-Szmek [Wed, 1 Jan 2014 03:45:45 +0000 (22:45 -0500)]
bus: fix memleak in sd_bus_creds_new_from_pid

7 years agoIntroduce cleanup functions for cap_free
Zbigniew Jędrzejewski-Szmek [Wed, 1 Jan 2014 03:35:54 +0000 (22:35 -0500)]
Introduce cleanup functions for cap_free

Unfortunately a different cleanup function is necessary per type,
because cap_t** and char** are incompatible with void**.

7 years agobuild-sys: add --disable-dbus autoconf option
Zbigniew Jędrzejewski-Szmek [Wed, 1 Jan 2014 01:20:17 +0000 (20:20 -0500)]
build-sys: add --disable-dbus autoconf option

7 years agobuild-sys: make valgrind-tests target output nicer
Zbigniew Jędrzejewski-Szmek [Wed, 1 Jan 2014 01:19:58 +0000 (20:19 -0500)]
build-sys: make valgrind-tests target output nicer

7 years agortnl: fix memory corruptions after realloc
Zbigniew Jędrzejewski-Szmek [Tue, 31 Dec 2013 17:56:59 +0000 (12:56 -0500)]
rtnl: fix memory corruptions after realloc

struct sd_rtnl_message would keep two additional pointers into the hdr
field. Every time hdr was realloced, those pointers should be adjusted,
but weren't. It seems less error-prone to keep offsets instead.

7 years agobus: break reference cycle between bus and messages
Zbigniew Jędrzejewski-Szmek [Tue, 31 Dec 2013 04:13:38 +0000 (23:13 -0500)]
bus: break reference cycle between bus and messages

Because messages in the read and write queues hold a reference on the
bus, and the bus holds a reference on each of them, we would never
free the bus if the read or write queues were not empty. Explicitly
substract the number of messages in those queue from the bus reference
count when deciding whether to free or not.

A simple test which creates and unrefs simple objects is added.

7 years agoUse format patterns for usec_t, pid_t, nsec_t, usec_t
Zbigniew Jędrzejewski-Szmek [Mon, 30 Dec 2013 22:22:26 +0000 (17:22 -0500)]
Use format patterns for usec_t, pid_t, nsec_t, usec_t

It is nicer to predefine patterns using configure time check instead of
using casts everywhere.

Since we do not need to use any flags, include "%" in the format instead
of excluding it like PRI* macros.

7 years agoMove bus path definitions to def.h
Zbigniew Jędrzejewski-Szmek [Mon, 30 Dec 2013 21:12:46 +0000 (16:12 -0500)]
Move bus path definitions to def.h

7 years agocore/service: check if mainpid matches only if it is set
Zbigniew Jędrzejewski-Szmek [Mon, 30 Dec 2013 16:21:56 +0000 (11:21 -0500)]
core/service: check if mainpid matches only if it is set

7 years agocore/manager: print info about interesting signals
Zbigniew Jędrzejewski-Szmek [Sat, 28 Dec 2013 03:12:38 +0000 (22:12 -0500)]
core/manager: print info about interesting signals

Information about signals which are not routinely received by systemd
are printed at info level. This should make it easier to see what is
happening in the system.

7 years agocore/service: tweak messages on operation timeouts
Zbigniew Jędrzejewski-Szmek [Sat, 28 Dec 2013 01:03:27 +0000 (20:03 -0500)]
core/service: tweak messages on operation timeouts

7 years agolibsystemd-dhcp: don't assert on client_stop()
Tom Gundersen [Fri, 3 Jan 2014 00:25:18 +0000 (01:25 +0100)]
libsystemd-dhcp: don't assert on client_stop()

We need to be able to stop the dhcp client at any time, and the function appears to be written to handle this.

7 years agonetworkd: dhcp - avoid null pointer dereference
Tom Gundersen [Thu, 2 Jan 2014 23:55:35 +0000 (00:55 +0100)]
networkd: dhcp - avoid null pointer dereference

7 years agonetworkd: add more asserts and ignore all events when link has failed
Tom Gundersen [Thu, 2 Jan 2014 23:55:09 +0000 (00:55 +0100)]
networkd: add more asserts and ignore all events when link has failed

7 years agorules: drivers - do not reset RUN list
Kay Sievers [Fri, 3 Jan 2014 00:32:03 +0000 (01:32 +0100)]
rules: drivers - do not reset RUN list

7 years agonetworkd: only track state of links we are managing
Tom Gundersen [Thu, 2 Jan 2014 14:56:10 +0000 (15:56 +0100)]
networkd: only track state of links we are managing

If a network is not (yet) set for a link, we do not care about its state (as we
anyway don't know what to do with it).

7 years agonetworkd: improve logging
Tom Gundersen [Thu, 2 Jan 2014 14:30:46 +0000 (15:30 +0100)]
networkd: improve logging

Remove redundant messages, add some debugging ones and make wording more uniform.

7 years agonetworkd: fix NULL pointer deref
Kay Sievers [Thu, 2 Jan 2014 04:16:14 +0000 (05:16 +0100)]
networkd: fix NULL pointer deref

7 years agonetworkd: fix getting initial state
Tom Gundersen [Thu, 2 Jan 2014 00:43:05 +0000 (01:43 +0100)]
networkd: fix getting initial state

We were requesting the state and then ignoring it...

7 years agonetworkd: add DHCPv4 support
Tom Gundersen [Wed, 1 Jan 2014 14:16:34 +0000 (15:16 +0100)]
networkd: add DHCPv4 support

This adds basic DHCPv4 support. Link-sense is enabled unconditionally,
but the plan is to make that configurable.

I tested this in a VM with lots of NICs and over wifi in the various
coffee shops I found this Christmas, but more testing would definitely
be appreciated.

7 years agonetworkd: distinguish between static and dynamic addresses/routes
Tom Gundersen [Wed, 1 Jan 2014 14:16:10 +0000 (15:16 +0100)]
networkd: distinguish between static and dynamic addresses/routes

Static addresses/routes are associated with a network. Dynamic
addresses/routes are associtade with links (as the corresponding network
may be shared by several links).

7 years agonetwork: add support for dropping address
Tom Gundersen [Tue, 31 Dec 2013 16:31:50 +0000 (17:31 +0100)]
network: add support for dropping address

7 years agobuild-sys: make test output a bit nicer
Zbigniew Jędrzejewski-Szmek [Tue, 31 Dec 2013 17:51:46 +0000 (12:51 -0500)]
build-sys: make test output a bit nicer

7 years agodhcp: fix creation of req_opts array
Zbigniew Jędrzejewski-Szmek [Tue, 31 Dec 2013 16:57:38 +0000 (11:57 -0500)]
dhcp: fix creation of req_opts array

GREEDY_REALLOC needs to have two size variables: one for the
allocated size, and a second one for the used size. Using
the allocated size only lead to leaving some elements unitialized
and assigning some more than once.

7 years agobuild-sys: make test-dhcp-* statically linked
Zbigniew Jędrzejewski-Szmek [Tue, 31 Dec 2013 16:48:04 +0000 (11:48 -0500)]
build-sys: make test-dhcp-* statically linked

This makes them behave like everything else following
48d7417d3 'build-sys: link most internal libraries statically'.

7 years agosleep-config: fix double free
Zbigniew Jędrzejewski-Szmek [Tue, 31 Dec 2013 16:23:58 +0000 (11:23 -0500)]
sleep-config: fix double free

Before 34a3baa4d 'sleep-config: Dereference pointer before check for NULL'
oom conditions would not be detected properly. After that commit, a double
free was performed.

Rework the whole function to be easier to understand, and also replace
strv_split_nulstr with strv_new, since we know the strings anyway.

7 years agoboot-efi: Remove superfluous assignment
Stefan Beller [Mon, 30 Dec 2013 22:32:22 +0000 (23:32 +0100)]
boot-efi: Remove superfluous assignment

2 lines after the changed line we assign err to efi_get_variable(...)
unconditionally, so it makes no sense to initialize it to some value.

7 years agosleep-config: Dereference pointer before check for NULL
Stefan Beller [Mon, 30 Dec 2013 16:43:52 +0000 (17:43 +0100)]
sleep-config: Dereference pointer before check for NULL

This fixes a bug pointed out by
(Optimization-unstable code)
It is a similar fix as f146f5e159 (2013-12-30, core:
Forgot to dereference pointer when checking for NULL)

To explain this bug consider the following similar, but simpler code:
if (!p)

Assume the if condition evaluates to true, then we will access *p,
which means the compiler can assume p is a valid pointer, so it could
dereference p and use the value *p.
Assuming p as a valid pointer, !p will be false.
But initally we assumed the condition evaluates to true.

By this reasoning the optimizing compiler can deduce, we have dead code.
("The if will never be taken, as *p must be valid, because otherwise
accessing *p inside the if would segfault")

This led to an error message of the static code checker, so I checked the
code in question.

As we access *modes and *states before the check in the changed line of
this patch, I assume the line to be wrong and we actually wanted to check
for *modes and *states being both non null.