DPM_GETSPACEMD(3) DPM Library Functions DPM_GETSPACEMD(3)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.
LCG $Date: 2008/09/25 10:17:46 $ DPM_GETSPACEMD(3)
Check Out this Related Man Page
DPM_GET(3) DPM Library Functions DPM_GET(3)NAME
dpm_get - make a set of existing files available for I/O
SYNOPSIS
#include <sys/types.h>
#include "dpm_api.h"
int dpm_get (int nbreqfiles, struct dpm_getfilereq *reqfiles, int nbprotocols, char **protocols, char *u_token, time_t retrytime, char
*r_token, int *nbreplies, struct dpm_getfilestatus **filestatuses)
DESCRIPTION
dpm_get makes a set of existing files available for I/O.
The input arguments are:
nbreqfiles
specifies the number of files belonging to the request.
reqfiles
specifies the array of file requests (dpm_getfilereq structures).
struct dpm_getfilereq {
char *from_surl;
time_t lifetime;
char f_type;
char s_token[CA_MAXDPMTOKENLEN+1];
char ret_policy;
int flags;
};
nbprotocols
specifies the number of protocols.
protocols
specifies the array of protocols.
u_token
specifies the user provided description associated with the request.
retrytime
This field is currently ignored.
The output arguments are:
r_token
Address of a buffer to receive the system allocated token. The buffer must be at least CA_MAXDPMTOKENLEN+1 characters long.
nbreplies
will be set to the number of replies in the array of file statuses.
filestatuses
will be set to the address of an array of dpm_getfilestatus structures allocated by the API. The client application is responsible
for freeing the array when not needed anymore.
struct dpm_getfilestatus {
char *from_surl;
char *turl;
u_signed64 filesize;
int status;
char *errstring;
time_t pintime;
};
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 reqfiles, protocols, r_token, nbreplies or filestatuses is a NULL pointer.
ENOMEM Memory could not be allocated for marshalling the request.
EINVAL nbreqfiles or nbprotocols is not strictly positive, the protocols are not supported, the length of the user request descrip-
tion is greater than 255 or all file requests have errors.
SENOSHOST Host unknown.
SEINTERNAL Database error.
SECOMERR Communication error.
LCG $Date: 2006/12/20 15:21:57 $ DPM_GET(3)