DPM_GETSPACEMD
Section: DPM Library Functions (3)
Updated: $Date: 2008/09/25 10:17:46 $
Index
Return to Main Contents
NAME
dpm_getspacemd - get space metadata
SYNOPSIS
#include <sys/types.h>
#include "dpm_api.h"
int dpm_getspacemd (int nbtokens,
char **s_tokens,
int *nbreplies,
struct dpm_space_metadata **spacemd)
DESCRIPTION
dpm_getspacemd
gets space metadata.
The input arguments are:
- nbtokens
-
specifies the number of tokens in the request.
- s_tokens
-
specifies an array of tokens returned by previous reservespace requests.
The output arguments are:
- nbreplies
-
will be set to the number of replies in the array of space metadata.
- spacemd
-
will be set to the address of an array of dpm_space_metadata structures allocated
by the API. The client application is responsible for freeing the array when not
needed anymore.
struct dpm_space_metadata {
char s_type;
char s_token[CA_MAXDPMTOKENLEN+1];
uid_t s_uid;
gid_t s_gid;
char ret_policy;
char ac_latency;
char u_token[256];
char client_dn[256];
u_signed64 t_space; /* Total space */
u_signed64 g_space; /* Guaranteed space */
signed64 u_space; /* Unused space */
char poolname[CA_MAXPOOLNAMELEN+1];
time_t a_lifetime; /* Lifetime assigned */
time_t r_lifetime; /* Remaining lifetime */
int nbgids;
gid_t *gids; /* restrict the space to given group(s) */
};
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
-
s_tokens ,
nbreplies
or
spacemd
is a NULL pointer.
- ENOMEM
-
Memory could not be allocated for storing the reply.
- EINVAL
-
nbtokens
is not strictly positive or the specified tokens are invalid/unknown.
- SENOSHOST
-
Host unknown.
- SEINTERNAL
-
Database error.
- SECOMERR
-
Communication error.