libstoragemgmt_capabilities.h File Reference

#include "libstoragemgmt_common.h"
Include dependency graph for libstoragemgmt_capabilities.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Enumerations

enum  lsm_capability_value_type { LSM_CAP_UNSUPPORTED = 0, LSM_CAP_SUPPORTED = 1 }
enum  lsm_capability_type {
  LSM_CAP_VOLUMES = 20, LSM_CAP_VOLUME_CREATE = 21, LSM_CAP_VOLUME_RESIZE = 22, LSM_CAP_VOLUME_REPLICATE = 23,
  LSM_CAP_VOLUME_REPLICATE_CLONE = 24, LSM_CAP_VOLUME_REPLICATE_COPY = 25, LSM_CAP_VOLUME_REPLICATE_MIRROR_ASYNC = 26, LSM_CAP_VOLUME_REPLICATE_MIRROR_SYNC = 27,
  LSM_CAP_VOLUME_COPY_RANGE_BLOCK_SIZE = 28, LSM_CAP_VOLUME_COPY_RANGE = 29, LSM_CAP_VOLUME_COPY_RANGE_CLONE = 30, LSM_CAP_VOLUME_COPY_RANGE_COPY = 31,
  LSM_CAP_VOLUME_DELETE = 33, LSM_CAP_VOLUME_ENABLE = 34, LSM_CAP_VOLUME_DISABLE = 35, LSM_CAP_VOLUME_MASK = 36,
  LSM_CAP_VOLUME_UNMASK = 37, LSM_CAP_ACCESS_GROUPS = 38, LSM_CAP_ACCESS_GROUP_CREATE_WWPN = 39, LSM_CAP_ACCESS_GROUP_DELETE = 40,
  LSM_CAP_ACCESS_GROUP_INITIATOR_ADD_WWPN = 41, LSM_CAP_ACCESS_GROUP_INITIATOR_DELETE = 42, LSM_CAP_VOLUMES_ACCESSIBLE_BY_ACCESS_GROUP = 43, LSM_CAP_ACCESS_GROUPS_GRANTED_TO_VOLUME = 44,
  LSM_CAP_VOLUME_CHILD_DEPENDENCY = 45, LSM_CAP_VOLUME_CHILD_DEPENDENCY_RM = 46, LSM_CAP_ACCESS_GROUP_CREATE_ISCSI_IQN = 47, LSM_CAP_ACCESS_GROUP_INITIATOR_ADD_ISCSI_IQN = 48,
  LSM_CAP_VOLUME_ISCSI_CHAP_AUTHENTICATION = 53, LSM_CAP_VOLUME_RAID_INFO = 54, LSM_CAP_VOLUME_THIN = 55, LSM_CAP_FS = 100,
  LSM_CAP_FS_DELETE = 101, LSM_CAP_FS_RESIZE = 102, LSM_CAP_FS_CREATE = 103, LSM_CAP_FS_CLONE = 104,
  LSM_CAP_FILE_CLONE = 105, LSM_CAP_FS_SNAPSHOTS = 106, LSM_CAP_FS_SNAPSHOT_CREATE = 107, LSM_CAP_FS_SNAPSHOT_DELETE = 109,
  LSM_CAP_FS_SNAPSHOT_RESTORE = 110, LSM_CAP_FS_SNAPSHOT_RESTORE_SPECIFIC_FILES = 111, LSM_CAP_FS_CHILD_DEPENDENCY = 112, LSM_CAP_FS_CHILD_DEPENDENCY_RM = 113,
  LSM_CAP_FS_CHILD_DEPENDENCY_RM_SPECIFIC_FILES = 114, LSM_CAP_EXPORT_AUTH = 120, LSM_CAP_EXPORTS = 121, LSM_CAP_EXPORT_FS = 122,
  LSM_CAP_EXPORT_REMOVE = 123, LSM_CAP_EXPORT_CUSTOM_PATH = 124, LSM_CAP_POOLS_QUICK_SEARCH = 210, LSM_CAP_VOLUMES_QUICK_SEARCH = 211,
  LSM_CAP_DISKS_QUICK_SEARCH = 212, LSM_CAP_ACCESS_GROUPS_QUICK_SEARCH = 213, LSM_CAP_FS_QUICK_SEARCH = 214, LSM_CAP_NFS_EXPORTS_QUICK_SEARCH = 215,
  LSM_CAP_TARGET_PORTS = 216, LSM_CAP_TARGET_PORTS_QUICK_SEARCH = 217, LSM_CAP_DISKS = 220, LSM_CAP_POOL_MEMBER_INFO = 221,
  LSM_CAP_VOLUME_RAID_CREATE = 222
}

