diff options
Diffstat (limited to 'sd_login/doc.go')
-rw-r--r-- | sd_login/doc.go | 39 |
1 files changed, 23 insertions, 16 deletions
diff --git a/sd_login/doc.go b/sd_login/doc.go index ba1a0f7..33c31be 100644 --- a/sd_login/doc.go +++ b/sd_login/doc.go @@ -1,4 +1,4 @@ -// Copyright (C) 2016 Luke Shumaker <lukeshu@sbcglobal.net> +// Copyright (C) 2016-2017 Luke Shumaker <lukeshu@sbcglobal.net> // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -12,27 +12,34 @@ // See the License for the specific language governing permissions and // limitations under the License. -// Package sd_login TODO +//go:generate make + +// Package sd_login introspects session and login information from +// systemd, logind, and machined. +// +// There are 5 basic object types that these three system services manage. // -// The login manager manages 4 basic object types +// The machine manager maintains a list of "machines": // -// - machine: A container or virtual machine +// 1. machine: A local container or virtual machine // -// - seat: A set of hardware devices for a workspace; ie a screen -// and keyboard +// The host system, and machines hosted on it, may each run their own +// login manager, which keeps track of seats, sessions, and users: // -// - session: A login session; tied to 0 or 1 seats (0 for things -// like SSH login) +// 2. seat: A set of hardware devices for a workspace; i.e. a screen +// and keyboard // -// - user: Keeps track of logged in users; that is, users with 1 or -// more sessions +// 3. session: A login session; tied to 0 or 1 seats (0 for things +// like SSH login) // -// TODO: why are machines part of this? +// 4. user: Keeps track of logged in users; that is, users with 1 or +// more sessions // -// - pid: A process may belong to a session, or directly to a user if -// it is not part of a session. This "belonging" is separate -// accounting by the login manager; it is NOT the same as the -// EUID/RUID. +// Finally, sessions and users can be used to group together +// processes, which are kept track of by cgroup manager: // -// - peer: A peer is a process on the other end of a AF_UNIX socket. +// 5. pid: A process may belong to a session, or directly to a user +// if it is not part of a session. This "belonging" is separate +// accounting by the login manager; it is NOT the same as the +// EUID/RUID. package sd_login |