интерфейс D-Bus системного хоста (The D-Bus interface of systemd-homed)
THE HOME OBJECT
node /org/freedesktop/home1/home {
interface org.freedesktop.home1.Home {
methods:
Activate(in s secret);
Deactivate();
Unregister();
Realize(in s secret);
Remove();
Fixate(in s secret);
Authenticate(in s secret);
Update(in s user_record);
Resize(in t size,
in s secret);
ChangePassword(in s new_secret,
in s old_secret);
Lock();
Unlock(in s secret);
Acquire(in s secret,
in b please_suspend,
out h send_fd);
Ref(in b please_suspend,
out h send_fd);
Release();
properties:
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
readonly s UserName = '...';
readonly u UID = ...;
readonly (suusss) UnixRecord = ...;
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
readonly s State = '...';
@org.freedesktop.DBus.Property.EmitsChangedSignal("invalidates")
readonly (sb) UserRecord = ...;
};
interface org.freedesktop.DBus.Peer { ... };
interface org.freedesktop.DBus.Introspectable { ... };
interface org.freedesktop.DBus.Properties { ... };
interface org.freedesktop.DBus.ObjectManager { ... };
};
Methods
Activate()
, Deactivate()
, Unregister()
, Realize()
, Remove()
,
Fixate()
, Authenticate()
, Update()
, Resize()
, ChangePassword()
,
Lock()
, Unlock()
, Acquire()
, Ref()
, Release()
operate like their
matching counterparts on the org.freedesktop.home1.Manager
interface (see above). The main difference is that they are
methods of the home directory objects, and hence carry no
additional user name parameter. Which of the two flavors of
methods to call depends on the handles to the user known on the
client side: if only the user name is known, it's preferable to
use the methods on the manager object since they operate with
user names only. If however the home object path was already
acquired some way it is preferable to operate on the
org.freedesktop.home1.Home objects instead.
Properties
UserName contains the user name of the user account/home
directory.
UID contains the numeric UNIX UID of the user account.
UnixRecord contains a structure encapsulating the six fields a
struct passwd typically contains (the password field is
suppressed).
State exposes the current state home the home directory.
UserRecord contains the full JSON user record string of the user
account.