dpm_getspacemd(3) - Linux man page

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.