storage Namespace Reference


Classes

struct  StatVfs
class  UdevMap
class  StopWatch
struct  Text
class  ArchInfo
class  AsciiFile
class  SysconfigFile
class  InstallInfFile
class  Blkid
class  Btrfs
class  BtrfsCo
class  Container
class  Dasd
struct  EnumInfo< Dasd::DasdFormat >
class  Dasdview
class  Fdasd
class  DerefIterator
class  Device
class  Disk
class  Dm
class  CmdDmsetup
class  DmCo
class  Dmmultipath
class  CmdMultipath
class  DmmultipathCo
class  DmPart
class  DmPartCo
class  Dmraid
class  CmdDmraid
class  DmraidCo
struct  EnumInfo
struct  EnumInfo< FsType >
struct  EnumInfo< PartitionType >
struct  EnumInfo< MountByType >
struct  EnumInfo< EncryptType >
struct  EnumInfo< MdType >
struct  EnumInfo< MdParity >
struct  EnumInfo< MdArrayState >
struct  EnumInfo< UsedByType >
struct  EnumInfo< CType >
struct  EnumInfo< Transport >
struct  EnumInfo< ImsmDriver >
struct  EnumInfo< MultipathAutostart >
struct  EnumInfo< PartAlign >
struct  FstabEntry
struct  FstabChange
class  EtcFstab
class  EtcMdadm
class  FilterIterator
class  FreeInfo
struct  Geometry
class  Graph
class  DeviceGraph
class  MountGraph
class  IterPair
class  MakeCondIterPair
class  ListListIterator
class  LockException
class  Lock
class  Loop
class  LoopCo
class  Lsscsi
class  LvmLv
class  LvmVg
class  Md
class  MdCo
class  MdPart
class  MdPartCo
class  Nfs
class  NfsCo
class  OutputProcessor
class  ProgressBar
class  Mke2fsProgressBar
class  ReiserProgressBar
class  DasdfmtProgressBar
class  Parted
class  Partition
class  PeContainer
class  ProcMdstat
struct  MdadmDetails
class  ProcMounts
class  ProcParts
class  Regex
class  Region
struct  DiskData
class  CheckType
class  CastCheckIterator
class  CheckByFnc
class  CastCheckFncIterator
class  Storage
 Main class to access libstorage functionality. More...
struct  FsCapabilities
struct  DlabelCapabilities
struct  UsedByInfo
struct  SubvolInfo
struct  ResizeInfo
struct  ContentInfo
struct  ContainerInfo
struct  DiskInfo
struct  LvmVgInfo
struct  DmPartCoInfo
struct  DmraidCoInfo
struct  DmmultipathCoInfo
struct  VolumeInfo
struct  PartitionAddInfo
struct  PartitionInfo
struct  LvmLvInfo
struct  LvmLvSnapshotStateInfo
struct  MdInfo
struct  MdStateInfo
struct  MdPartCoInfo
struct  MdPartCoStateInfo
struct  MdPartInfo
struct  NfsInfo
struct  LoopInfo
struct  BtrfsInfo
struct  TmpfsInfo
struct  DmInfo
struct  DmPartInfo
struct  DmraidInfo
struct  DmmultipathInfo
struct  ContVolInfo
struct  PartitionSlotInfo
struct  CommitInfo
class  StorageInterface
 Abstract class defining the interface for libstorage. More...
struct  Environment
class  CheckFnc
class  ContainerIter
class  ContainerDerIter
class  CastIterator
class  CheckerIterator
struct  deref_less
struct  deref_equal_to
struct  contOrder
struct  commitAction
struct  stage_is
class  UsedBy
class  Subvolume
struct  regex_matches
struct  string_starts_with
struct  string_contains
class  SystemCmd
class  CmdBtrfsShow
class  SystemInfo
class  Tmpfs
class  TmpfsCo
class  Volume
class  XmlFile

Typedefs

typedef void(* CallbackProgressBar )(const string &id, unsigned cur, unsigned max)
typedef void(* CallbackShowInstallInfo )(const string &id)
typedef void(* CallbackInfoPopup )(const string &text)
typedef bool(* CallbackYesNoPopup )(const string &text)
typedef bool(* CallbackCommitErrorPopup )(int error, const string &last_action, const string &extended_message)
typedef bool(* CallbackPasswordPopup )(const string &device, int attempts, string &password)

Enumerations

