zypp::media::Mount Class Reference

Interface to the mount program. More...

#include <Mount.h>

List of all members.

Public Types

typedef
ExternalProgram::Environment 
Environment
 For passing additional environment variables to mount.
typedef KVMap
< kvmap::KVMapBase::CharSep<'=',','> > 
Options
 Mount options.

Public Member Functions

 Mount ()
 Create an new instance.
 ~Mount ()
 Clean up.
void mount (const std::string &source, const std::string &target, const std::string &filesystem, const std::string &options, const Environment &environment=Environment())
 mount device
void umount (const std::string &path)
 umount device

Static Public Member Functions

static MountEntries getEntries (const std::string &mtab="")
 Return mount entries from /etc/mtab or /etc/fstab file.

Private Member Functions

void run (const char *const *argv, const Environment &environment, ExternalProgram::Stderr_Disposition stderr_disp=ExternalProgram::Stderr_To_Stdout)
 Run mount with the specified arguments and handle stderr.
void run (const char *const *argv, ExternalProgram::Stderr_Disposition stderr_disp=ExternalProgram::Stderr_To_Stdout)
int Status ()
 Return the exit status of the process, closing the connection if not already done.
void Kill ()
 Forcably kill the process.

Private Attributes

ExternalProgramprocess
 The connection to the mount process.
int exit_code
 The exit code of the process, or -1 if not yet known.


Detailed Description

Interface to the mount program.

Definition at line 69 of file Mount.h.


Member Typedef Documentation

For passing additional environment variables to mount.

Definition at line 77 of file Mount.h.

Mount options.

'key' or 'key=value' pairs, separated by ','

Definition at line 82 of file Mount.h.


Constructor & Destructor Documentation

zypp::media::Mount::Mount (  ) 

Create an new instance.

Definition at line 46 of file Mount.cc.

References exit_code, and process.

zypp::media::Mount::~Mount (  ) 

Clean up.

Definition at line 52 of file Mount.cc.

References MIL, and process.


Member Function Documentation

void zypp::media::Mount::mount ( const std::string &  source,
const std::string &  target,
const std::string &  filesystem,
const std::string &  options,
const Environment environment = Environment() 
)

mount device

Parameters:
source what to mount (e.g. /dev/hda3)
target where to mount (e.g. /mnt)
filesystem which filesystem to use (e.g. reiserfs) (-t parameter)
options mount options (e.g. ro) (-o parameter)
environment optinal environment to pass (e.g. PASSWD="sennah")
Exceptions:
MediaException 

Definition at line 64 of file Mount.cc.

References DBG, MIL, process, zypp::externalprogram::ExternalDataSource::receiveLine(), run(), Status(), zypp::ExternalProgram::Stderr_To_Stdout, WAR, and ZYPP_THROW.

Referenced by zypp::media::MediaNFS::attachTo(), zypp::media::MediaISO::attachTo(), zypp::media::MediaDISK::attachTo(), zypp::media::MediaCIFS::attachTo(), and zypp::media::MediaCD::attachTo().

void zypp::media::Mount::umount ( const std::string &  path  ) 

MountEntries zypp::media::Mount::getEntries ( const std::string &  mtab = ""  )  [static]

Return mount entries from /etc/mtab or /etc/fstab file.

Parameters:
mtab The name of the (mounted) file system description file to read from. This file should be one /etc/mtab, /etc/fstab or /proc/mounts. Default is to try the /etc/mtab and fail back to /proc/mounts.
Returns:
A vector with mount entries or empty vector if reading or parsing of the mtab file(s) failed.

Definition at line 273 of file Mount.cc.

References DBG, zypp::str::strerror(), and WAR.

Referenced by zypp::media::MediaManager_Impl::getMountEntries().

void zypp::media::Mount::run ( const char *const *  argv,
const Environment environment,
ExternalProgram::Stderr_Disposition  stderr_disp = ExternalProgram::Stderr_To_Stdout 
) [private]

Run mount with the specified arguments and handle stderr.

Parameters:
argv Mount arguments
environment Addittional environment to set
stderr_disp How to handle stderr, merged with stdout by default

Definition at line 231 of file Mount.cc.

References exit_code, and process.

Referenced by mount(), run(), and umount().

void zypp::media::Mount::run ( const char *const *  argv,
ExternalProgram::Stderr_Disposition  stderr_disp = ExternalProgram::Stderr_To_Stdout 
) [inline, private]

Definition at line 155 of file Mount.h.

References run().

int zypp::media::Mount::Status (  )  [private]

Return the exit status of the process, closing the connection if not already done.

Definition at line 250 of file Mount.cc.

References zypp::ExternalProgram::close(), DBG, exit_code, zypp::ExternalProgram::kill(), and process.

Referenced by mount(), and umount().

void zypp::media::Mount::Kill (  )  [private]

Forcably kill the process.

Definition at line 266 of file Mount.cc.

References zypp::ExternalProgram::kill(), and process.


Member Data Documentation

The connection to the mount process.

Definition at line 143 of file Mount.h.

Referenced by Kill(), mount(), Mount(), run(), Status(), umount(), and ~Mount().

The exit code of the process, or -1 if not yet known.

Definition at line 174 of file Mount.h.

Referenced by Mount(), run(), and Status().


The documentation for this class was generated from the following files:

doxygen