Lennart Poettering
df2d202e6e
bus: let's simplify things by getting rid of unnecessary bus parameters
2013-11-21 02:07:35 +01:00
Lennart Poettering
28383ba189
bus: add API calls to escape string components of objects paths
2013-11-21 01:03:26 +01:00
Lennart Poettering
718db96199
core: convert PID 1 to libsystemd-bus
...
This patch converts PID 1 to libsystemd-bus and thus drops the
dependency on libdbus. The only remaining code using libdbus is a test
case that validates our bus marshalling against libdbus' marshalling,
and this dependency can be turned off.
This patch also adds a couple of things to libsystem-bus, that are
necessary to make the port work:
- Synthesizing of "Disconnected" messages when bus connections are
severed.
- Support for attaching multiple vtables for the same interface on the
same path.
This patch also fixes the SetDefaultTarget() and GetDefaultTarget() bus
calls which used an inappropriate signature.
As a side effect we will now generate PropertiesChanged messages which
carry property contents, rather than just invalidation information.
2013-11-20 20:52:36 +01:00
Lennart Poettering
76b543756e
bus: introduce concept of a default bus for each thread and make use of it everywhere
...
We want to emphasize bus connections as per-thread communication
primitives, hence introduce a concept of a per-thread default bus, and
make use of it everywhere.
2013-11-12 00:12:43 +01:00
Lennart Poettering
afc6adb5ec
bus: introduce concept of a "default" event loop per-thread and make use of it everywhere
...
Try to emphasize a bit that there should be a mapping between event
loops and threads, hence introduce a logic that there's one "default"
event loop for each thread, that can be queried via
"sd_event_default()".
2013-11-12 00:12:43 +01:00
Lennart Poettering
c49b30a235
bus: rename sd_bus_send_with_reply_and_block() to sd_bus_call()
...
The call is one of the most important ones we expose, where we place
major emphasis on. We should make sure to give it a short, memorable
name.
2013-11-12 00:12:43 +01:00
Lennart Poettering
a6c616024d
machinectl: close bus to container early
2013-11-08 14:07:26 +01:00
Lennart Poettering
74c7b1ed05
machinectl: show list headers even if we pipe, since that appears to be the usual way
2013-11-07 21:28:15 +01:00
Lennart Poettering
5b30bef856
bus: log message parsing errors everywhere with a generalized bus_log_parse_error()
2013-11-07 21:26:31 +01:00
Lennart Poettering
46e65dcc3a
polkit: don't spawn local client if we access a remote system
2013-11-07 21:06:44 +01:00
Kay Sievers
23c80348e6
machine: add missing header include
2013-11-07 15:19:39 +01:00
Kay Sievers
ab49725fd8
machine: move symbols referenced by shared code from main to shared file
...
With --enable-address-sanitizer we get:
machined-dbus.c:228: undefined reference to 'manager_add_machine'
2013-11-07 14:56:31 +01:00
Simon Peeters
27e72d6b22
bus: make bus_print_all_properties work for non machinectl cases
...
add a destination parameter and skip properties we can't read
2013-11-07 14:18:35 +01:00
Lennart Poettering
8bdbb8d9cb
machinectl: we need glibc's socket.h, not our own
2013-11-07 00:53:19 +01:00
Zbigniew Jędrzejewski-Szmek
34a6778fb9
machinectl: use initialization instead of zeroing
2013-11-06 14:56:47 -05:00
Lennart Poettering
eb9da376d7
clients: unify how we invoke getopt_long()
...
Among other things this makes sure we always expose a --version command
and show it in the help texts.
2013-11-06 18:28:39 +01:00
Lennart Poettering
84f6181c2a
clients: various simplifications
2013-11-06 17:32:51 +01:00
Lennart Poettering
d3e84ddb88
machined: keep track of the initial leader PID of a machine
...
This way we can without races always determine the machine for a leader
PID. This allows machine managers to query the machine for a forked off
container/VM without a race where the child might already have died
before we could read the cgroup information from /proc/$PID/cgroup.
2013-11-06 02:31:35 +01:00
Lennart Poettering
927b164944
logind: add virtual object paths that always can be used to refer to the callers session, user, seat or machine object
...
This way clients can skip invoking GetSessionByPID() for their own PID
or a similar call to access these objects.
2013-11-05 20:52:39 +01:00
Lennart Poettering
4e724d9c5a
logind: automatically determine client side PID if GetSessionByPID() is called with a PID == 0
2013-11-05 20:44:27 +01:00
Kay Sievers
9f6eb1cd58
bus: update bus_map_all_properties()
2013-11-05 02:57:49 +01:00
Lennart Poettering
a658cafa98
machined: simplifications
2013-11-05 01:13:05 +01:00
Thomas Hindoe Paaboel Andersen
f69157a66f
machinectl: fix warning when compiling with -Og
...
src/machine/machinectl.c: In function ‘openpt_in_namespace’:
src/machine/machinectl.c:623:44: warning: ‘master’ may be used uninitialized in this function [-Wmaybe-uninitialized]
close_nointr_nofail(master);
^
2013-11-01 20:54:29 +01:00
Lennart Poettering
04d3927924
machinectl: add new command to spawn a getty inside a container
2013-10-31 01:43:38 +01:00
Lennart Poettering
d21ed1ead1
run: add support for executing commands remotely via SSH or in a container
...
Also, unify the transport logic a bit, since we reuse the same scheme in
many of our client tools.
2013-10-30 16:44:55 +01:00
Lennart Poettering
53755121e1
machinectl: we don't really just show information, we execute operations
2013-10-30 15:42:06 +01:00
Lennart Poettering
a7893c6b28
bus: add API call to create bus connection to the system bus of local containers
...
Also, add support for this to machinectl, so that we can enumerate the
machines that run inside a container. We must go deeper!
2013-10-30 15:37:02 +01:00
Lennart Poettering
0f8bd8debb
bus: move ssh support into public API of libsystem-bus
2013-10-30 15:35:49 +01:00
Marc-Antoine Perennou
415e7f65db
machinectl: privileged option is gone
2013-10-30 15:35:59 +01:00
Tom Gundersen
a1da85830b
machinectl: port to sd-bus
2013-10-30 03:40:23 +01:00
Lennart Poettering
c335068380
machined: port over to libsystemd-bus
2013-10-30 02:08:57 +01:00
Lennart Poettering
71fda00f32
list: make our list macros a bit easier to use by not requring type spec on each invocation
...
We can determine the list entry type via the typeof() gcc construct, and
so we should to make the macros much shorter to use.
2013-10-14 06:11:19 +02:00
Zbigniew Jędrzejewski-Szmek
a3e7f417d7
bus: fix access to unitialized variable in error path
...
src/machine/machined-dbus.c:237:13: warning: Branch condition evaluates to a garbage value
if (m)
^
2013-10-13 17:56:54 -04:00
Zbigniew Jędrzejewski-Szmek
bd16acf35e
Move functions around to fix underlinking in test-machine-tables
2013-09-26 11:12:04 +02:00
Zbigniew Jędrzejewski-Szmek
1dc2ced464
Remove six unused variables and add annotation
...
clang FTW!
2013-09-17 19:08:51 -04:00
Lennart Poettering
76e665855e
logind: update the session state file before we send out the CreateSession() reply
...
https://bugs.freedesktop.org/show_bug.cgi?id=67273
2013-07-26 19:03:54 +02:00
Lennart Poettering
cba38758b4
logind: update state file after generating the session fifo, not before
...
https://bugs.freedesktop.org/show_bug.cgi?id=67273
2013-07-26 17:33:01 +02:00
Lennart Poettering
5d48cd2727
machined: correct how some properties are exported on the bus
2013-07-19 02:47:21 +02:00
Lennart Poettering
554604b307
machined: forward scope properties array from client to systemd
...
This makes nspawn's --scope= switch work again.
2013-07-11 19:53:46 +02:00
Lennart Poettering
9d12709626
loginctl: suppress cgroup tree output if cgroup is empty
...
same for machinectl
2013-07-11 19:14:38 +02:00
Lennart Poettering
aa1936ea1a
loginctl: restore cgroup display for status output
...
Same for machinectl.
2013-07-11 00:32:32 +02:00
Lennart Poettering
f2d4f98d58
logind: when creating the scope job fails, return this immediately to the client that wants to register the session
...
Otherwise we'll hanging for the job to finish without any job existing.
Similar, for machined.
2013-07-10 23:41:03 +02:00
Lennart Poettering
6797c324a6
logind: don't misunderstand UnitRemoved signals during reloading
...
When PID 1 reloads the units logind/machined will see UnitRemoved
signals for all units. Instead of trusting these immediately, let's
check the actual unit state before considering a unit gone, so that
reloading PID 1 is not mistaken as the end of all sessions.
2013-07-10 23:41:03 +02:00
Zbigniew Jędrzejewski-Szmek
19887cd06a
man: document machinectl and systemd-machined
2013-07-06 22:23:31 -04:00
Zbigniew Jędrzejewski-Szmek
a8b409dbc9
tests: add tests for string lookup tables
...
The tests check if the tables have entries for all values
in the enum, and that the entries are unique.
2013-07-05 01:36:16 -04:00
Lennart Poettering
943aca8efb
logind/machined: properly notice when units are gc'ed
2013-07-03 15:14:47 +02:00
Dave Reisner
2c4c73b3ff
machine: fix -Wmaybe-uninitialized warning
...
The return value of machine_start_scope might be undefined if m->scope
is non-NULL.
2013-07-02 13:50:54 -04:00
Dave Reisner
aba8b84e8d
machined: check correct return value for NULL
2013-07-02 13:44:50 -04:00
Lennart Poettering
f526ab7ef0
machine: fix scope allocation
2013-07-02 18:38:26 +02:00
Lennart Poettering
d0af76e68a
logind: after deserializatio readd systemd units to unit-to-object hashmap correctly
2013-07-02 17:18:41 +02:00