enum  LogLevel { DEBUG, MILESTONE, WARNING, ERROR }
enum  FsType {
  FSUNKNOWN, REISERFS, EXT2, EXT3,
  EXT4, BTRFS, VFAT, XFS,
  JFS, HFS, NTFS, SWAP,
  HFSPLUS, NFS, NFS4, TMPFS,
  FSNONE
}
enum  PartitionType { PRIMARY, EXTENDED, LOGICAL, PTYPE_ANY }
enum  MountByType {
  MOUNTBY_DEVICE, MOUNTBY_UUID, MOUNTBY_LABEL, MOUNTBY_ID,
  MOUNTBY_PATH
}
enum  EncryptType {
  ENC_NONE, ENC_TWOFISH, ENC_TWOFISH_OLD, ENC_TWOFISH256_OLD,
  ENC_LUKS, ENC_UNKNOWN
}
enum  MdType {
  RAID_UNK, RAID0, RAID1, RAID5,
  RAID6, RAID10, MULTIPATH
}
enum  MdParity {
  PAR_DEFAULT, LEFT_ASYMMETRIC, LEFT_SYMMETRIC, RIGHT_ASYMMETRIC,
  RIGHT_SYMMETRIC, PAR_FIRST, PAR_LAST, LEFT_ASYMMETRIC_6,
  LEFT_SYMMETRIC_6, RIGHT_ASYMMETRIC_6, RIGHT_SYMMETRIC_6, PAR_FIRST_6,
  PAR_NEAR_2, PAR_OFFSET_2, PAR_FAR_2, PAR_NEAR_3,
  PAR_OFFSET_3, PAR_FAR_3
}
enum  MdArrayState {
  UNKNOWN, CLEAR, INACTIVE, SUSPENDED,
  READONLY, READ_AUTO, CLEAN, ACTIVE,
  WRITE_PENDING, ACTIVE_IDLE
}
enum  UsedByType {
  UB_NONE, UB_LVM, UB_MD, UB_MDPART,
  UB_DM, UB_DMRAID, UB_DMMULTIPATH, UB_BTRFS
}
enum  CType {
  CUNKNOWN, DISK, MD, LOOP,
  LVM, DM, DMRAID, NFSC,
  DMMULTIPATH, MDPART, BTRFSC, TMPFSC
}
enum  Transport {
  TUNKNOWN, SBP, ATA, FC,
  ISCSI, SAS, SATA, SPI,
  USB, FCOE
}
enum  ImsmDriver { IMSM_UNDECIDED, IMSM_DMRAID, IMSM_MDADM }
enum  MultipathAutostart { MPAS_UNDECIDED, MPAS_ON, MPAS_OFF }
enum  PartAlign { ALIGN_OPTIMAL, ALIGN_CYLINDER }
enum  ErrorCodes {
  STORAGE_NO_ERROR = 0, DISK_PARTITION_OVERLAPS_EXISTING = -1000, DISK_PARTITION_EXCEEDS_DISK = -1001, DISK_CREATE_PARTITION_EXT_ONLY_ONCE = -1002,
  DISK_CREATE_PARTITION_EXT_IMPOSSIBLE = -1003, DISK_PARTITION_NO_FREE_NUMBER = -1004, DISK_CREATE_PARTITION_INVALID_VOLUME = -1005, DISK_CREATE_PARTITION_INVALID_TYPE = -1006,
  DISK_CREATE_PARTITION_PARTED_FAILED = -1007, DISK_PARTITION_NOT_FOUND = -1008, DISK_CREATE_PARTITION_LOGICAL_NO_EXT = -1009, DISK_PARTITION_LOGICAL_OUTSIDE_EXT = -1010,
  DISK_SET_TYPE_INVALID_VOLUME = -1011, DISK_SET_TYPE_PARTED_FAILED = -1012, DISK_SET_LABEL_PARTED_FAILED = -1013, DISK_REMOVE_PARTITION_PARTED_FAILED = -1014,
  DISK_REMOVE_PARTITION_INVALID_VOLUME = -1015, DISK_REMOVE_PARTITION_LIST_ERASE = -1016, DISK_DESTROY_TABLE_INVALID_LABEL = -1017, DISK_PARTITION_ZERO_SIZE = -1018,
  DISK_CHANGE_READONLY = -1019, DISK_RESIZE_PARTITION_INVALID_VOLUME = -1020, DISK_RESIZE_PARTITION_PARTED_FAILED = -1021, DISK_RESIZE_NO_SPACE = -1022,
  DISK_CHECK_RESIZE_INVALID_VOLUME = -1023, DISK_REMOVE_PARTITION_CREATE_NOT_FOUND = -1024, DISK_COMMIT_NOTHING_TODO = -1025, DISK_CREATE_PARTITION_NO_SPACE = -1026,
  DISK_REMOVE_USED_BY = -1027, DISK_INIT_NOT_POSSIBLE = -1028, DISK_INVALID_PARTITION_ID = -1029, STORAGE_DISK_NOT_FOUND = -2000,
  STORAGE_VOLUME_NOT_FOUND = -2001, STORAGE_REMOVE_PARTITION_INVALID_CONTAINER = -2002, STORAGE_CHANGE_PARTITION_ID_INVALID_CONTAINER = -2003, STORAGE_CHANGE_READONLY = -2004,
  STORAGE_DISK_USED_BY = -2005, STORAGE_LVM_VG_EXISTS = -2006, STORAGE_LVM_VG_NOT_FOUND = -2007, STORAGE_LVM_INVALID_DEVICE = -2008,
  STORAGE_CONTAINER_NOT_FOUND = -2009, STORAGE_VG_INVALID_NAME = -2010, STORAGE_REMOVE_USED_VOLUME = -2011, STORAGE_REMOVE_USING_UNKNOWN_TYPE = -2012,
  STORAGE_NOT_YET_IMPLEMENTED = -2013, STORAGE_MD_INVALID_NAME = -2014, STORAGE_MD_NOT_FOUND = -2015, STORAGE_MEMORY_EXHAUSTED = -2016,
  STORAGE_LOOP_NOT_FOUND = -2017, STORAGE_CREATED_LOOP_NOT_FOUND = -2018, STORAGE_CHANGE_AREA_INVALID_CONTAINER = -2023, STORAGE_BACKUP_STATE_NOT_FOUND = -2024,
  STORAGE_INVALID_FSTAB_VALUE = -2025, STORAGE_NO_FSTAB_PTR = -2026, STORAGE_DEVICE_NODE_NOT_FOUND = -2027, STORAGE_DMRAID_CO_NOT_FOUND = -2028,
  STORAGE_RESIZE_INVALID_CONTAINER = -2029, STORAGE_DMMULTIPATH_CO_NOT_FOUND = -2030, STORAGE_ZERO_DEVICE_FAILED = -2031, STORAGE_INVALID_BACKUP_STATE_NAME = -2032,
  STORAGE_MDPART_CO_NOT_FOUND = -2033, STORAGE_DEVICE_NOT_FOUND = -2034, STORAGE_BTRFS_CO_NOT_FOUND = -2035, STORAGE_TMPFS_CO_NOT_FOUND = -2036,
  VOLUME_COMMIT_UNKNOWN_STAGE = -3000, VOLUME_FSTAB_EMPTY_MOUNT = -3001, VOLUME_UMOUNT_FAILED = -3002, VOLUME_MOUNT_FAILED = -3003,
  VOLUME_FORMAT_UNKNOWN_FS = -3005, VOLUME_FORMAT_FS_UNDETECTED = -3006, VOLUME_FORMAT_FS_TOO_SMALL = -3007, VOLUME_FORMAT_FAILED = -3008,
  VOLUME_TUNE2FS_FAILED = -3009, VOLUME_MKLABEL_FS_UNABLE = -3010, VOLUME_MKLABEL_FAILED = -3011, VOLUME_LOSETUP_NO_LOOP = -3012,
  VOLUME_LOSETUP_FAILED = -3013, VOLUME_CRYPT_NO_PWD = -3014, VOLUME_CRYPT_PWD_TOO_SHORT = -3015, VOLUME_CRYPT_NOT_DETECTED = -3016,
  VOLUME_FORMAT_EXTENDED_UNSUPPORTED = -3017, VOLUME_MOUNT_EXTENDED_UNSUPPORTED = -3018, VOLUME_MOUNT_POINT_INVALID = -3019, VOLUME_MOUNTBY_NOT_ENCRYPTED = -3020,
  VOLUME_MOUNTBY_UNSUPPORTED_BY_FS = -3021, VOLUME_LABEL_NOT_SUPPORTED = -3022, VOLUME_LABEL_TOO_LONG = -3023, VOLUME_LABEL_WHILE_MOUNTED = -3024,
  VOLUME_RESIZE_UNSUPPORTED_BY_FS = -3025, VOLUME_RESIZE_UNSUPPORTED_BY_CONTAINER = -3026, VOLUME_RESIZE_FAILED = -3027, VOLUME_ALREADY_IN_USE = -3028,
  VOLUME_LOUNSETUP_FAILED = -3029, VOLUME_DEVICE_NOT_PRESENT = -3030, VOLUME_DEVICE_NOT_BLOCK = -3031, VOLUME_MOUNTBY_UNSUPPORTED_BY_VOLUME = -3032,
  VOLUME_CRYPTFORMAT_FAILED = -3033, VOLUME_CRYPTSETUP_FAILED = -3034, VOLUME_CRYPTUNSETUP_FAILED = -3035, VOLUME_FORMAT_NOT_IMPLEMENTED = -3036,
  VOLUME_FORMAT_IMPOSSIBLE = -3037, VOLUME_CRYPT_NFS_IMPOSSIBLE = -3038, VOLUME_REMOUNT_FAILED = -3039, VOLUME_TUNEREISERFS_FAILED = -3040,
  VOLUME_UMOUNT_NOT_MOUNTED = -3041, VOLUME_BTRFS_ADD_FAILED = -3042, VOLUME_CANNOT_TMP_MOUNT = -3043, VOLUME_CANNOT_TMP_UMOUNT = -3044,
  VOLUME_BTRFS_SUBVOL_INIT_FAILED = -3045, VOLUME_BTRFS_SUBVOL_DETDEFAULT = -3046, LVM_CREATE_PV_FAILED = -4000, LVM_PV_ALREADY_CONTAINED = -4001,
  LVM_PV_DEVICE_UNKNOWN = -4002, LVM_PV_DEVICE_USED = -4003, LVM_VG_HAS_NONE_PV = -4004, LVM_LV_INVALID_NAME = -4005,
  LVM_LV_DUPLICATE_NAME = -4006, LVM_LV_NO_SPACE = -4007, LVM_LV_UNKNOWN_NAME = -4008, LVM_LV_NOT_IN_LIST = -4009,
  LVM_VG_CREATE_FAILED = -4010, LVM_VG_EXTEND_FAILED = -4011, LVM_VG_REDUCE_FAILED = -4012, LVM_VG_REMOVE_FAILED = -4013,
  LVM_LV_CREATE_FAILED = -4014, LVM_LV_REMOVE_FAILED = -4015, LVM_LV_RESIZE_FAILED = -4016, LVM_PV_STILL_ADDED = -4017,
  LVM_PV_REMOVE_NOT_FOUND = -4018, LVM_CREATE_LV_INVALID_VOLUME = -4019, LVM_REMOVE_LV_INVALID_VOLUME = -4020, LVM_RESIZE_LV_INVALID_VOLUME = -4021,
  LVM_CHANGE_READONLY = -4022, LVM_CHECK_RESIZE_INVALID_VOLUME = -4023, LVM_COMMIT_NOTHING_TODO = -4024, LVM_LV_REMOVE_USED_BY = -4025,
  LVM_LV_ALREADY_ON_DISK = -4026, LVM_LV_NO_STRIPE_SIZE = -4027, LVM_LV_UNKNOWN_ORIGIN = -4028, LVM_LV_NOT_ON_DISK = -4029,
  LVM_LV_NOT_SNAPSHOT = -4030, LVM_LV_HAS_SNAPSHOTS = -4031, LVM_LV_IS_SNAPSHOT = -4032, LVM_LIST_EMPTY = -4033,
  FSTAB_ENTRY_NOT_FOUND = -5000, FSTAB_CHANGE_PREFIX_IMPOSSIBLE = -5001, FSTAB_REMOVE_ENTRY_NOT_FOUND = -5002, FSTAB_UPDATE_ENTRY_NOT_FOUND = -5003,
  FSTAB_ADD_ENTRY_FOUND = -5004, MD_CHANGE_READONLY = -6000, MD_DUPLICATE_NUMBER = -6001, MD_TOO_FEW_DEVICES = -6002,
  MD_DEVICE_UNKNOWN = -6003, MD_DEVICE_USED = -6004, MD_CREATE_INVALID_VOLUME = -6005, MD_REMOVE_FAILED = -6006,
  MD_NOT_IN_LIST = -6007, MD_CREATE_FAILED = -6008, MD_UNKNOWN_NUMBER = -6009, MD_REMOVE_USED_BY = -6010,
  MD_NUMBER_TOO_LARGE = -6011, MD_REMOVE_INVALID_VOLUME = -6012, MD_REMOVE_CREATE_NOT_FOUND = -6013, MD_NO_RESIZE_ON_DISK = -6014,
  MD_ADD_DUPLICATE = -6015, MD_REMOVE_NONEXISTENT = -6016, MD_NO_CHANGE_ON_DISK = -6017, MD_NO_CREATE_UNKNOWN = -6018,
  MD_STATE_NOT_ON_DISK = -6019, MD_PARTITION_NOT_FOUND = -6020, MD_INVALID_PARITY = -6021, MD_TOO_MANY_SPARES = -6022,
  MD_GET_STATE_FAILED = -6023, MDPART_CHANGE_READONLY = -6100, MDPART_INTERNAL_ERR = -6101, MDPART_INVALID_VOLUME = -6012,
  MDPART_PARTITION_NOT_FOUND = -6103, MDPART_REMOVE_PARTITION_LIST_ERASE = -6104, MDPART_COMMIT_NOTHING_TODO = -6105, MDPART_NO_REMOVE = -6106,
  MDPART_DEVICE_NOT_FOUND = -6107, LOOP_CHANGE_READONLY = -7000, LOOP_DUPLICATE_FILE = -7001, LOOP_UNKNOWN_FILE = -7002,
  LOOP_REMOVE_USED_BY = -7003, LOOP_FILE_CREATE_FAILED = -7004, LOOP_CREATE_INVALID_VOLUME = -7005, LOOP_REMOVE_FILE_FAILED = -7006,
  LOOP_REMOVE_INVALID_VOLUME = -7007, LOOP_NOT_IN_LIST = -7008, LOOP_REMOVE_CREATE_NOT_FOUND = -7009, LOOP_MODIFY_EXISTING = -7010,
  PEC_PE_SIZE_INVALID = -9000, PEC_PV_NOT_FOUND = -9001, PEC_REMOVE_PV_IN_USE = -9002, PEC_REMOVE_PV_SIZE_NEEDED = -9003,
  PEC_LV_NO_SPACE_STRIPED = -9004, PEC_LV_NO_SPACE_SINGLE = -9005, PEC_LV_PE_DEV_NOT_FOUND = -9006, DM_CHANGE_READONLY = -10000,
  DM_UNKNOWN_TABLE = -10001, DM_REMOVE_USED_BY = -10002, DM_REMOVE_CREATE_NOT_FOUND = -10003, DM_REMOVE_INVALID_VOLUME = -10004,
  DM_REMOVE_FAILED = -10005, DM_NOT_IN_LIST = -10006, DASD_NOT_POSSIBLE = -11000, DASD_FDASD_FAILED = -11001,
  DASD_DASDFMT_FAILED = -11002, DMPART_CHANGE_READONLY = -12001, DMPART_INTERNAL_ERR = -12002, DMPART_INVALID_VOLUME = -12003,
  DMPART_PARTITION_NOT_FOUND = -12004, DMPART_REMOVE_PARTITION_LIST_ERASE = -12005, DMPART_COMMIT_NOTHING_TODO = -12006, DMPART_NO_REMOVE = -12007,
  DMRAID_REMOVE_FAILED = -13001, NFS_VOLUME_NOT_FOUND = -14001, NFS_CHANGE_READONLY = -14002, NFS_REMOVE_VOLUME_CREATE_NOT_FOUND = -14003,
  NFS_REMOVE_VOLUME_LIST_ERASE = -14004, NFS_REMOVE_INVALID_VOLUME = -14005, BTRFS_COMMIT_INVALID_VOLUME = -15001, BTRFS_CANNOT_TMP_MOUNT = -15002,
  BTRFS_CANNOT_TMP_UMOUNT = -15003, BTRFS_DELETE_SUBVOL_FAIL = -15004, BTRFS_CREATE_SUBVOL_FAIL = -15005, BTRFS_VOLUME_NOT_FOUND = -15006,
  BTRFS_SUBVOL_EXISTS = -15007, BTRFS_SUBVOL_NON_EXISTS = -15008, BTRFS_REMOVE_NOT_FOUND = -15009, BTRFS_REMOVE_NO_BTRFS = -15010,
  BTRFS_REMOVE_INVALID_VOLUME = -15011, BTRFS_CHANGE_READONLY = -15012, BTRFS_DEV_ALREADY_CONTAINED = -15013, BTRFS_DEVICE_UNKNOWN = -15014,
  BTRFS_DEVICE_USED = -15015, BTRFS_HAS_NONE_DEV = -15016, BTRFS_DEV_NOT_FOUND = -15017, BTRFS_EXTEND_FAIL = -15018,
  BTRFS_REDUCE_FAIL = -15019, BTRFS_LIST_EMPTY = -15020, TMPFS_REMOVE_INVALID_VOLUME = -16001, TMPFS_REMOVE_NO_TMPFS = -16002,
  TMPFS_REMOVE_NOT_FOUND = -16003, CONTAINER_INTERNAL_ERROR = -99000, CONTAINER_INVALID_VIRTUAL_CALL = -99001
}
enum  CommitStage {
  DECREASE, INCREASE, FORMAT, SUBVOL,
  MOUNT
}

