Commit Graph

2229 Commits

Author SHA1 Message Date
Lennart Poettering
a8f11321c2 systemctl: support remote and privileged systemctl access via SSH and pkexec
This adds support for executing systemctl operations remotely or as
privileged user while still running systemctl itself unprivileged and
locally.

This currently requires a D-Bus patch to work properly.

https://bugs.freedesktop.org/show_bug.cgi?id=35230
2011-03-12 01:07:17 +01:00
Kay Sievers
e75c058023 gnome-ask-password-agent.vala: check for VALA_0_12
<juergbi> VALA_0_X is defined up to and including the current version
<juergbi> so VALA_0_10 is defined in 0.10 and 0.11 and 0.12
<juergbi> VALA_0_12 is defined in 0.11 and 0.12 (and later versions)
<juergbi> reverse the branches and use VALA_0_12 as conditional
<kay> juergbi: changing api but keep the defines?
<kay> how do we support vala 0.14 then?
<kay> you keep that model with the old defines?
<juergbi> VALA_0_10 corresponds to valaversion >= 0.10
2011-03-11 15:55:20 +01:00
Kay Sievers
202df05e0f gnome-ask-password-agent: check for vala 0.10 instead of libnotify 2011-03-11 15:41:37 +01:00
Kay Sievers
e8bf3c88e3 gnome-ask-password-agent: restore removed libnotify0.6 support 2011-03-11 14:09:10 +01:00
Lennart Poettering
820fa96485 gnome-ask-password-agent: fix path to watch 2011-03-11 01:51:45 +01:00
Lennart Poettering
7d640cdf66 units: move the last flag files to /dev/.run 2011-03-11 01:06:53 +01:00
Lennart Poettering
720ce21d44 util: close all fds before freezing execution 2011-03-11 00:52:31 +01:00
Lennart Poettering
b997812119 dbus: timeout connection setup 2011-03-11 00:52:31 +01:00
Lennart Poettering
099663ff8c main: properly handle -b boot option 2011-03-11 00:52:31 +01:00
Andrey Borzenkov
90102b22ba pam: do not leak file descriptor if flock fails
If flock fails, fd is not returned to caller so it cannot clean up.
2011-03-10 20:48:58 +01:00
Andrey Borzenkov
756a8d17bb man: trivial typo in systemd(1) 2011-03-10 20:48:12 +01:00
Lennart Poettering
fe783b0341 main: refuse system to be started in a chroot 2011-03-09 23:59:27 +01:00
Lennart Poettering
b0c8757b05 main: don't check if /usr really is a mount point, since it is fine if it is passed pre-mounted to us from the initrd 2011-03-09 23:59:07 +01:00
Lennart Poettering
90bbc9469e condition: take a timestamp and store last result of conditions 2011-03-09 23:58:17 +01:00
Lennart Poettering
b925e72633 dev: use /dev/.run/systemd as runtime directory, instead of /dev/.systemd 2011-03-09 22:45:47 +01:00
Lennart Poettering
29d958ce2b machine-id: move machine-id-setup to /sbin 2011-03-09 22:13:24 +01:00
Lennart Poettering
607df95be1 pkconfig: export full search path as .pc variable 2011-03-09 20:15:44 +01:00
Lennart Poettering
2e60ecb2f7 selinux: bump up error level when in non-enforcing mode 2011-03-09 20:12:30 +01:00
Andrey Borzenkov
b8a021c9e2 dbus: fix dbus assert due to uninitialized error
Add missing dbus_error_init() in UNKNOWN_OBJECT case. Fixes assertion

systemd[1]: Caught <ABRT>, dumped core as pid 6256.
systemd[1]: Freezing execution.