Functions

int LSM_DLL_EXPORT lsm_capability_record_free (lsm_storage_capabilities *cap)
lsm_capability_value_type
LSM_DLL_EXPORT 
lsm_capability_get (lsm_storage_capabilities *cap, lsm_capability_type t)
int LSM_DLL_EXPORT lsm_capability_supported (lsm_storage_capabilities *cap, lsm_capability_type t)

Detailed Description

Definition in file libstoragemgmt_capabilities.h.


Enumeration Type Documentation

Enumerator:
LSM_CAP_VOLUMES 
LSM_CAP_VOLUME_CREATE 

^ List volumes

LSM_CAP_VOLUME_RESIZE 

^ Create volumes

LSM_CAP_VOLUME_REPLICATE 

^ Resize volumes

LSM_CAP_VOLUME_REPLICATE_CLONE 

^ Replication is supported

LSM_CAP_VOLUME_REPLICATE_COPY 

^ Can make a space efficient copy of volume

LSM_CAP_VOLUME_REPLICATE_MIRROR_ASYNC 

^ Can make a bitwise copy of volume

LSM_CAP_VOLUME_REPLICATE_MIRROR_SYNC 

^ Mirror data with delay

LSM_CAP_VOLUME_COPY_RANGE_BLOCK_SIZE 

^ Mirror data and always in sync

LSM_CAP_VOLUME_COPY_RANGE 

^ Size of a block for range operations

LSM_CAP_VOLUME_COPY_RANGE_CLONE 

^ Sub volume replication support

LSM_CAP_VOLUME_COPY_RANGE_COPY 

^ Can space efficient copy a region(s) of a volume

LSM_CAP_VOLUME_DELETE 

^ Can copy a region(s) of a volume

LSM_CAP_VOLUME_ENABLE 

^ Can delete a volume

LSM_CAP_VOLUME_DISABLE 

^ Enable volume

LSM_CAP_VOLUME_MASK 

^ Disable volume

LSM_CAP_VOLUME_UNMASK 

^ Grant an access group to a volume

LSM_CAP_ACCESS_GROUPS 

^ Revoke access for an access group

LSM_CAP_ACCESS_GROUP_CREATE_WWPN 

^ List access groups

LSM_CAP_ACCESS_GROUP_DELETE 

^ Create an access group

LSM_CAP_ACCESS_GROUP_INITIATOR_ADD_WWPN 

^ Delete an access group

LSM_CAP_ACCESS_GROUP_INITIATOR_DELETE 

^ Add an initiator to an access group

LSM_CAP_VOLUMES_ACCESSIBLE_BY_ACCESS_GROUP 

^ Remove an initiator from an access group

LSM_CAP_ACCESS_GROUPS_GRANTED_TO_VOLUME 

^ Retrieve a list of volumes accessible by an access group

LSM_CAP_VOLUME_CHILD_DEPENDENCY 

^ Retrieve a list of what access groups are accessible for a given volume

LSM_CAP_VOLUME_CHILD_DEPENDENCY_RM 

^ Used to determine if a volume has any dependencies

LSM_CAP_ACCESS_GROUP_CREATE_ISCSI_IQN 

^ Removes dependendies

LSM_CAP_ACCESS_GROUP_INITIATOR_ADD_ISCSI_IQN 

^ Create iSCSI access group

LSM_CAP_VOLUME_ISCSI_CHAP_AUTHENTICATION 

^ For empty access group, this indicates it can add iSCSI IQN to it

LSM_CAP_VOLUME_RAID_INFO 