Functions

void createPath (const string &Path_Cv)
bool checkDir (const string &Path_Cv)
bool getStatMode (const string &Path_Cv, mode_t &val)
bool setStatMode (const string &Path_Cv, mode_t val)
bool checkNormalFile (const string &Path_Cv)
list< string > glob (const string &path, int flags)
bool getStatVfs (const string &path, StatVfs &buf)
bool getMajorMinor (const string &device, unsigned long &major, unsigned long &minor)
string extractNthWord (int Num_iv, const string &Line_Cv, bool GetRest_bi)
list< string > splitString (const string &s, const string &delChars, bool multipleDelim, bool skipEmpty, const string &quotes)
map< string, string > makeMap (const list< string > &l, const string &delim, const string &removeSur)
string normalizeDevice (const string &dev)
list< string > normalizeDevices (const list< string > &devs)
bool isNfsDev (const string &dev)
string undevDevice (const string &dev)
void createLogger (const string &name, const string &logpath, const string &logfile)
bool testLogLevel (LogLevel level)
void prepareLogStream (ostringstream &stream)
ostringstream * logStreamOpen ()
void logStreamClose (LogLevel level, const char *file, unsigned line, const char *func, ostringstream *stream)
string udevAppendPart (const string &s, unsigned num)
string udevEncode (const string &s)
string udevDecode (const string &s)
bool mkdtemp (string &path)
bool readlink (const string &path, string &buf)
bool readlinkat (int fd, const string &path, string &buf)
map< string, string > getUdevLinks (const char *path)
map< string, string > getDirLinks (const string &dir)
unsigned getMajorDevices (const char *driver)
string sformat (const string &format, va_list ap)
Text sformat (const Text &format,...)
Text _ (const char *msgid)
Text _ (const char *msgid, const char *msgid_plural, unsigned long int n)
string hostname ()
string datetime ()
std::ostream & operator<< (std::ostream &s, const StopWatch &sw)
template<class StreamType>
void classic (StreamType &stream)
std::ostream & operator<< (std::ostream &s, const ArchInfo &archinfo)
std::ostream & operator<< (std::ostream &s, const Blkid::Entry &entry)
std::ostream & operator<< (std::ostream &s, const Btrfs &v)
std::ostream & operator<< (std::ostream &s, const BtrfsCo &d)
std::ostream & operator<< (std::ostream &s, const Container &c)
static bool needDasdfmt (const Disk &d)
std::ostream & operator<< (std::ostream &s, const Dasd &d)
std::ostream & operator<< (std::ostream &s, const Fdasd::Entry &e)
std::ostream & operator<< (std::ostream &s, const Device &d)
static bool notDeletedPri (const Partition &p)
static bool notDeletedExt (const Partition &p)
static bool notDeletedLog (const Partition &p)
static bool notDeletedNotLog (const Partition &p)
static bool existingNotLog (const Partition &p)
static bool existingLog (const Partition &p)
static bool notCreatedPrimary (const Partition &p)
static bool regions_sort_size (const Region &rhs, const Region &lhs)
static bool volume_ptr_sort_nr (Partition *&rhs, Partition *&lhs)
static bool logicalCreated (const Partition &p)
unsigned long sub_sat (unsigned long a, unsigned long b)
std::ostream & operator<< (std::ostream &s, const Disk &d)
std::ostream & operator<< (std::ostream &s, const Dm &p)
std::ostream & operator<< (std::ostream &s, const DmCo &d)
std::ostream & operator<< (std::ostream &s, const Dmmultipath &p)
std::ostream & operator<< (std::ostream &s, const DmmultipathCo &d)
std::ostream & operator<< (std::ostream &s, const DmPart &p)
static bool toChangeId (const DmPart &d)
std::ostream & operator<< (std::ostream &s, const DmPartCo &d)
std::ostream & operator<< (std::ostream &s, const Dmraid &p)
std::ostream & operator<< (std::ostream &s, const DmraidCo &d)
template<typename EnumType>
const string & toString (EnumType value)
template<typename EnumType>
bool toValue (const string &str, EnumType &value, bool log_error=true)
template<typename EnumType>
EnumType toValueWithFallback (const string &str, EnumType fallback, bool log_error=true)
static list< string > makeStringList (const FstabEntry &e)
static list< string > makeCrStringList (const FstabEntry &e)
std::ostream & operator<< (std::ostream &s, const FstabEntry &v)
std::ostream & operator<< (std::ostream &s, const FstabChange &v)
std::ostream & operator<< (std::ostream &s, const EtcMdadm::mdconf_info &info)
std::ostream & operator<< (std::ostream &s, const ResizeInfo &resize_info)
std::ostream & operator<< (std::ostream &s, const ContentInfo &content_info)
std::ostream & operator<< (std::ostream &s, const FreeInfo &free_info)
std::ostream & operator<< (std::ostream &s, const Geometry &geo)
bool getChildValue (const xmlNode *node, const char *name, Geometry &value)
void setChildValue (xmlNode *node, const char *name, const Geometry &value)
bool detectGeometry (const string &device, Geometry &geo)
ostream & operator<< (ostream &s, const Graph::Node &node)
ostream & operator<< (ostream &s, const Graph::Edge &edge)
ostream & operator<< (ostream &s, const Graph::Rank &rank)
bool saveDeviceGraph (StorageInterface *s, const string &filename)
bool saveMountGraph (StorageInterface *s, const string &filename)
int numSuffixes ()
list< TextgetAllSuffixes (int i, bool all=false, bool sloppy=false)
string getSuffix (int i, bool classic)
string byteToHumanString (unsigned long long size, bool classic, int precision, bool omit_zeroes)
bool humanStringToByte (const string &str, bool classic, unsigned long long &size)
template<class Container, class Iter>
IterPair< Iter > MakeIterPair (Container &c)
std::ostream & operator<< (std::ostream &s, const Loop &l)
std::ostream & operator<< (std::ostream &s, const LoopCo &d)
std::ostream & operator<< (std::ostream &s, const Lsscsi::Entry &entry)
std::ostream & operator<< (std::ostream &s, const LvmLv &p)
static bool lvNotCreated (const LvmLv &l)
static bool lvNotDeletedCreated (const LvmLv &l)
static bool lvDeleted (const LvmLv &l)
static bool lvCreated (const LvmLv &l)
static bool lvResized (const LvmLv &l)
std::ostream & operator<< (std::ostream &s, const LvmVg &d)
std::ostream & operator<< (std::ostream &s, const Md &m)
std::ostream & operator<< (std::ostream &s, const MdCo &d)
std::ostream & operator<< (std::ostream &s, const MdPart &p)
static bool toChangeId (const MdPart &d)
std::ostream & operator<< (std::ostream &s, const MdPartCo &d)
std::ostream & operator<< (std::ostream &s, const Nfs &l)
std::ostream & operator<< (std::ostream &s, const NfsCo &d)
std::ostream & operator<< (std::ostream &s, const Parted::Entry &e)
std::ostream & operator<< (std::ostream &s, const Partition &p)
void printDevList (std::ostream &s, const std::list< PeContainer::Pv > &l)
std::ostream & operator<< (std::ostream &s, const PeContainer &d)
std::ostream & operator<< (std::ostream &s, const PeContainer::Pv &v)
std::ostream & operator<< (std::ostream &s, const ProcMdstat::Entry &entry)
bool getMdadmDetails (const string &dev, MdadmDetails &detail)
bool isImsmPlatform ()
std::ostream & operator<< (std::ostream &s, const Region &p)
bool getChildValue (const xmlNode *node, const char *name, Region &value)
void setChildValue (xmlNode *node, const char *name, const Region &value)
void initDefaultLogger ()
std::ostream & operator<< (std::ostream &s, const Environment &env)
std::ostream & operator<< (std::ostream &s, const storage::DiskData &d)
StorageInterfacecreateStorageInterface (const Environment &env)
StorageInterfacecreateStorageInterfacePid (const Environment &env, pid_t &locker_pid)
void destroyStorageInterface (StorageInterface *p)
static bool sort_cont_up (const Container *rhs, const Container *lhs)
static bool sort_cont_down (const Container *rhs, const Container *lhs)
static bool sort_vol_normal (const Volume *rhs, const Volume *lhs)
static bool sort_vol_delete (const Volume *rhs, const Volume *lhs)
static bool sort_vol_create (const Volume *rhs, const Volume *lhs)
static bool sort_vol_mount (const Volume *rhs, const Volume *lhs)
static bool notLoop (const Container &c)
static bool fstabAdded (const Volume &v)
static bool isDmContainer (const Container &co)
std::ostream & operator<< (std::ostream &s, const Storage &v)
std::ostream & operator<< (std::ostream &s, Storage &v)
StorageInterfacecreateStorageInterfacePid (const Environment &env, int &locker_pid)
template<class Num>
string decString (Num number)
template<class Num>
string hexString (Num number)
template<class Value>
void operator>> (const string &d, Value &v)
template<class Value>
std::ostream & operator<< (std::ostream &s, const std::list< Value > &l)
template<class Value>
std::ostream & operator<< (std::ostream &s, const std::deque< Value > &l)
template<class F, class S>
std::ostream & operator<< (std::ostream &s, const std::pair< F, S > &p)
template<class Key, class Value>
std::ostream & operator<< (std::ostream &s, const std::map< Key, Value > &m)
template<typename Type>
void logDiff (std::ostream &log, const char *text, const Type &lhs, const Type &rhs)
template<typename Type>
void logDiffHex (std::ostream &log, const char *text, const Type &lhs, const Type &rhs)
template<typename Type>
void logDiffEnum (std::ostream &log, const char *text, const Type &lhs, const Type &rhs)
void logDiff (std::ostream &log, const char *text, bool lhs, bool rhs)
template<class Type>
bool read_sysfs_property (const string &path, Type &value, bool log_error=true)
template<class Type>
void pointerIntoSortedList (list< Type * > &l, Type *e)
template<class Type>
void clearPointerList (list< Type * > &l)
template<typename ListType, typename Type>
bool contains (const ListType &l, const Type &value)
template<typename ListType, typename Predicate>
bool contains_if (const ListType &l, Predicate pred)
template<typename Map, typename Key, typename Value>
Map::iterator mapInsertOrReplace (Map &m, const Key &k, const Value &v)
template<typename List, typename Value>
List::const_iterator addIfNotThere (List &l, const Value &v)
template<class InputIterator1, class InputIterator2>
bool equalContent (InputIterator1 first1, InputIterator1 last1, InputIterator2 first2, InputIterator2 last2)
template<class InputIterator1, class InputIterator2>
void logVolumesDifference (std::ostream &log, InputIterator1 first1, InputIterator1 last1, InputIterator2 first2, InputIterator2 last2)
template<class T, unsigned int sz>
unsigned int lengthof (T(&)[sz])
template<class Type>
void printtype (Type type)
std::ostream & operator<< (std::ostream &s, const commitAction &a)
std::ostream & operator<< (std::ostream &s, const UsedBy &usedby)
void setChildValue (xmlNode *node, const char *name, const UsedBy &value)
std::ostream & operator<< (std::ostream &s, const Subvolume &sv)
void setChildValue (xmlNode *node, const char *name, const Subvolume &v)
std::ostream & operator<< (std::ostream &s, const PartitionSlotInfo &a)
std::ostream & operator<< (std::ostream &s, const FsCapabilities &a)
bool operator< (CType a, CType b)
bool operator<= (CType a, CType b)
bool operator>= (CType a, CType b)
bool operator> (CType a, CType b)
template<class Pred>
vector< string >::iterator find_if (vector< string > &lines, Pred pred)
template<class Pred>
vector< string >::const_iterator find_if (const vector< string > &lines, Pred pred)
string quote (const string &str)
string quote (const std::list< string > &strs)
std::ostream & operator<< (std::ostream &s, const Tmpfs &v)
std::ostream & operator<< (std::ostream &s, const TmpfsCo &d)
static string handle_O_Features (const string &opts)
bool hasLoopDevice (const Volume &v)
static bool haveQuota (const string &fstopt)
std::ostream & operator<< (std::ostream &s, const Volume &v)
xmlNode * xmlNewNode (const char *name)
xmlNode * xmlNewChild (xmlNode *node, const char *name)
const xmlNode * getChildNode (const xmlNode *node, const char *name)
list< const xmlNode * > getChildNodes (const xmlNode *node, const char *name)
bool getChildValue (const xmlNode *node, const char *name, string &value)
bool getChildValue (const xmlNode *node, const char *name, bool &value)
void setChildValue (xmlNode *node, const char *name, const char *value)
void setChildValue (xmlNode *node, const char *name, const string &value)
void setChildValue (xmlNode *node, const char *name, bool value)
template<typename Type>
bool getChildValue (const xmlNode *node, const char *name, Type &value)
template<typename Type>
void setChildValue (xmlNode *node, const char *name, const Type &value)
template<typename Type>
void setChildValue (xmlNode *node, const char *name, const list< Type > &values)

