#include <sbuild-chroot-source.h>
Inheritance diagram for sbuild::chroot_source:
Public Member Functions | |
virtual | ~chroot_source () |
The destructor. | |
virtual chroot::ptr | clone_source () const=0 |
Create a source chroot. | |
virtual string_list const & | get_source_users () const |
Get the users allowed to access the source chroot. | |
virtual void | set_source_users (string_list const &users) |
Set the users allowed to access the source chroot. | |
virtual string_list const & | get_source_groups () const |
Get the groups allowed to access the source chroot. | |
virtual void | set_source_groups (string_list const &groups) |
Set the groups allowed to access the source chroot. | |
virtual string_list const & | get_source_root_users () const |
Get the users allowed to access the source chroot as root. | |
virtual void | set_source_root_users (string_list const &users) |
Set the users allowed to access the source chroot as root. | |
virtual string_list const & | get_source_root_groups () const |
Get the groups allowed to access the source chroot as root. | |
virtual void | set_source_root_groups (string_list const &groups) |
Set the groups allowed to access the source chroot as root. | |
void | setup_env (environment &env) |
Set environment. | |
Protected Member Functions | |
chroot_source () | |
The constructor. | |
void | clone_source_setup (chroot::ptr &clone) const |
Set the defaults in the cloned source chroot. | |
virtual void | get_details (format_detail &detail) const |
Get detailed information about the chroot for output. | |
void | get_keyfile (keyfile &keyfile) const |
Copy the chroot properties into a keyfile. | |
void | set_keyfile (keyfile const &keyfile) |
Set the chroot properties from a keyfile. | |
Private Attributes | |
string_list | source_users |
Users allowed to access the source chroot. | |
string_list | source_groups |
Groups allowed to access the source chroot. | |
string_list | source_root_users |
Users allowed to access the source chroot as root. | |
string_list | source_root_groups |
Groups allowed to access the source chroot as root. | |
Friends | |
class | chroot |
This interface may be implemented by any chroot wishing to provide such functionality.
While this is effectively an interface, in practice this derives from sbuild::chroot, to allow setting and getting of data from a keyfile, including storing the keyfile options.
Chroot types implementing chroot_source should, at a minimum, implement clone_source(). This should create and return a source chroot, and must call clone_source_setup() to set up the source chroot.
chroot_source::chroot_source | ( | ) | [protected] |
The constructor.
chroot_source::~chroot_source | ( | ) | [virtual] |
The destructor.
virtual chroot::ptr sbuild::chroot_source::clone_source | ( | ) | const [pure virtual] |
Create a source chroot.
Implemented in sbuild::chroot_file, and sbuild::chroot_lvm_snapshot.
void chroot_source::clone_source_setup | ( | chroot::ptr & | clone | ) | const [protected] |
string_list const & chroot_source::get_source_users | ( | ) | const [virtual] |
void chroot_source::set_source_users | ( | string_list const & | users | ) | [virtual] |
string_list const & chroot_source::get_source_groups | ( | ) | const [virtual] |
void chroot_source::set_source_groups | ( | string_list const & | groups | ) | [virtual] |
string_list const & chroot_source::get_source_root_users | ( | ) | const [virtual] |
Get the users allowed to access the source chroot as root.
Mmebers of these users can switch to root without authenticating themselves.
void chroot_source::set_source_root_users | ( | string_list const & | users | ) | [virtual] |
Set the users allowed to access the source chroot as root.
Mmebers of these users can switch to root without authenticating themselves.
users | a list of users. |
string_list const & chroot_source::get_source_root_groups | ( | ) | const [virtual] |
Get the groups allowed to access the source chroot as root.
Mmebers of these groups can switch to root without authenticating themselves.
void chroot_source::set_source_root_groups | ( | string_list const & | groups | ) | [virtual] |
Set the groups allowed to access the source chroot as root.
Mmebers of these groups can switch to root without authenticating themselves.
groups | a list of groups. |
void chroot_source::setup_env | ( | environment & | env | ) | [virtual] |
Set environment.
Set the environment that the setup scripts will see during execution.
env | the environment to set. |
Reimplemented from sbuild::chroot.
Reimplemented in sbuild::chroot_file, and sbuild::chroot_lvm_snapshot.
void chroot_source::get_details | ( | format_detail & | detail | ) | const [protected, virtual] |
Get detailed information about the chroot for output.
detail | the details to output to. |
Reimplemented from sbuild::chroot.
Reimplemented in sbuild::chroot_file, and sbuild::chroot_lvm_snapshot.
void chroot_source::get_keyfile | ( | keyfile & | keyfile | ) | const [protected, 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.
keyfile | the keyfile to use. |
Reimplemented from sbuild::chroot.
Reimplemented in sbuild::chroot_file, and sbuild::chroot_lvm_snapshot.
void chroot_source::set_keyfile | ( | keyfile const & | keyfile | ) | [protected, 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.
keyfile | the keyfile to get the properties from. |
Reimplemented from sbuild::chroot.
Reimplemented in sbuild::chroot_file, and sbuild::chroot_lvm_snapshot.
friend class chroot [friend] |
Reimplemented in sbuild::chroot_file, and sbuild::chroot_lvm_snapshot.
Users allowed to access the source chroot.
Groups allowed to access the source chroot.
Users allowed to access the source chroot as root.
Groups allowed to access the source chroot as root.