dpm_modifypool - modify a disk pool definition
#include <sys/types.h>
#include "dpm_api.h"
int dpm_modifypool (struct dpm_pool
*dpm_pool)
dpm_modifypool modifies a disk pool definition.
- dpm_pool
- contains the new pool definition.
struct dpm_pool {
char poolname[CA_MAXPOOLNAMELEN+1];
u_signed64 defsize;
int gc_start_thresh;
int gc_stop_thresh;
int def_lifetime;
int defpintime;
int max_lifetime;
int maxpintime;
char fss_policy[CA_MAXPOLICYLEN+1];
char gc_policy[CA_MAXPOLICYLEN+1];
char mig_policy[CA_MAXPOLICYLEN+1];
char rs_policy[CA_MAXPOLICYLEN+1];
int nbgids;
gid_t *gids;
char ret_policy;
char s_type;
u_signed64 capacity;
u_signed64 free;
int nbelem;
};
- poolname
- specifies the disk pool name.
- defsize
- specifies the default amount of space reserved for a file (in bytes). If
set to -1, the current value is unchanged.
- gc_start_thresh
- specifies the minimum free space in the pool. If the percentage of free
space goes below this value, the garbage collector is started. If set to
-1, the current value is unchanged.
- gc_stop_thresh
- specifies the percentage of free space in the pool above which the garbage
collector is stopped. If set to -1, the current value is unchanged.
- def_lifetime
- specifies the default time a space or volatile file is kept in the system
(in seconds). If set to -1, the current value is unchanged.
- defpintime
- specifies the default time a file is kept on a given disk (in seconds). If
set to -1, the current value is unchanged.
- max_lifetime
- specifies the maximum time a space or volatile file is kept in the system
(in seconds). If set to -1, the current value is unchanged.
- maxpintime
- specifies the maximum time a file is kept on a given disk (in seconds). If
set to -1, the current value is unchanged.
- nbgids
- is the size of the array of group ids gids. If set to -1, the
current set is unchanged.
- gids
- The disk pool is restricted to this set of gids unless the group gid is
zero.
- ret_policy
- specifies the retention policy supported by the disk pool. It can be
R (for Replica), O (for Output) or C (for Custodial).
If set to 0, the current value is unchanged.
- s_type
- indicates the type of space supported in the disk pool. It can be V
(for Volatile), D (for Durable), P (for Permanent) or
- (to accept any type). If set to 0, the current value is
unchanged.
This function requires ADMIN privilege.
This routine returns 0 if the operation was successful or -1 if
the operation failed. In the latter case, serrno is set
appropriately.
- ENOENT
- This pool does not exist.
- EACCES
- The caller does not have ADMIN privilege.
- EFAULT
- dpm_pool is a NULL pointer.
- EINVAL
- The length of poolname exceeds CA_MAXPOOLNAMELEN or the
number of gids is too big.
- SENOSHOST
- Host unknown.
- SEINTERNAL
- Database error.
- SECOMERR
- Communication error.