Variables

static const blocxx::String component = "libstorage"
const string app_ws = " \t\n"
static const string dasd_format_names []
const unsigned int fuzz_cyl = 2
static const char * elem [] = { "crypt" }
static const string fs_type_names []
static const string partition_type_names []
static const string mount_by_names []
static const string encrypt_names []
static const string md_type_names []
static const string md_parity_names []
static const string md_array_state_names []
static const string used_by_type_names []
static const string c_type_names []
static const string transport_names []
static const string imsm_driver_names []
static const string multipath_autostart_names []
static const string part_align_names []
CallbackProgressBar progress_bar_cb_ycp = NULL
CallbackShowInstallInfo install_info_cb_ycp = NULL
CallbackInfoPopup info_popup_cb_ycp = NULL
CallbackYesNoPopup yesno_popup_cb_ycp = NULL
CallbackCommitErrorPopup commit_error_popup_cb_ycp = NULL
CallbackPasswordPopup password_popup_cb_ycp = NULL


Typedef Documentation

typedef bool(* storage::CallbackCommitErrorPopup)(int error, const string &last_action, const string &extended_message)

typedef for a pointer to a function that asks whether to continue after an commit error. If true is returned the commit error is ignored and the commit continues.

typedef void(* storage::CallbackInfoPopup)(const string &text)

typedef for a pointer to a function that displays a popup with the given text and waits for user confirmation.

typedef bool(* storage::CallbackPasswordPopup)(const string &device, int attempts, string &password)

typedef for a pointer to a function that asks for the password of the given device. If the user does not want to decrypt the device false is returned, true otherwise.

typedef void(* storage::CallbackProgressBar)(const string &id, unsigned cur, unsigned max)

typedef for a pointer to a function that is called on progress bar events.

typedef void(* storage::CallbackShowInstallInfo)(const string &id)

typedef for a pointer to a function that is called with strings telling the user what is currently going on.

typedef bool(* storage::CallbackYesNoPopup)(const string &text)

typedef for a pointer to a function that displays a popup with the given text and two buttons labels "Yes" and "No". The user has to press on of these buttons. If the user presses "Yes" true is returned, false otherwise.


Enumeration Type Documentation

Enumerator:
DECREASE 
INCREASE 
FORMAT 
SUBVOL 
MOUNT 

Enumerator:
CUNKNOWN 
DISK 
MD 
LOOP 
LVM 
DM 
DMRAID 
NFSC 
DMMULTIPATH 
MDPART 
BTRFSC 
TMPFSC 

Enumerator:
ENC_NONE 
ENC_TWOFISH 
ENC_TWOFISH_OLD 
ENC_TWOFISH256_OLD 
ENC_LUKS 
ENC_UNKNOWN 

preliminary list of error codes, must have negative values

