1
0
mirror of https://github.com/systemd/systemd.git synced 2024-11-14 15:21:37 +03:00
Commit Graph

13406 Commits

Author SHA1 Message Date
Thomas Hindoe Paaboel Andersen
2b49a47041 bus-util: return errors when encountered
Introduced in:
9f6eb1cd58
313333b403
2013-12-17 21:56:49 +01:00
Shawn Landden
919ce0b7af _noreturn_ --> noreturn for C11 compat
also define noreturn w/o <stdnoreturn.h>
2013-12-17 21:51:24 +01:00
Shawn Landden
73020ab241 util: no need for in_initrd() cache to be thread-local
the process only has one working directory, and a race is
harmless
2013-12-17 21:45:43 +01:00
Shawn Landden
ec202eae8e __thread --> thread_local for C11 compat
Also make thread_local available w/o including <threads.h>.
(as the latter hasn't been implemented, but this part is trivial)
2013-12-17 21:45:43 +01:00
Lennart Poettering
06db8540cd update TODO 2013-12-17 21:45:43 +01:00
Lukasz Skalski
5232c42ec4 libsystemd-bus: true/false instead of yes/no in msg dump
Due to this patch, message dump (for message which includes boolean
type) is more consistent with dbus-send (which display true/false
instead of yes/no for boolean). It's only simple 'cosmetics change'.

** For dbus-send **

dbus-send --system --dest=org.freedesktop.DBus --type=method_call --print-reply / org.freedesktop.DBus.NameHasOwner string:org.freedesktop.login1

method return sender=org.freedesktop.DBus -> dest=:1.97 reply_serial=2
   boolean true

** For libsystemd-bus (without this patch) **

‣ Type=method_call  Endian=l  Flags=0  Version=2 Serial=8
  Destination=org.freedesktop.DBus  Path=/org/freedesktop/DBus  Interface=org.freedesktop.DBus  Member=NameHasOwner
  MESSAGE "s" {
  	STRING "org.freedesktop.login1";
  };

‣ Type=method_return  Endian=l  Flags=1  Version=2 Serial=51  ReplySerial=8
  Sender=:1.59  Destination=:1.67
  UniqueName=:1.59  WellKnownNames={org.freedesktop.DBus}
  MESSAGE "b" {
  	BOOLEAN yes;
  };

For me true/false seems to be better readable than yes/no for BOOLEAN.
2013-12-17 21:45:43 +01:00
Thomas Hindoe Paaboel Andersen
0d647f7f73 journal-file.c: remove redundant assignment of variable
we also do 'last_index = (uint64_t) -1;' at the end of the while
loop so there is no reason to also do it here.
2013-12-17 20:55:20 +01:00
Lennart Poettering
c966ef4a76 bus: properly return an error code when release_name fails abnormally 2013-12-17 20:39:15 +01:00
Lukasz Skalski
3263ef39b8 bus-driverd: Fix return code in driver_request_name
RequestName return codes should be consistent with Dbus Specification.

VALUE - DESCRIPTION
1-The caller is now the primary owner of the name, replacing any previous owner,
2-The name already had an owner (QUEUE flag was not specified),
3-The name already has an owner (QUEUE flag was specified),
4-Application trying to request ownership of a name is already the owner of it.
2013-12-17 20:37:24 +01:00
Lennart Poettering
a69f4254a8 journald: before closing /dev/kmsg let's unregister the event source 2013-12-17 20:02:21 +01:00
Lennart Poettering
c0f71f469f journald: close /dev/kmsg again if we cannot make use of it 2013-12-17 19:57:46 +01:00
Lennart Poettering
445ea9be52 journald: downgrade warning message when /dev/kmsg does not exist 2013-12-17 19:57:46 +01:00
Patrik Flykt
97b9372db1 dhcp: Properly handle unsuccessful cases for DHCP Ack
Ignore DHCP Ack packets if they are found to be erroneous or have
an unexpected xid by setting the result to zero instead of propagating
an error. Also remember to report a DHCP Nak and stop the DHCP client.
2013-12-17 16:24:16 +01:00
Thomas Hindoe Paaboel Andersen
187dc6e554 udev link-config: add asserts to silence scan-build 2013-12-17 16:09:52 +01:00
Thomas Hindoe Paaboel Andersen
6a70535669 bus: removed unused variable in driverd
acked by Daniel Mack
2013-12-17 16:07:00 +01:00
Lennart Poettering
382aa8d036 bus: make driverd code more similar to other daemons, and make it exit on idle among other things 2013-12-17 15:45:31 +01:00
Lennart Poettering
f83f897489 busctl: on kdbus the bus driver is a service like any other, hence don't skip it 2013-12-17 15:45:31 +01:00
Lennart Poettering
e1c433c621 bus: remarshal messages when necessary before sending 2013-12-17 15:45:31 +01:00
Lennart Poettering
603938e0a9 activate: fix error checking on epoll_ctl() 2013-12-17 15:42:33 +01:00
Lennart Poettering
15e913230c bus: install unit files for new driver service 2013-12-17 15:42:33 +01:00
Daniel Mack
816a3f9ec5 bus: sync with kdbus
kdbus_cmd_{ep,ns,bus}_make are now consolidated, and bloom_size has
become an item of the dynamically sized list.
2013-12-17 13:45:02 +01:00
Daniel Mack
613ec4b836 bus: sync up with kdbus 2013-12-17 12:25:20 +01:00
Lukasz Skalski
f92f3ff967 bus-driverd: Fix unique name return in driver_get_name_owner 2013-12-17 11:16:49 +01:00
Tom Gundersen
a53692f7b4 man: networkd - clarify Address/Gateway keys in [Network] section 2013-12-17 09:24:57 +01:00
Tom Gundersen
ae4c67a7c6 networkd: add support for Route sections 2013-12-17 09:24:57 +01:00
Tom Gundersen
b0d27a2508 networkd: correct logging message 2013-12-17 09:24:57 +01:00
Marc-Antoine Perennou
b9eaf3d1eb rtnl: fix for 32bits
Commit 0a0dc69b65 broke tests for 32 bits
2013-12-17 00:45:19 -05:00
Zbigniew Jędrzejewski-Szmek
e7335f5491 build-sys: fix distcheck 2013-12-16 23:59:07 -05:00
Shawn Landden
08c6f819cb journal: fix against (theoretical) undefined behavior
While all the libc implementations I know return NULL when memchr's size
parameter is 0, without accessing any memory, passing NULL to memchr is
still invalid:

C11 7.24.1p2: Where an argument declared as "size_t n" specifies the length
of the array for a function, n can have the value zero on a call to that
function. Unless explicitly stated otherwise in the description of a
particular function in this subclause, pointer arguments on such a call
shall still have valid values, as described in 7.1.4. On such a call, a
function that locates a character finds no occurrence, a function that
compares two character sequences returns zero, and a function that copies
characters copies zero characters.

see http://llvm.org/bugs/show_bug.cgi?id=18247
2013-12-16 23:46:01 -05:00
Zbigniew Jędrzejewski-Szmek
7fd97d7829 man: describe journalctl --show-cursor 2013-12-16 23:40:10 -05:00
Zbigniew Jędrzejewski-Szmek
a94200d0b4 bus-driverd: actually add --version 2013-12-16 23:21:51 -05:00
Zbigniew Jędrzejewski-Szmek
c0fdf09885 systemctl: highlight filenames in cat 2013-12-16 23:21:51 -05:00
Zbigniew Jędrzejewski-Szmek
c0ea486f6e systemctl: fix return value from cat 2013-12-16 23:21:51 -05:00
Zbigniew Jędrzejewski-Szmek
15f2a3a993 man: reword awkward phrase 2013-12-16 23:21:51 -05:00
Zbigniew Jędrzejewski-Szmek
0b6c04bb45 bus: use gperf to map error string to errno 2013-12-16 23:21:50 -05:00
Kay Sievers
6241164b73 bus: update kdbus.h 2013-12-17 02:50:19 +01:00
Lennart Poettering
5d6cf65f09 bus: when connecting to a container's system bus, double fork after joining the container's namespace
setns(CLONE_NEWPID) only applies to child processes, hence let's fork
once after joining the container's namespace.
2013-12-17 01:57:27 +01:00
Lennart Poettering
cd49e2f664 build-sys: build bus-driverd if kdbus support is enabled 2013-12-17 01:36:59 +01:00
Lennart Poettering
a4475f577b bus: when entering an existing namespace to connect to a container's system bus also switch over PID namespace
This is necessary to ensure that kdbus can collect creds of the
destination namespace when connecting.
2013-12-17 01:05:37 +01:00
Lennart Poettering
d003f514da core: always create /dev/kdbus/ns (and make it private 0700) after setting up the kdbus system bus 2013-12-17 01:05:37 +01:00
Thomas Hindoe Paaboel Andersen
4faa70046c journal-file: protect against alloca(0) 2013-12-16 23:37:38 +01:00
Kay Sievers
eca7a27add bus: fix typo in systemd-bus-proxyd 2013-12-16 23:25:32 +01:00
Daniel Mack
294c866023 Add bus-driverd
systemd-bus-driverd is a small daemon that connects to kdbus and
implements the org.freedesktop.DBus interface. IOW, it provides the bus
functions  traditionally taken care for by dbus-daemon.

Calls are proxied to kdbus, either via libsystemd-bus (were applicable)
or with the open-coded use of ioctl().

Note that the implementation is not yet finished as the functions to
add and remove matches and to start services by name are still missing.
2013-12-16 22:34:48 +01:00
Lennart Poettering
16ac401407 bus: when a busname unit refuses to activate a service it should flush the queue 2013-12-16 21:26:21 +01:00
Lennart Poettering
010b2b8d7a bus: also mask dbus.service in generator if kdbus is found 2013-12-16 21:06:57 +01:00
Lennart Poettering
77e96a6247 units: properly make bus proxy socket of type Accept=yes 2013-12-16 21:06:57 +01:00
Lennart Poettering
999b600390 systemctl: properly initialize and free sd_bus_error in "systemctl cat"
We need to properly initialize all error structs before use and free
them after use.

Also, there's no point in flushing stdout if we output a \n anyway...
2013-12-16 21:06:57 +01:00
Lennart Poettering
1c5f57c5a7 bus: fix symlink to bus proxy socket 2013-12-16 21:06:57 +01:00
Lennart Poettering
821e0756c6 bus: use GREEDY_REALLOC() when allocating message queues 2013-12-16 20:34:46 +01:00
Lennart Poettering
306f07be2f bus: let's use GREEDY_REALLOC() when allocating space for containers 2013-12-16 20:34:46 +01:00