Chroot support for creation of sessions. More...
#include <sbuild-chroot-facet-session-clonable.h>
Inheritance diagram for sbuild::chroot_facet_session_clonable:
Collaboration diagram for sbuild::chroot_facet_session_clonable:Public Types | |
|
typedef std::shared_ptr < chroot_facet_session_clonable > | ptr |
| A shared_ptr to a chroot facet object. | |
|
typedef std::shared_ptr< const chroot_facet_session_clonable > | const_ptr |
| A shared_ptr to a const chroot facet object. | |
Public Member Functions | |
| virtual | ~chroot_facet_session_clonable () |
| The destructor. | |
| virtual chroot_facet::ptr | clone () const |
| Copy the chroot facet. | |
| virtual std::string const & | get_name () const |
| Get the name of the chroot facet. | |
| virtual void | clone_session_setup (chroot const &parent, chroot::ptr &clone, std::string const &session_id, std::string const &alias, std::string const &user, bool root) const |
| Set the defaults in the cloned session chroot. | |
| virtual void | setup_env (chroot const &chroot, environment &env) const |
| Set environment. | |
| virtual chroot::session_flags | get_session_flags (chroot const &chroot) const |
| Get the session flags of the chroot. | |
| virtual void | get_details (chroot const &chroot, format_detail &detail) const |
| Get detailed information about the chroot for output. | |
| virtual void | get_keyfile (chroot const &chroot, keyfile &keyfile) const |
| Copy the chroot properties into a keyfile. | |
| virtual void | set_keyfile (chroot &chroot, keyfile const &keyfile, string_list &used_keys) |
| Set the chroot properties from a keyfile. | |
Static Public Member Functions | |
| static ptr | create () |
| Create a chroot facet. | |
Private Member Functions | |
| chroot_facet_session_clonable () | |
| The constructor. | |
Chroot support for creation of sessions.
A chroot may offer a "session" facet to signal restorable or parallel chroot environment usage. This facet allows the chroot to support session creation.
| chroot_facet::ptr chroot_facet_session_clonable::clone | ( | ) | const [virtual] |
Copy the chroot facet.
This is a virtual copy constructor.
Implements sbuild::chroot_facet.
References chroot_facet_session_clonable().
| void chroot_facet_session_clonable::clone_session_setup | ( | chroot const & | parent, | |
| chroot::ptr & | clone, | |||
| std::string const & | session_id, | |||
| std::string const & | alias, | |||
| std::string const & | user, | |||
| bool | root | |||
| ) | const [virtual] |
Set the defaults in the cloned session chroot.
| parent | the parent of the cloned chroot. | |
| clone | the chroot to set up. | |
| session_id | the identifier for the new session. | |
| user | the user creating the session. | |
| root | whether or not the user is switching to root. |
References sbuild::_(), sbuild::chroot_facet_session::create(), sbuild::DEBUG_INFO, sbuild::DEBUG_NOTICE, sbuild::dirname(), sbuild::chroot::get_facet(), and sbuild::log_debug().
| chroot_facet_session_clonable::ptr chroot_facet_session_clonable::create | ( | ) | [static] |
Create a chroot facet.
References chroot_facet_session_clonable().
Referenced by sbuild::chroot::chroot(), and sbuild::chroot_custom::set_session_cloneable().
Here is the caller graph for this function:| void chroot_facet_session_clonable::get_details | ( | chroot const & | chroot, | |
| format_detail & | detail | |||
| ) | const [virtual] |
Get detailed information about the chroot for output.
| chroot | the chroot to use. | |
| detail | the details to output to. |
Implements sbuild::chroot_facet.
| void chroot_facet_session_clonable::get_keyfile | ( | chroot const & | chroot, | |
| keyfile & | keyfile | |||
| ) | const [virtual] |
Copy the chroot properties into a keyfile.
The keyfile group with the name of the chroot will be set; if it already exists, it will be removed before setting it.
| chroot | the chroot to use. | |
| keyfile | the keyfile to use. |
Implements sbuild::chroot_facet.
| std::string const & chroot_facet_session_clonable::get_name | ( | ) | const [virtual] |
| sbuild::chroot::session_flags chroot_facet_session_clonable::get_session_flags | ( | chroot const & | chroot | ) | const [virtual] |
Get the session flags of the chroot.
These determine how the Session controlling the chroot will operate.
| chroot | the chroot to use. |
Implements sbuild::chroot_facet.
| void chroot_facet_session_clonable::set_keyfile | ( | chroot & | chroot, | |
| keyfile const & | keyfile, | |||
| string_list & | used_keys | |||
| ) | [virtual] |
Set the chroot properties from a keyfile.
The chroot name must have previously been set, so that the correct keyfile group may be determined.
| chroot | the chroot to use. | |
| keyfile | the keyfile to get the properties from. | |
| used_keys | a list of the keys used will be set. |
Implements sbuild::chroot_facet.
| void chroot_facet_session_clonable::setup_env | ( | chroot const & | chroot, | |
| environment & | env | |||
| ) | const [virtual] |
Set environment.
Set the environment that the setup scripts will see during execution.
| chroot | the chroot to use. | |
| env | the environment to set. |
Implements sbuild::chroot_facet.
1.7.1