Enumerator:
STORAGE_NO_ERROR 
DISK_PARTITION_OVERLAPS_EXISTING 
DISK_PARTITION_EXCEEDS_DISK 
DISK_CREATE_PARTITION_EXT_ONLY_ONCE 
DISK_CREATE_PARTITION_EXT_IMPOSSIBLE 
DISK_PARTITION_NO_FREE_NUMBER 
DISK_CREATE_PARTITION_INVALID_VOLUME 
DISK_CREATE_PARTITION_INVALID_TYPE 
DISK_CREATE_PARTITION_PARTED_FAILED 
DISK_PARTITION_NOT_FOUND 
DISK_CREATE_PARTITION_LOGICAL_NO_EXT 
DISK_PARTITION_LOGICAL_OUTSIDE_EXT 
DISK_SET_TYPE_INVALID_VOLUME 
DISK_SET_TYPE_PARTED_FAILED 
DISK_SET_LABEL_PARTED_FAILED 
DISK_REMOVE_PARTITION_PARTED_FAILED 
DISK_REMOVE_PARTITION_INVALID_VOLUME 
DISK_REMOVE_PARTITION_LIST_ERASE 
DISK_DESTROY_TABLE_INVALID_LABEL 
DISK_PARTITION_ZERO_SIZE 
DISK_CHANGE_READONLY 
DISK_RESIZE_PARTITION_INVALID_VOLUME 
DISK_RESIZE_PARTITION_PARTED_FAILED 
DISK_RESIZE_NO_SPACE 
DISK_CHECK_RESIZE_INVALID_VOLUME 
DISK_REMOVE_PARTITION_CREATE_NOT_FOUND 
DISK_COMMIT_NOTHING_TODO 
DISK_CREATE_PARTITION_NO_SPACE 
DISK_REMOVE_USED_BY 
DISK_INIT_NOT_POSSIBLE 
DISK_INVALID_PARTITION_ID 
STORAGE_DISK_NOT_FOUND 
STORAGE_VOLUME_NOT_FOUND 
STORAGE_REMOVE_PARTITION_INVALID_CONTAINER 
STORAGE_CHANGE_PARTITION_ID_INVALID_CONTAINER 
STORAGE_CHANGE_READONLY 
STORAGE_DISK_USED_BY 
STORAGE_LVM_VG_EXISTS 
STORAGE_LVM_VG_NOT_FOUND 
STORAGE_LVM_INVALID_DEVICE 
STORAGE_CONTAINER_NOT_FOUND 
STORAGE_VG_INVALID_NAME 
STORAGE_REMOVE_USED_VOLUME 
STORAGE_REMOVE_USING_UNKNOWN_TYPE 
STORAGE_NOT_YET_IMPLEMENTED 
STORAGE_MD_INVALID_NAME 
STORAGE_MD_NOT_FOUND 
STORAGE_MEMORY_EXHAUSTED 
STORAGE_LOOP_NOT_FOUND 
STORAGE_CREATED_LOOP_NOT_FOUND 
STORAGE_CHANGE_AREA_INVALID_CONTAINER 
STORAGE_BACKUP_STATE_NOT_FOUND 
STORAGE_INVALID_FSTAB_VALUE 
STORAGE_NO_FSTAB_PTR 
STORAGE_DEVICE_NODE_NOT_FOUND 
STORAGE_DMRAID_CO_NOT_FOUND 
STORAGE_RESIZE_INVALID_CONTAINER 
STORAGE_DMMULTIPATH_CO_NOT_FOUND 
STORAGE_ZERO_DEVICE_FAILED 
STORAGE_INVALID_BACKUP_STATE_NAME 
STORAGE_MDPART_CO_NOT_FOUND 
STORAGE_DEVICE_NOT_FOUND 
STORAGE_BTRFS_CO_NOT_FOUND 
STORAGE_TMPFS_CO_NOT_FOUND 
VOLUME_COMMIT_UNKNOWN_STAGE 
VOLUME_FSTAB_EMPTY_MOUNT 
VOLUME_UMOUNT_FAILED 
VOLUME_MOUNT_FAILED 
VOLUME_FORMAT_UNKNOWN_FS 
VOLUME_FORMAT_FS_UNDETECTED 
VOLUME_FORMAT_FS_TOO_SMALL 
VOLUME_FORMAT_FAILED 
VOLUME_TUNE2FS_FAILED 
VOLUME_MKLABEL_FS_UNABLE 
VOLUME_MKLABEL_FAILED 
VOLUME_LOSETUP_NO_LOOP 
VOLUME_LOSETUP_FAILED 
VOLUME_CRYPT_NO_PWD 
VOLUME_CRYPT_PWD_TOO_SHORT 
VOLUME_CRYPT_NOT_DETECTED 
VOLUME_FORMAT_EXTENDED_UNSUPPORTED 
VOLUME_MOUNT_EXTENDED_UNSUPPORTED 
VOLUME_MOUNT_POINT_INVALID 
VOLUME_MOUNTBY_NOT_ENCRYPTED 
VOLUME_MOUNTBY_UNSUPPORTED_BY_FS 
VOLUME_LABEL_NOT_SUPPORTED 
VOLUME_LABEL_TOO_LONG 
VOLUME_LABEL_WHILE_MOUNTED 
VOLUME_RESIZE_UNSUPPORTED_BY_FS 
VOLUME_RESIZE_UNSUPPORTED_BY_CONTAINER 
VOLUME_RESIZE_FAILED 
VOLUME_ALREADY_IN_USE 
VOLUME_LOUNSETUP_FAILED 
VOLUME_DEVICE_NOT_PRESENT 
VOLUME_DEVICE_NOT_BLOCK 
VOLUME_MOUNTBY_UNSUPPORTED_BY_VOLUME 
VOLUME_CRYPTFORMAT_FAILED 
VOLUME_CRYPTSETUP_FAILED 
VOLUME_CRYPTUNSETUP_FAILED 
VOLUME_FORMAT_NOT_IMPLEMENTED 
VOLUME_FORMAT_IMPOSSIBLE 
VOLUME_CRYPT_NFS_IMPOSSIBLE 
VOLUME_REMOUNT_FAILED 
VOLUME_TUNEREISERFS_FAILED 
VOLUME_UMOUNT_NOT_MOUNTED 
VOLUME_BTRFS_ADD_FAILED 
VOLUME_CANNOT_TMP_MOUNT 
VOLUME_CANNOT_TMP_UMOUNT 
VOLUME_BTRFS_SUBVOL_INIT_FAILED 
VOLUME_BTRFS_SUBVOL_DETDEFAULT 
LVM_CREATE_PV_FAILED 
LVM_PV_ALREADY_CONTAINED 
LVM_PV_DEVICE_UNKNOWN 
LVM_PV_DEVICE_USED 
LVM_VG_HAS_NONE_PV 
LVM_LV_INVALID_NAME 
LVM_LV_DUPLICATE_NAME 
LVM_LV_NO_SPACE 
LVM_LV_UNKNOWN_NAME 
LVM_LV_NOT_IN_LIST 
LVM_VG_CREATE_FAILED 
LVM_VG_EXTEND_FAILED 
LVM_VG_REDUCE_FAILED 
LVM_VG_REMOVE_FAILED 
LVM_LV_CREATE_FAILED 
LVM_LV_REMOVE_FAILED 
LVM_LV_RESIZE_FAILED 
LVM_PV_STILL_ADDED 
LVM_PV_REMOVE_NOT_FOUND 
LVM_CREATE_LV_INVALID_VOLUME 
LVM_REMOVE_LV_INVALID_VOLUME 
LVM_RESIZE_LV_INVALID_VOLUME 
LVM_CHANGE_READONLY 
LVM_CHECK_RESIZE_INVALID_VOLUME 
LVM_COMMIT_NOTHING_TODO 
LVM_LV_REMOVE_USED_BY 
LVM_LV_ALREADY_ON_DISK 
LVM_LV_NO_STRIPE_SIZE 
LVM_LV_UNKNOWN_ORIGIN 
LVM_LV_NOT_ON_DISK 
LVM_LV_NOT_SNAPSHOT 
LVM_LV_HAS_SNAPSHOTS 
LVM_LV_IS_SNAPSHOT 
LVM_LIST_EMPTY 
FSTAB_ENTRY_NOT_FOUND 
FSTAB_CHANGE_PREFIX_IMPOSSIBLE 
FSTAB_REMOVE_ENTRY_NOT_FOUND 
FSTAB_UPDATE_ENTRY_NOT_FOUND 
FSTAB_ADD_ENTRY_FOUND 
MD_CHANGE_READONLY 
MD_DUPLICATE_NUMBER 
MD_TOO_FEW_DEVICES 
MD_DEVICE_UNKNOWN 
MD_DEVICE_USED 
MD_CREATE_INVALID_VOLUME 
MD_REMOVE_FAILED 
MD_NOT_IN_LIST 
MD_CREATE_FAILED 
MD_UNKNOWN_NUMBER 
MD_REMOVE_USED_BY 
MD_NUMBER_TOO_LARGE 
MD_REMOVE_INVALID_VOLUME 
MD_REMOVE_CREATE_NOT_FOUND 
MD_NO_RESIZE_ON_DISK 
MD_ADD_DUPLICATE 
MD_REMOVE_NONEXISTENT 
MD_NO_CHANGE_ON_DISK 
MD_NO_CREATE_UNKNOWN 
MD_STATE_NOT_ON_DISK 
MD_PARTITION_NOT_FOUND 
MD_INVALID_PARITY 
MD_TOO_MANY_SPARES 
MD_GET_STATE_FAILED 
MDPART_CHANGE_READONLY 
MDPART_INTERNAL_ERR 
MDPART_INVALID_VOLUME 
MDPART_PARTITION_NOT_FOUND 
MDPART_REMOVE_PARTITION_LIST_ERASE 
MDPART_COMMIT_NOTHING_TODO 
MDPART_NO_REMOVE 
MDPART_DEVICE_NOT_FOUND 
LOOP_CHANGE_READONLY 
LOOP_DUPLICATE_FILE 
LOOP_UNKNOWN_FILE 
LOOP_REMOVE_USED_BY 
LOOP_FILE_CREATE_FAILED 
LOOP_CREATE_INVALID_VOLUME 
LOOP_REMOVE_FILE_FAILED 
LOOP_REMOVE_INVALID_VOLUME 
LOOP_NOT_IN_LIST 
LOOP_REMOVE_CREATE_NOT_FOUND 
LOOP_MODIFY_EXISTING 
PEC_PE_SIZE_INVALID 
PEC_PV_NOT_FOUND 
PEC_REMOVE_PV_IN_USE 
PEC_REMOVE_PV_SIZE_NEEDED 
PEC_LV_NO_SPACE_STRIPED 
PEC_LV_NO_SPACE_SINGLE 
PEC_LV_PE_DEV_NOT_FOUND 
DM_CHANGE_READONLY 
DM_UNKNOWN_TABLE 
DM_REMOVE_USED_BY 
DM_REMOVE_CREATE_NOT_FOUND 
DM_REMOVE_INVALID_VOLUME 
DM_REMOVE_FAILED 
DM_NOT_IN_LIST 
DASD_NOT_POSSIBLE 
DASD_FDASD_FAILED 
DASD_DASDFMT_FAILED 
DMPART_CHANGE_READONLY 
DMPART_INTERNAL_ERR 
DMPART_INVALID_VOLUME 
DMPART_PARTITION_NOT_FOUND 
DMPART_REMOVE_PARTITION_LIST_ERASE 
DMPART_COMMIT_NOTHING_TODO 
DMPART_NO_REMOVE 
DMRAID_REMOVE_FAILED 
NFS_VOLUME_NOT_FOUND 
NFS_CHANGE_READONLY 
NFS_REMOVE_VOLUME_CREATE_NOT_FOUND 
NFS_REMOVE_VOLUME_LIST_ERASE 
NFS_REMOVE_INVALID_VOLUME 
BTRFS_COMMIT_INVALID_VOLUME 
BTRFS_CANNOT_TMP_MOUNT 
BTRFS_CANNOT_TMP_UMOUNT 
BTRFS_DELETE_SUBVOL_FAIL 
BTRFS_CREATE_SUBVOL_FAIL 
BTRFS_VOLUME_NOT_FOUND 
BTRFS_SUBVOL_EXISTS 
BTRFS_SUBVOL_NON_EXISTS 
BTRFS_REMOVE_NOT_FOUND 
BTRFS_REMOVE_NO_BTRFS 
BTRFS_REMOVE_INVALID_VOLUME 
BTRFS_CHANGE_READONLY 
BTRFS_DEV_ALREADY_CONTAINED 
BTRFS_DEVICE_UNKNOWN 
BTRFS_DEVICE_USED 
BTRFS_HAS_NONE_DEV 
BTRFS_DEV_NOT_FOUND 
BTRFS_EXTEND_FAIL 
BTRFS_REDUCE_FAIL 
BTRFS_LIST_EMPTY 
TMPFS_REMOVE_INVALID_VOLUME 
TMPFS_REMOVE_NO_TMPFS 
TMPFS_REMOVE_NOT_FOUND 
CONTAINER_INTERNAL_ERROR 
CONTAINER_INVALID_VIRTUAL_CALL 

Enumerator:
FSUNKNOWN 
REISERFS 
EXT2 
EXT3 
EXT4 
BTRFS 
VFAT 
XFS 
JFS 
HFS 
NTFS 
SWAP 
HFSPLUS 
NFS 
NFS4 
TMPFS 
FSNONE 

Enumerator:
IMSM_UNDECIDED 
IMSM_DMRAID 
IMSM_MDADM 

Enumerator:
DEBUG 
MILESTONE 
WARNING 
ERROR 

Enumerator:
UNKNOWN 
CLEAR 
INACTIVE 
SUSPENDED 
READONLY 
READ_AUTO 
CLEAN 
ACTIVE 
WRITE_PENDING 
ACTIVE_IDLE 