Core was generated by `/bin/systemd systemd.unit=graphical.target'.
Program terminated with signal 6, Aborted.
#0  0x00007f8966ec81db in raise () from /lib64/libpthread.so.0
(gdb) bt
#0  0x00007f8966ec81db in raise () from /lib64/libpthread.so.0
#1  0x000000000040823b in crash (sig=6) at src/main.c:120
#2  <signal handler called>
#3  0x00007f896613c075 in raise () from /lib64/libc.so.6
#4  0x00007f896613d806 in abort () from /lib64/libc.so.6
#5  0x00007f89672ac8a5 in _dbus_abort () at dbus-sysdeps.c:94
#6  0x00007f89672a37b5 in _dbus_warn_check_failed (
   format=0x7f89672b35d8 "arguments to %s() were incorrect, assertion
\"%s\" failed in file %s line %d.\nThis is normally a bug in some
application using the D-Bus library.\n") at dbus-internals.c:289
#7  0x0000000000441500 in bus_unit_message_handler (connection=0x21b6090,
   message=0x21b6760, data=0x1f3e870) at src/dbus-unit.c:572
#8  0x00007f8967299f11 in _dbus_object_tree_dispatch_and_unlock (
   tree=0x219d660, message=0x21b6760) at dbus-object-tree.c:858
#9  0x00007f896728bca2 in dbus_connection_dispatch (connection=0x21b6090)
   at dbus-connection.c:4688
#10 0x000000000043befa in bus_dispatch (m=0x1f3e870) at src/dbus.c:547
#11 0x000000000041056d in manager_loop (m=0x1f3e870) at src/manager.c:2344
#12 0x0000000000409515 in main (argc=<value optimized out>,
   argv=<value optimized out>) at src/main.c:1229
2011-03-09 20:03:29 +01:00
Lennart Poettering
05feefe0fb dbus: properly generate UnknownInterface, UnknownProperty and PropertyReadOnly errors 2011-03-09 20:01:53 +01:00
Lennart Poettering
34df5a34e1 drop unnecessary suffix NULs as gcc adds them anyway 2011-03-09 19:48:02 +01:00
Lennart Poettering
cc5524ecc6 mount: use /dev/.run as an early boot alias for /var/run
During early boot, mount a tmpfs to /dev/.run and then bind mount it to
/var/run as soon as /var is available.

This makes it possible for programs involved in early boot to put
runtime data in /dev/.run which later on will show up in /var/run like
any other.

This can be used to solve the early-boot D-Bus problem: D-Bus may start
up with its socket bound to /dev/.run/dbus/system_bus_socket and after
/var it will also be available under the traditional name
/var/run/dbus/system_bus_socket.

This also is intended to be used as a better place for systemd, mount,
mdadm, blkid, plymouth, bootchart and dracut runtime data, which is
currently stored in various places in /dev/.xxx.
2011-03-09 02:51:45 +01:00
Andrey Borzenkov
1de4d79bf5 build-sys: add Mandriva distribution support
This merges several separate patches that I carry as part of
Mandriva systemd RPM. They touch those parts that are very
unlikely to be changed in near future and do not impose any
functionality change for systemd core. I also think it is
useful for troubleshooting to have real distribution name in
system logs, espicially when someone reports problem upstream.

The patch looks bigger than sum of replaced patches because

- previous patches were applied on top of distro=fedora, now
I need to add all those bits for distro=mandriva as well

- part of patch was done as spec file magic, but it seems more
logical to ship all these bits together
2011-03-08 19:47:36 +01:00
Lennart Poettering
6e25b33cdd build-sys: prepare v20 2011-03-08 19:41:33 +01:00
Lennart Poettering
e527618da5 service: use uppercase SYSV prefix to make it easier to recognize 2011-03-08 18:51:20 +01:00
Lennart Poettering
85211309f0 service: prefix description with LSB only if script has LSB header, use 'SysV:' otherwise 2011-03-08 18:41:23 +01:00
Lennart Poettering
21256a2b3b unit: don't accidently create ordering links to targets when default deps are off for either target and unit 2011-03-08 03:24:42 +01:00
Lennart Poettering
d4a7e06dea mount: support less cumbersome x-systemd-xxx mount options 2011-03-08 03:08:15 +01:00
Lennart Poettering
267632f0ab unit: distuingish mandatory from triggering conditions 2011-03-08 03:04:47 +01:00
Lennart Poettering
08672cb507 dbus: return DBUS_ERROR_UNKNOWN_OBJECT when an object is unknown 2011-03-08 02:27:43 +01:00
Lennart Poettering
83310f162d systemctl: when forwarding is-enabled to chkconfig hardcode runlevel 3 2011-03-08 01:53:47 +01:00
Lennart Poettering
d68201e9aa job: introduce new job result code 'skipped' to use when pre conditions of job did not apply
https://bugzilla.redhat.com/show_bug.cgi?id=682245
https://bugzilla.redhat.com/show_bug.cgi?id=635780
2011-03-08 01:53:47 +01:00
Lennart Poettering
8125393018 job: convert job type as early as we can, to simplify things a bit 2011-03-08 01:53:47 +01:00
Zbigniew Jędrzejewski-Szmek
85f0c93a50 Keep emacs configuration in one configuration file.
On 07.03.2011 19:04, Lennart Poettering wrote:
>
> Oh, I had assumed that .vimrc trick would allow project-wide vim
> modelines without having to edit each and every single file.
>
> Currently, every file does contain an emacs modeline at the top. It
> would be fair I guess to add a vim modeline to all those files too, even
> though it's not necessarily pretty.
Hi,
maybe it makes sense to go in the opposite direction: add .dir-locals.el
in the top directory. The settings are actually identical in all .[ch]
files.
2011-03-08 01:53:46 +01:00
Lennart Poettering
b670e92b50 syslog: make sure the kmsg bridge is always pulled in and never terminated automatically
Since we want to replace the bridge dynamically by the real syslog
implementation such as rsyslog we need to make sure that the the bridge
stays running right to the moment rsyslog is up so that we process
messages enqueued by other processes started before rsyslog, so that
those clients don't stay stuck.
2011-03-07 21:56:13 +01:00
Andrey Borzenkov
0992bbd109 add .vimrc to .gitignore 2011-03-07 19:25:15 +01:00
Lennart Poettering
c4b5a3d66f mount: make /media a tmpfs 2011-03-07 17:38:15 +01:00
Lennart Poettering
7fc7012b8b update TODO 2011-03-07 02:17:36 +01:00
Andrey Borzenkov
c826cda421 add org.freedesktop.DBus.Properies.Set method
The patch adds framework for processing Set requests on properties
and as first consumers allows setting of LogTarget and LogLevel on
interface org.freedesktop.systemd1.Manager of org.freedesktop.systemd1.

The code should be generic enough to allow processing of any
property on other objects and interfaces as well.

No systemctl visible interface is added so far. The LogTarget and
LogLevel are meant for debugging in the first place; user interface
can be added if other usage emerge.

Set on systemwide systemd is restricted to root; I am not sure
how session level access is controlled.
2011-03-07 02:17:31 +01:00
Lennart Poettering
b4353094e5 service: drop redundant check in sysv_translate_facility
We check for _r with an assert in the function header anyway, no need to
check it again.
2011-03-06 23:28:39 +01:00
Lennart Poettering
fc7ac59412 update TODO 2011-03-05 00:30:54 +01:00
Lennart Poettering
76526bad9f machine-id: generate /etc/machine-id 0444 by default 2011-03-04 22:50:56 +01:00
Lennart Poettering
9b4f818bd8 machine-id: typo fix 2011-03-04 22:28:13 +01:00
Lennart Poettering
d7ccca2e3f main: introduce /etc/machine-id
This is supposed to play the same roles /var/lib/dbus/machine-id,
however fixes a couple of problems:

- It is available during early boot since it is stored in /etc

- Removes the ID from the D-Bus context and moves it into a system
  context, thus hopefully lowering hesitation by people to use it.

- It is generated at installation time. If the file is empty at boot
  time it will be mounted over with a randomly generated ID, which is
  not saved to disk. This is useful to support state-less machines with
  no transient or writable /etc configuration.
2011-03-04 21:53:19 +01:00
Lennart Poettering
63a723f3a7 systemctl: fix exit code when directing is-enabled to chkconfig 2011-03-04 19:48:38 +01:00
Lennart Poettering
81ab0d3c65 main: minor optimization 2011-03-04 19:48:12 +01:00
Lennart Poettering
c5d3439055 dbus: add 'Tainted' property to Manager object 2011-03-04 19:47:43 +01:00
Lennart Poettering
09bde77fc7 dbus: expose distribution name and features on manager object as properties 2011-03-04 18:34:56 +01:00
Lennart Poettering
f1779fd27b man: document changed EnvironmentFile= behaviour 2011-03-04 14:13:47 +01:00
Lennart Poettering
aa1671320d main: add link to wiki page with longer explanation of the /usr madness 2011-03-04 05:07:01 +01:00