summaryrefslogtreecommitdiff
path: root/src/machine
AgeCommit message (Collapse)Author
2013-11-21bus: rework message handlers to always take an error argumentLennart Poettering
Message handler callbacks can be simplified drastically if the dispatcher automatically replies to method calls if errors are returned. Thus: add an sd_bus_error argument to all message handlers. When we dispatch a message handler and it returns negative or a set sd_bus_error we send this as message error back to the client. This means errors returned by handlers by default are given back to clients instead of rippling all the way up to the event loop, which is desirable to make things robust. As a side-effect we can now easily turn the SELinux checks into normal function calls, since the method call dispatcher will generate the right error replies automatically now. Also, make sure we always pass the error structure to all property and method handlers as last argument to follow the usual style of passing variables for return values as last argument.
2013-11-21bus: let's simplify things by getting rid of unnecessary bus parametersLennart Poettering
2013-11-21bus: add API calls to escape string components of objects pathsLennart Poettering
2013-11-20core: convert PID 1 to libsystemd-busLennart Poettering
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-12bus: introduce concept of a default bus for each thread and make use of it ↵Lennart Poettering
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-12bus: introduce concept of a "default" event loop per-thread and make use of ↵Lennart Poettering
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-12bus: rename sd_bus_send_with_reply_and_block() to sd_bus_call()Lennart Poettering
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-08machinectl: close bus to container earlyLennart Poettering
2013-11-07machinectl: show list headers even if we pipe, since that appears to be the ↵Lennart Poettering
usual way
2013-11-07bus: log message parsing errors everywhere with a generalized ↵Lennart Poettering
bus_log_parse_error()
2013-11-07polkit: don't spawn local client if we access a remote systemLennart Poettering
2013-11-07machine: add missing header includeKay Sievers
2013-11-07machine: move symbols referenced by shared code from main to shared fileKay Sievers
With --enable-address-sanitizer we get: machined-dbus.c:228: undefined reference to 'manager_add_machine'
2013-11-07bus: make bus_print_all_properties work for non machinectl casesSimon Peeters
add a destination parameter and skip properties we can't read
2013-11-07machinectl: we need glibc's socket.h, not our ownLennart Poettering
2013-11-06machinectl: use initialization instead of zeroingZbigniew Jędrzejewski-Szmek
2013-11-06clients: unify how we invoke getopt_long()Lennart Poettering
Among other things this makes sure we always expose a --version command and show it in the help texts.
2013-11-06clients: various simplificationsLennart Poettering
2013-11-06machined: keep track of the initial leader PID of a machineLennart Poettering
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-05logind: add virtual object paths that always can be used to refer to the ↵Lennart Poettering
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-05logind: automatically determine client side PID if GetSessionByPID() is ↵Lennart Poettering
called with a PID == 0
2013-11-05bus: update bus_map_all_properties()Kay Sievers
2013-11-05machined: simplificationsLennart Poettering
2013-11-01machinectl: fix warning when compiling with -OgThomas Hindoe Paaboel Andersen
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-10-31machinectl: add new command to spawn a getty inside a containerLennart Poettering
2013-10-30run: add support for executing commands remotely via SSH or in a containerLennart Poettering
Also, unify the transport logic a bit, since we reuse the same scheme in many of our client tools.
2013-10-30machinectl: we don't really just show information, we execute operationsLennart Poettering
2013-10-30bus: add API call to create bus connection to the system bus of local containersLennart Poettering
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-30bus: move ssh support into public API of libsystem-busLennart Poettering
2013-10-30machinectl: privileged option is goneMarc-Antoine Perennou
2013-10-30machinectl: port to sd-busTom Gundersen
2013-10-30machined: port over to libsystemd-busLennart Poettering
2013-10-14list: make our list macros a bit easier to use by not requring type spec on ↵Lennart Poettering
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-13bus: fix access to unitialized variable in error pathZbigniew Jędrzejewski-Szmek
src/machine/machined-dbus.c:237:13: warning: Branch condition evaluates to a garbage value if (m) ^
2013-09-26Move functions around to fix underlinking in test-machine-tablesZbigniew Jędrzejewski-Szmek
2013-09-17Remove six unused variables and add annotationZbigniew Jędrzejewski-Szmek
clang FTW!
2013-07-26logind: update the session state file before we send out the CreateSession() ↵Lennart Poettering
reply https://bugs.freedesktop.org/show_bug.cgi?id=67273
2013-07-26logind: update state file after generating the session fifo, not beforeLennart Poettering
https://bugs.freedesktop.org/show_bug.cgi?id=67273
2013-07-19machined: correct how some properties are exported on the busLennart Poettering
2013-07-11machined: forward scope properties array from client to systemdLennart Poettering
This makes nspawn's --scope= switch work again.
2013-07-11loginctl: suppress cgroup tree output if cgroup is emptyLennart Poettering
same for machinectl
2013-07-11loginctl: restore cgroup display for status outputLennart Poettering
Same for machinectl.
2013-07-10logind: when creating the scope job fails, return this immediately to the ↵Lennart Poettering
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-10logind: don't misunderstand UnitRemoved signals during reloadingLennart Poettering
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-06man: document machinectl and systemd-machinedZbigniew Jędrzejewski-Szmek
2013-07-05tests: add tests for string lookup tablesZbigniew Jędrzejewski-Szmek
The tests check if the tables have entries for all values in the enum, and that the entries are unique.
2013-07-03logind/machined: properly notice when units are gc'edLennart Poettering
2013-07-02machine: fix -Wmaybe-uninitialized warningDave Reisner
The return value of machine_start_scope might be undefined if m->scope is non-NULL.
2013-07-02machined: check correct return value for NULLDave Reisner
2013-07-02machine: fix scope allocationLennart Poettering