Enumerator:
PAR_DEFAULT 
LEFT_ASYMMETRIC 
LEFT_SYMMETRIC 
RIGHT_ASYMMETRIC 
RIGHT_SYMMETRIC 
PAR_FIRST 
PAR_LAST 
LEFT_ASYMMETRIC_6 
LEFT_SYMMETRIC_6 
RIGHT_ASYMMETRIC_6 
RIGHT_SYMMETRIC_6 
PAR_FIRST_6 
PAR_NEAR_2 
PAR_OFFSET_2 
PAR_FAR_2 
PAR_NEAR_3 
PAR_OFFSET_3 
PAR_FAR_3 

Enumerator:
RAID_UNK 
RAID0 
RAID1 
RAID5 
RAID6 
RAID10 
MULTIPATH 

Enumerator:
MOUNTBY_DEVICE 
MOUNTBY_UUID 
MOUNTBY_LABEL 
MOUNTBY_ID 
MOUNTBY_PATH 

Enumerator:
MPAS_UNDECIDED 
MPAS_ON 
MPAS_OFF 

Enumerator:
ALIGN_OPTIMAL 
ALIGN_CYLINDER 

Enumerator:
PRIMARY 
EXTENDED 
LOGICAL 
PTYPE_ANY 

Enumerator:
TUNKNOWN 
SBP 
ATA 
FC 
ISCSI 
SAS 
SATA 
SPI 
USB 
FCOE 

Enumerator:
UB_NONE 
UB_LVM 
UB_MD 
UB_MDPART 
UB_DM 
UB_DMRAID 
UB_DMMULTIPATH 
UB_BTRFS 


Function Documentation

Text storage::_ ( const char *  msgid,
const char *  msgid_plural,
unsigned long int  n 
)

References storage::Text::Text().

Text storage::_ ( const char *  msgid  ) 

References storage::Text::Text().

Referenced by storage::EtcFstab::addText(), storage::Dasd::checkFdasdOutput(), storage::Disk::checkPartedOutput(), storage::Btrfs::createSubvolText(), storage::Volume::createText(), storage::Partition::createText(), storage::Md::createText(), storage::LvmVg::createText(), storage::LvmLv::createText(), storage::Loop::createText(), storage::Dmraid::createText(), storage::Dmmultipath::createText(), storage::Container::createText(), storage::Volume::crsetupText(), storage::Dasd::dasdfmtTexts(), storage::Storage::decideMultipath(), storage::Btrfs::deleteSubvolText(), storage::Disk::detectPartitions(), storage::Storage::discoverMdPVols(), storage::LvmVg::extendText(), storage::Btrfs::extendText(), storage::Dasd::fdasdText(), storage::Volume::formatText(), storage::Partition::formatText(), storage::Md::formatText(), storage::LvmLv::formatText(), storage::Loop::formatText(), storage::Dmraid::formatText(), storage::Dmmultipath::formatText(), storage::Dm::formatText(), storage::Btrfs::formatText(), getAllSuffixes(), storage::Storage::getErrorString(), storage::Volume::labelText(), storage::Volume::losetupText(), storage::Volume::mountText(), storage::Tmpfs::mountText(), operator<<(), storage::LvmVg::reduceText(), storage::Btrfs::reduceText(), storage::Volume::removeText(), storage::Tmpfs::removeText(), storage::Partition::removeText(), storage::Nfs::removeText(), storage::MdPartCo::removeText(), storage::Md::removeText(), storage::LvmVg::removeText(), storage::LvmLv::removeText(), storage::Loop::removeText(), storage::EtcFstab::removeText(), storage::DmraidCo::removeText(), storage::Dmraid::removeText(), storage::DmPartCo::removeText(), storage::Dmmultipath::removeText(), storage::Dm::removeText(), storage::Container::removeText(), storage::Btrfs::removeText(), storage::Volume::resizeText(), storage::Partition::resizeText(), storage::LvmLv::resizeText(), storage::Dmraid::resizeText(), storage::Dmmultipath::resizeText(), storage::Disk::setDiskLabelText(), storage::Partition::setTypeText(), storage::MdPart::setTypeText(), storage::Dmraid::setTypeText(), storage::DmPart::setTypeText(), storage::Dmmultipath::setTypeText(), and storage::EtcFstab::updateText().

template<typename List, typename Value>
List::const_iterator storage::addIfNotThere ( List &  l,
const Value &  v 
) [inline]

string storage::byteToHumanString ( unsigned long long  size,
bool  classic,
int  precision,
bool  omit_zeroes 
)

Return a pretty description of a size with required precision and using B, kB, MB, GB, TB or PB as unit as appropriate.

Parameters:
size size in bytes
classic use classic locale instead of global C++ locale
precision number of fraction digits in output
omit_zeroes if true omit trailing zeroes for exact values
Returns:
formatted string

References classic(), getSuffix(), and numSuffixes().

Referenced by storage::Graph::makeTooltip(), and storage::Device::sizeString().

bool storage::checkDir ( const string &  Path_Cv  ) 

bool storage::checkNormalFile ( const string &  Path_Cv  ) 

template<class StreamType>
void storage::classic ( StreamType &  stream  )  [inline]

template<class Type>
void storage::clearPointerList ( list< Type * > &  l  )  [inline]

template<typename ListType, typename Type>
bool storage::contains ( const ListType l,
const Type value 
) [inline]

template<typename ListType, typename Predicate>
bool storage::contains_if ( const ListType l,
Predicate  pred 
) [inline]

References find_if().

Referenced by storage::Parted::scanCylEntryLine().

void storage::createLogger ( const string &  name,
const string &  logpath,
const string &  logfile 
)

References String.

Referenced by initDefaultLogger().

void storage::createPath ( const string &  Path_Cv  ) 

StorageInterface * storage::createStorageInterface ( const Environment &  env  ) 

Factory for creating a concrete StorageInterface object.

Throws an exception when locking fails.

References storage::Storage::Storage().

StorageInterface* storage::createStorageInterfacePid ( const Environment &  env,
int &  locker_pid 
)

Factory for creating a concrete StorageInterface object.

Returns NULL if locking failed. In that case locker_pid is set to the pid of one process holding a conflicting lock. If the pid cannot be determined it is set to 0. The lock holder may run on another system.

StorageInterface* storage::createStorageInterfacePid ( const Environment &  env,
pid_t &  locker_pid 
)

string storage::datetime (  ) 

Referenced by storage::Graph::save().

template<class Num>
string storage::decString ( Num  number  )  [inline]

void storage::destroyStorageInterface ( StorageInterface *   ) 

Destroy a StorageInterface object.

bool storage::detectGeometry ( const string &  device,
Geometry &  geo 
)

template<class InputIterator1, class InputIterator2>
bool storage::equalContent ( InputIterator1  first1,
InputIterator1  last1,
InputIterator2  first2,
InputIterator2  last2 
) [inline]

static bool storage::existingLog ( const Partition &  p  )  [static]

static bool storage::existingNotLog ( const Partition &  p  )  [static]

string storage::extractNthWord ( int  Num_iv,
const string &  Line_Cv,
bool  GetRest_bi 
)

template<class Pred>
vector<string>::const_iterator storage::find_if ( const vector< string > &  lines,
Pred  pred 
) [inline]

template<class Pred>
vector<string>::iterator storage::find_if ( vector< string > &  lines,
Pred  pred 
) [inline]

static bool storage::fstabAdded ( const Volume &  v  )  [static]

list<Text> storage::getAllSuffixes ( int  i,
bool  all = false,
bool  sloppy = false 
)

References _().

Referenced by getSuffix(), and humanStringToByte().

const xmlNode * storage::getChildNode ( const xmlNode *  node,
const char *  name 
)

list< const xmlNode * > storage::getChildNodes ( const xmlNode *  node,
const char *  name 
)

template<typename Type>
bool storage::getChildValue ( const xmlNode *  node,
const char *  name,
Type value 
) [inline]

References classic(), and getChildValue().

bool storage::getChildValue ( const xmlNode *  node,
const char *  name,
bool &  value 
)

References getChildValue().

bool storage::getChildValue ( const xmlNode *  node,
const char *  name,
string &  value 
)

bool storage::getChildValue ( const xmlNode *  node,
const char *  name,
Region &  value 
)

bool storage::getChildValue ( const xmlNode *  node,
const char *  name,
Geometry &  value 
)

map< string, string > storage::getDirLinks ( const string &  dir  ) 

References getUdevLinks().

Referenced by storage::Md::setUdevData().

unsigned storage::getMajorDevices ( const char *  driver  ) 

bool storage::getMajorMinor ( const string &  device,
unsigned long &  major,
unsigned long &  minor 
)

bool storage::getMdadmDetails ( const string &  dev,
MdadmDetails &  detail 
)

bool storage::getStatMode ( const string &  Path_Cv,
mode_t &  val 
)

References y2mil.

Referenced by storage::Volume::doMount().

bool storage::getStatVfs ( const string &  path,
StatVfs &  buf 
)

string storage::getSuffix ( int  i,
bool  classic 
)

Return a suffix.

Parameters:
i index of suffix
classic use classic locale instead of global C++ locale
Returns:
suffix

References getAllSuffixes().

Referenced by byteToHumanString().

map<string, string> storage::getUdevLinks ( const char *  path  ) 

list< string > storage::glob ( const string &  path,
int  flags 
)

static string storage::handle_O_Features ( const string &  opts  )  [static]

References splitString(), and y2mil.

Referenced by storage::Volume::doFormat().

bool storage::hasLoopDevice ( const Volume &  v  ) 

static bool storage::haveQuota ( const string &  fstopt  )  [static]

References splitString(), and y2mil.

Referenced by storage::Volume::doFstabUpdate().

template<class Num>
string storage::hexString ( Num  number  )  [inline]

References classic().

string storage::hostname (  ) 

Referenced by storage::Graph::save().

bool storage::humanStringToByte ( const string &  str,
bool  classic,
unsigned long long &  size 
)

Converts a size description using B, kB, MB, GB, TB or PB into an integer.

Parameters:
str size string
classic use classic locale instead of global C++ locale
size size in bytes
Returns:
true on successful conversion
The conversion is always case-insensitive. With classic set to false the conversion is also sloppy concerning omission of 'B'.

References classic(), getAllSuffixes(), and numSuffixes().

void storage::initDefaultLogger (  ) 

Initializes default logging.

References createLogger().

static bool storage::isDmContainer ( const Container &  co  )  [static]

bool storage::isImsmPlatform (  ) 

bool storage::isNfsDev ( const string &  dev  ) 

Referenced by normalizeDevice().

template<class T, unsigned int sz>
unsigned int storage::lengthof ( T(&)  [sz]  )  [inline]

void storage::logDiff ( std::ostream &  log,
const char *  text,
bool  lhs,
bool  rhs 
) [inline]

