SYNOPSIS
#include <sys/types.h>#include "dpm_api.h"
int dpm_getpools (int *nbpools, struct dpm_pool **dpm_pools)
DESCRIPTION
dpm_getpools gets list of pools.The output arguments are:
- nbpools
- will be set to the number of replies in the array of pools.
- dpm_pools
- will be set to the address of an array of dpm_pool structures allocated by the API. The client application is responsible for freeing the array when not needed anymore. This is also necessary for the gids entry of each dpm_pool.
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; /* restrict the pool to given group(s) */ char ret_policy; /* retention policy: 'R', 'O' or 'C' */ char s_type; /* space type: 'V', 'D' or 'P' */ u_signed64 capacity; u_signed64 free; struct dpm_fs *elemp; int nbelem; int next_elem; /* next pool element to be used */ };
RETURN VALUE
This routine returns 0 if the operation was successful or -1 if the operation failed. In the latter case, serrno is set appropriately.ERRORS
- EFAULT
- nbpools or dpm_pools is a NULL pointer.
- ENOMEM
- Memory could not be allocated for storing the reply.
- SENOSHOST
- Host unknown.
- SECOMERR
-
Communication error.