SYNOPSIS
#include <sys/types.h>#include "dpm_api.h"
int dpm_updatespace (char *s_token, u_signed64 req_t_space, u_signed64 req_g_space, time_t req_lifetime, int nbgids, gid_t *req_gids, u_signed64 *actual_t_space, u_signed64 *actual_g_space, time_t *actual_lifetime)
DESCRIPTION
dpm_updatespace updates space.The input arguments are:
- s_token
- specifies the token returned by a previous reservespace request.
- req_t_space
- Total space requested in bytes. If set to -1, the current value is unchanged.
- req_g_space
- Guaranteed space requested in bytes. If set to -1, the current value is unchanged.
- req_lifetime
- specifies the requested space lifetime (in seconds) relative to the current time. If set to -1, the current value is unchanged.
- nbgids
- is the size of the array of group ids req_gids. If set to -1, the current value is unchanged.
- req_gids
- when zero, the space is reserved for the user if the requester has a proxy without VOMS extension or for the group if the requester has a proxy with VOMS extension. If not zero, the space is reserved for this set of group ids. If the caller does not belong to the group, it must have ADMIN privileges.
The output arguments are:
- actual_t_space
- Total space reserved in bytes (best effort).
- actual_g_space
- Guaranteed space reserved in bytes.
- actual_lifetime
- Lifetime of the reserved space (in seconds) relative to the current time.
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_token is a NULL pointer or nbgids is greater than 0 and req_gids is a NULL pointer.
- EINVAL
- s_token is invalid (too long) or unknown or the space requested is not a positive value or the number of gids is too big.
- SENOSHOST
- Host unknown.
- SEINTERNAL
- Database error.
- SECOMERR
-
Communication error.