template<typename Type>
void storage::logDiff ( std::ostream &  log,
const char *  text,
const Type lhs,
const Type rhs 
) [inline]

template<typename Type>
void storage::logDiffEnum ( std::ostream &  log,
const char *  text,
const Type lhs,
const Type rhs 
) [inline]

template<typename Type>
void storage::logDiffHex ( std::ostream &  log,
const char *  text,
const Type lhs,
const Type rhs 
) [inline]

static bool storage::logicalCreated ( const Partition &  p  )  [static]

void storage::logStreamClose ( LogLevel  level,
const char *  file,
unsigned  line,
const char *  func,
ostringstream *  stream 
)

References component, DEBUG, ERROR, MILESTONE, String, and WARNING.

std::ostringstream * storage::logStreamOpen (  ) 

References prepareLogStream().

template<class InputIterator1, class InputIterator2>
void storage::logVolumesDifference ( std::ostream &  log,
InputIterator1  first1,
InputIterator1  last1,
InputIterator2  first2,
InputIterator2  last2 
) [inline]

static bool storage::lvCreated ( const LvmLv &  l  )  [static]

static bool storage::lvDeleted ( const LvmLv &  l  )  [static]

static bool storage::lvNotCreated ( const LvmLv &  l  )  [static]

static bool storage::lvNotDeletedCreated ( const LvmLv &  l  )  [static]

static bool storage::lvResized ( const LvmLv &  l  )  [static]

static list<string> storage::makeCrStringList ( const FstabEntry &  e  )  [static]

template<class Container, class Iter>
IterPair<Iter> storage::MakeIterPair ( Container &  c  )  [inline]

std::map< string, string > storage::makeMap ( const list< string > &  l,
const string &  delim,
const string &  removeSur 
)

Referenced by storage::Blkid::parse().

static list<string> storage::makeStringList ( const FstabEntry &  e  )  [static]

template<typename Map, typename Key, typename Value>
Map::iterator storage::mapInsertOrReplace ( Map &  m,
const Key &  k,
const Value &  v 
) [inline]

bool storage::mkdtemp ( string &  path  ) 

static bool storage::needDasdfmt ( const Disk &  d  )  [static]

string storage::normalizeDevice ( const string &  dev  ) 

list< string > storage::normalizeDevices ( const list< string > &  devs  ) 

static bool storage::notCreatedPrimary ( const Partition &  p  )  [static]

static bool storage::notDeletedExt ( const Partition &  p  )  [static]

static bool storage::notDeletedLog ( const Partition &  p  )  [static]

static bool storage::notDeletedNotLog ( const Partition &  p  )  [static]

static bool storage::notDeletedPri ( const Partition &  p  )  [static]

static bool storage::notLoop ( const Container &  c  )  [static]

int storage::numSuffixes (  ) 

Return number of suffixes.

Returns:
number of suffixes

Referenced by byteToHumanString(), and humanStringToByte().

bool storage::operator< ( CType  a,
CType  b 
) [inline]

References toString(), and y2mil.

std::ostream& storage::operator<< ( std::ostream &  s,
const Volume &  v 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const TmpfsCo &  d 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const Tmpfs &  v 
)

std::ostream & storage::operator<< ( std::ostream &  s,
const FsCapabilities &  a 
)

std::ostream & storage::operator<< ( std::ostream &  s,
const PartitionSlotInfo &  a 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const Subvolume &  sv 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const UsedBy &  usedby 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const commitAction &  a 
)

template<class Key, class Value>
std::ostream& storage::operator<< ( std::ostream &  s,
const std::map< Key, Value > &  m 
) [inline]

template<class F, class S>
std::ostream& storage::operator<< ( std::ostream &  s,
const std::pair< F, S > &  p 
) [inline]

template<class Value>
std::ostream& storage::operator<< ( std::ostream &  s,
const std::deque< Value > &  l 
) [inline]

template<class Value>
std::ostream& storage::operator<< ( std::ostream &  s,
const std::list< Value > &  l 
) [inline]

std::ostream& storage::operator<< ( std::ostream &  s,
Storage &  v 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const Storage &  v 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const storage::DiskData d 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const Environment &  env 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const Region &  p 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const ProcMdstat::Entry &  entry 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const PeContainer::Pv &  v 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const PeContainer &  d 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const Partition &  p 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const Parted::Entry &  e 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const NfsCo &  d 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const Nfs &  l 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const MdPartCo &  d 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const MdPart &  p 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const MdCo &  d 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const Md &  m 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const LvmVg &  d 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const LvmLv &  p 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const Lsscsi::Entry &  entry 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const LoopCo &  d 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const Loop &  l 
)

ostream& storage::operator<< ( ostream &  s,
const Graph::Rank &  rank 
)

ostream& storage::operator<< ( ostream &  s,
const Graph::Edge &  edge 
)

ostream& storage::operator<< ( ostream &  s,
const Graph::Node &  node 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const Geometry &  geo 
)

std::ostream & storage::operator<< ( std::ostream &  s,
const FreeInfo &  free_info 
)

std::ostream & storage::operator<< ( std::ostream &  s,
const ContentInfo &  content_info 
)

std::ostream & storage::operator<< ( std::ostream &  s,
const ResizeInfo &  resize_info 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const EtcMdadm::mdconf_info &  info 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const FstabChange &  v 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const FstabEntry &  v 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const DmraidCo &  d 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const Dmraid &  p 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const DmPartCo &  d 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const DmPart &  p 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const DmmultipathCo &  d 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const Dmmultipath &  p 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const DmCo &  d 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const Dm &  p 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const Disk &  d 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const Device &  d 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const Fdasd::Entry &  e 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const Dasd &  d 
)

References storage::Dasd::fmt, and toString().

std::ostream& storage::operator<< ( std::ostream &  s,
const Container &  c 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const BtrfsCo &  d 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const Btrfs &  v 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const Blkid::Entry &  entry 
)

std::ostream & storage::operator<< ( std::ostream &  s,
const ArchInfo &  archinfo 
)

std::ostream& storage::operator<< ( std::ostream &  s,
const StopWatch &  sw 
)

bool storage::operator<= ( CType  a,
CType  b 
) [inline]

bool storage::operator> ( CType  a,
CType  b 
) [inline]

bool storage::operator>= ( CType  a,
CType  b 
) [inline]

template<class Value>
void storage::operator>> ( const string &  d,
Value &  v 
) [inline]

References classic().

template<class Type>
void storage::pointerIntoSortedList ( list< Type * > &  l,
Type e 
) [inline]

void storage::prepareLogStream ( ostringstream &  stream  ) 

void storage::printDevList ( std::ostream &  s,
const std::list< PeContainer::Pv > &  l 
)

template<class Type>
void storage::printtype ( Type  type  )  [inline]

string storage::quote ( const std::list< string > &  strs  )  [inline]

Referenced by operator<<(), and quote().

string storage::quote ( const string &  str  )  [inline]

References quote().

Referenced by storage::Blkid::Blkid(), storage::Disk::callAddpart(), storage::Disk::callDelpart(), storage::Md::createCmd(), storage::Loop::createFile(), storage::Volume::cryptUnsetup(), storage::Dasdview::Dasdview(), storage::Volume::detectEncryption(), storage::DmCo::detectEncryption(), storage::Storage::detectObjects(), storage::FreeInfo::detectResizeInfo(), storage::LvmVg::doCreate(), storage::Disk::doCreate(), storage::Disk::doCreateLabel(), storage::LvmVg::doCreatePv(), storage::LvmVg::doCreateVg(), storage::Volume::doCryptsetup(), storage::Dasd::doDasdfmt(), storage::Btrfs::doExtend(), storage::LvmVg::doExtendVg(), storage::Dasd::doFdasd(), storage::Volume::doFormat(), storage::Volume::doFormatBtrfs(), storage::Volume::doFstabUpdate(), storage::Volume::doLosetup(), storage::Btrfs::doReduce(), storage::LvmVg::doReduceVg(), storage::MdPartCo::doRemove(), storage::MdCo::doRemove(), storage::LvmVg::doRemove(), storage::DmraidCo::doRemove(), storage::DmCo::doRemove(), storage::Disk::doRemove(), storage::LvmVg::doRemoveVg(), storage::LvmVg::doResize(), storage::Disk::doResize(), storage::Volume::doSetLabel(), storage::Disk::doSetType(), storage::Disk::enlargeGpt(), storage::Fdasd::Fdasd(), storage::Volume::getCryptsetupCmd(), storage::Volume::getLosetupCmd(), getMdadmDetails(), storage::LvmLv::getState(), storage::Dm::getTableInfo(), storage::LvmVg::getVgData(), storage::FreeInfo::isWindows(), storage::Volume::loUnsetup(), storage::Volume::mount(), storage::FreeInfo::numHomes(), storage::Parted::Parted(), storage::Storage::removeDmTable(), storage::Volume::resizeFs(), storage::Volume::umount(), storage::Storage::zeroDevice(), and storage::Storage::~Storage().

template<class Type>
bool storage::read_sysfs_property ( const string &  path,
Type value,
bool  log_error = true 
) [inline]

bool storage::readlink ( const string &  path,
string &  buf 
)

Referenced by storage::Lsscsi::parse().

bool storage::readlinkat ( int  fd,
const string &  path,
string &  buf 
)

Referenced by getUdevLinks().

static bool storage::regions_sort_size ( const Region &  rhs,
const Region &  lhs 
) [static]

bool storage::saveDeviceGraph ( StorageInterface *  s,
const string &  filename 
)

Saves a graph of the storage devices as a DOT file for graphviz.

Parameters:
s StorageInterface
filename filename of graph
Returns:
true on successful writing of graph

bool storage::saveMountGraph ( StorageInterface *  s,
const string &  filename 
)

Saves a graph of the mount points as a DOT file for graphviz.

Parameters:
s StorageInterface
filename filename of graph
Returns:
true on successful writing of graph

template<typename Type>
void storage::setChildValue ( xmlNode *  node,
const char *  name,
const list< Type > &  values 
) [inline]

References setChildValue().

Referenced by setChildValue().

template<typename Type>
void storage::setChildValue ( xmlNode *  node,
const char *  name,
const Type value 
) [inline]

References classic(), and setChildValue().

void storage::setChildValue ( xmlNode *  node,
const char *  name,
bool  value 
)

void storage::setChildValue ( xmlNode *  node,
const char *  name,
const string &  value 
)

void storage::setChildValue ( xmlNode *  node,
const char *  name,
const char *  value 
)