^ If you can configure iSCSI chap authentication

LSM_CAP_VOLUME_THIN 

^ If you can query RAID information from volume

LSM_CAP_FS 

^ Thin provisioned volumes are supported

LSM_CAP_FS_DELETE 

^ List file systems

LSM_CAP_FS_RESIZE 

^ Delete a file system

LSM_CAP_FS_CREATE 

^ Resize a file system

LSM_CAP_FS_CLONE 

^ Create a file system

LSM_CAP_FILE_CLONE 

^ Clone a file system

LSM_CAP_FS_SNAPSHOTS 

^ Clone a file on a file system

LSM_CAP_FS_SNAPSHOT_CREATE 

^ List FS snapshots

LSM_CAP_FS_SNAPSHOT_DELETE 

^ Create a snapshot

LSM_CAP_FS_SNAPSHOT_RESTORE 

^ Delete a snapshot

LSM_CAP_FS_SNAPSHOT_RESTORE_SPECIFIC_FILES 

^ Revert the state of a FS to the specified snapshot

LSM_CAP_FS_CHILD_DEPENDENCY 

^ Revert the state of a list of files to a specified snapshot

LSM_CAP_FS_CHILD_DEPENDENCY_RM 

^ Determine if a child dependency exists for the specified file

LSM_CAP_FS_CHILD_DEPENDENCY_RM_SPECIFIC_FILES 

^ Remove any dependencies the file system may have

LSM_CAP_EXPORT_AUTH 

^ Remove any dependencies for specific files

LSM_CAP_EXPORTS 

^ Get a list of supported client authentication types

LSM_CAP_EXPORT_FS 

^ List exported file systems

LSM_CAP_EXPORT_REMOVE 

^ Export a file system

LSM_CAP_EXPORT_CUSTOM_PATH 

^ Remove an export

LSM_CAP_POOLS_QUICK_SEARCH 

^ Plug-in allows user to define custome export path

LSM_CAP_VOLUMES_QUICK_SEARCH 

^ Seach occurs on array

LSM_CAP_DISKS_QUICK_SEARCH 

^ Seach occurs on array

LSM_CAP_ACCESS_GROUPS_QUICK_SEARCH 

^ Seach occurs on array

LSM_CAP_FS_QUICK_SEARCH 

^ Seach occurs on array

LSM_CAP_NFS_EXPORTS_QUICK_SEARCH 

^ Seach occurs on array

LSM_CAP_TARGET_PORTS 

^ Seach occurs on array

LSM_CAP_TARGET_PORTS_QUICK_SEARCH 

^ List target ports

LSM_CAP_DISKS 

^ Filtering occurs on array

LSM_CAP_POOL_MEMBER_INFO 

^ List disk drives

LSM_CAP_VOLUME_RAID_CREATE 

^ Query pool member information

Definition at line 38 of file libstoragemgmt_capabilities.h.

Possible values for supported feature

Capabilities supported by array

Enumerator:
LSM_CAP_UNSUPPORTED 

Feature is not supported

LSM_CAP_SUPPORTED 

Feature is supported

Definition at line 32 of file libstoragemgmt_capabilities.h.


Function Documentation

lsm_capability_value_type LSM_DLL_EXPORT lsm_capability_get ( lsm_storage_capabilities cap,
lsm_capability_type  t 
)

Return the capability for the specified feature.

Parameters:
cap Valid pointer to capability data structure
t Which capability you are interested in
Returns:
Value of supported enumerated type.
int LSM_DLL_EXPORT lsm_capability_record_free ( lsm_storage_capabilities cap  ) 

Free the memory used by the storage capabilities data structure

Parameters:
cap Valid storage capability data structure.
Returns:
LSM_ERR_OK on success, else error reason.
int LSM_DLL_EXPORT lsm_capability_supported ( lsm_storage_capabilities cap,
lsm_capability_type  t 
)

Boolean version of capability support

Parameters:
cap 
t 
Returns:
Non-zero if supported, 0 if not supported

Generated on 9 Jul 2015 for libStorageMgmt by  doxygen 1.6.1