void storage::setChildValue ( xmlNode *  node,
const char *  name,
const Subvolume &  v 
)

void storage::setChildValue ( xmlNode *  node,
const char *  name,
const UsedBy &  value 
)

void storage::setChildValue ( xmlNode *  node,
const char *  name,
const Region &  value 
)

void storage::setChildValue ( xmlNode *  node,
const char *  name,
const Geometry &  value 
)

bool storage::setStatMode ( const string &  Path_Cv,
mode_t  val 
)

References y2mil.

Referenced by storage::Volume::doMount().

Text storage::sformat ( const Text &  format,
  ... 
)

string storage::sformat ( const string &  format,
va_list  ap 
)

References str.

Referenced by storage::EtcFstab::addText(), storage::Dasd::checkFdasdOutput(), storage::Disk::checkPartedOutput(), storage::Btrfs::createSubvolText(), storage::Volume::createText(), storage::Partition::createText(), storage::Md::createText(), storage::LvmVg::createText(), storage::LvmLv::createText(), storage::Loop::createText(), storage::Dmraid::createText(), storage::Dmmultipath::createText(), storage::Container::createText(), storage::Volume::crsetupText(), storage::Dasd::dasdfmtTexts(), storage::Btrfs::deleteSubvolText(), storage::Disk::detectPartitions(), storage::Storage::discoverMdPVols(), storage::LvmVg::extendText(), storage::Btrfs::extendText(), storage::Dasd::fdasdText(), storage::Volume::formatText(), storage::Partition::formatText(), storage::Md::formatText(), storage::LvmLv::formatText(), storage::Loop::formatText(), storage::Dmraid::formatText(), storage::Dmmultipath::formatText(), storage::Dm::formatText(), storage::Btrfs::formatText(), storage::Volume::labelText(), storage::Volume::losetupText(), storage::Volume::mountText(), storage::Tmpfs::mountText(), storage::LvmVg::reduceText(), storage::Btrfs::reduceText(), storage::Volume::removeText(), storage::Tmpfs::removeText(), storage::Partition::removeText(), storage::Nfs::removeText(), storage::MdPartCo::removeText(), storage::Md::removeText(), storage::LvmVg::removeText(), storage::LvmLv::removeText(), storage::Loop::removeText(), storage::EtcFstab::removeText(), storage::DmraidCo::removeText(), storage::Dmraid::removeText(), storage::DmPartCo::removeText(), storage::Dmmultipath::removeText(), storage::Dm::removeText(), storage::Container::removeText(), storage::Btrfs::removeText(), storage::Volume::resizeText(), storage::Partition::resizeText(), storage::LvmLv::resizeText(), storage::Dmraid::resizeText(), storage::Dmmultipath::resizeText(), storage::Disk::setDiskLabelText(), storage::Partition::setTypeText(), storage::MdPart::setTypeText(), storage::Dmraid::setTypeText(), storage::DmPart::setTypeText(), storage::Dmmultipath::setTypeText(), sformat(), and storage::EtcFstab::updateText().

static bool storage::sort_cont_down ( const Container *  rhs,
const Container *  lhs 
) [static]

static bool storage::sort_cont_up ( const Container *  rhs,
const Container *  lhs 
) [static]

static bool storage::sort_vol_create ( const Volume *  rhs,
const Volume *  lhs 
) [static]

static bool storage::sort_vol_delete ( const Volume *  rhs,
const Volume *  lhs 
) [static]

static bool storage::sort_vol_mount ( const Volume *  rhs,
const Volume *  lhs 
) [static]

static bool storage::sort_vol_normal ( const Volume *  rhs,
const Volume *  lhs 
) [static]

std::list< string > storage::splitString ( const string &  s,
const string &  delChars,
bool  multipleDelim,
bool  skipEmpty,
const string &  quotes 
)

unsigned long storage::sub_sat ( unsigned long  a,
unsigned long  b 
) [inline]

Referenced by storage::Disk::doCreate().

bool storage::testLogLevel ( LogLevel  level  ) 

References DEBUG, ERROR, MILESTONE, and WARNING.

static bool storage::toChangeId ( const MdPart &  d  )  [static]

static bool storage::toChangeId ( const DmPart &  d  )  [static]

template<typename EnumType>
const string& storage::toString ( EnumType  value  )  [inline]

Referenced by storage::Partition::addUdevData(), storage::Storage::addUsedBy(), storage::Volume::allowedMountBy(), storage::Disk::availablePartNumber(), storage::Storage::changeFormatVolume(), storage::Volume::changeFstabOptions(), storage::Storage::changeMdParity(), storage::MdCo::changeMdParity(), storage::Storage::changeMdType(), storage::MdCo::changeMdType(), storage::Volume::changeMountBy(), storage::Storage::changeMountBy(), storage::Md::checkDevices(), storage::Storage::computeMdSize(), storage::Disk::createChecks(), storage::Md::createCmd(), storage::Storage::createMd(), storage::MdCo::createMd(), storage::Storage::createMdAny(), storage::Storage::createPartition(), storage::MdPartCo::createPartition(), storage::DmPartCo::createPartition(), storage::Disk::createPartition(), storage::Storage::createPartitionKb(), storage::Storage::createPartitionMax(), storage::Dasdview::Dasdview(), storage::Volume::defaultMountBy(), storage::Volume::detectEncryption(), storage::DmCo::detectEncryption(), storage::Dasd::detectPartitions(), storage::Disk::doCreate(), storage::Container::doCreate(), storage::Volume::doFstabUpdate(), storage::Container::doRemove(), storage::Container::doResize(), storage::Volume::fsTypeString(), storage::Storage::getAllUsedFs(), storage::Volume::getCryptsetupCmd(), storage::Volume::getFstabData(), storage::Volume::getFstabOpts(), storage::Volume::getLoopData(), storage::Storage::getMdAllowedParity(), storage::Storage::getMountBy(), storage::Storage::isUsedBy(), logDiffEnum(), makeStringList(), storage::Volume::mount(), storage::Storage::nextFreePartition(), operator<(), operator<<(), storage::PeContainer::PeContainer(), storage::Storage::removeUsedBy(), storage::Container::removeVolume(), storage::Volume::saveData(), storage::Partition::saveData(), storage::Disk::saveData(), storage::Parted::scanCylEntryLine(), storage::Storage::setCryptType(), storage::Storage::setDefaultFs(), storage::Storage::setDefaultMountBy(), storage::Volume::setDmcryptDevEnc(), storage::Volume::setEncryption(), storage::Loop::setEncryption(), storage::Volume::setFormat(), storage::Partition::setFormat(), storage::Btrfs::setFormat(), storage::Storage::setPartitionAlignment(), storage::Storage::setUsedBy(), storage::Storage::Storage(), and storage::Md::updateData().

template<typename EnumType>
bool storage::toValue ( const string &  str,
EnumType &  value,
bool  log_error = true 
) [inline]

template<typename EnumType>
EnumType storage::toValueWithFallback ( const string &  str,
EnumType  fallback,
bool  log_error = true 
) [inline]

string storage::udevAppendPart ( const string &  s,
unsigned  num 
)

string storage::udevDecode ( const string &  s  ) 

Referenced by getUdevLinks().

string storage::udevEncode ( const string &  s  ) 

string storage::undevDevice ( const string &  dev  ) 

static bool storage::volume_ptr_sort_nr ( Partition *&  rhs,
Partition *&  lhs 
) [static]

xmlNode * storage::xmlNewChild ( xmlNode *  node,
const char *  name 
)

xmlNode * storage::xmlNewNode ( const char *  name  ) 


Variable Documentation

const string storage::app_ws = " \t\n"

const string storage::c_type_names[] [static]

Initial value:

 {
        "UNKNOWN", "DISK", "MD", "LOOP", "LVM", "DM", "DMRAID", "NFS", "DMMULTIPATH", "MDPART", "BTRFS", "TMPFS"
    }

const blocxx::String storage::component = "libstorage" [static]

Referenced by logStreamClose().

const string storage::dasd_format_names[] [static]

Initial value:

 {
        "NONE", "LDL", "CDL"
    }

const char* storage::elem[] = { "crypt" } [static]

const string storage::encrypt_names[] [static]

Initial value:

 {
        "none", "twofish256", "twofish", "twofishSL92", "luks", "unknown"
    }

const string storage::fs_type_names[] [static]

Initial value:

 {
        "unknown", "reiserfs", "ext2", "ext3", "ext4", "btrfs", "vfat", "xfs", "jfs", "hfs",
        "ntfs-3g", "swap", "hfsplus", "nfs", "nfs4", "tmpfs", "none"
    }

const unsigned int storage::fuzz_cyl = 2

const string storage::imsm_driver_names[] [static]

Initial value:

 {
        "UNDECIDED", "DMRAID", "MDADM"
    }

const string storage::md_array_state_names[] [static]

Initial value:

 {
        "unknown", "clear", "inactive", "suspended", "readonly", "read-auto", "clean", "active",
        "write-pending", "active-idle"
    }

const string storage::md_parity_names[] [static]

Initial value:

 {
        "default", "left-asymmetric", "left-symmetric", "right-asymmetric", "right-symmetric",
        "parity-first", "parity-last",
        "left-asymmetric-6", "left-symmetric-6", "right-asymmetric-6", "right-symmetric-6",
        "parity-first-6",
        "n2", "o2", "f2", "n3", "o3", "f3"
    }

const string storage::md_type_names[] [static]

Initial value:

 {
        "unknown", "raid0", "raid1", "raid5", "raid6", "raid10", "multipath"
    }

const string storage::mount_by_names[] [static]

Initial value:

 {
        "device", "uuid", "label", "id", "path"
    }

const string storage::multipath_autostart_names[] [static]

Initial value:

 {
        "UNDECIDED", "ON", "OFF"
    }

const string storage::part_align_names[] [static]

Initial value:

 {
        "optimal", "cylinder"
    }

const string storage::partition_type_names[] [static]

Initial value:

 {
        "primary", "extended", "logical", "any"
    }

const string storage::transport_names[] [static]

Initial value:

 {
        "UNKNOWN", "SBP", "ATA", "FC", "iSCSI", "SAS", "SATA", "SPI", "USB", "FCOE"
    }

const string storage::used_by_type_names[] [static]

Initial value:

 {
        "NONE", "LVM", "MD", "MDPART", "DM", "DMRAID", "DMMULTIPATH", "BTRFS"
    }


Generated on Mon Feb 6 10:42:57 2012 for yast2-storage by  doxygen 1.5.6