---
name: "dpm_getstatus_copyreq"
section: "3"
platform: "linux"
package: "libdpm-dev"
version: "1.10.0-2+b3"
release: "Debian 10 (Buster)"
platforms: ["linux"]
url: "https://new.carta.tech/dpm_getstatus_copyreq"
---

# dpm\_getstatus\_copyreq(3)

get status for a dpm\_copy request

## NAME

dpm\_getstatus\_copyreq - get status for a dpm\_copy request

## SYNOPSIS

**#include \<sys/types.h\>**\
 **#include "dpm\_api.h"**

**int dpm\_getstatus\_copyreq (char \****r\_token***,** **int** *nbsurls***,** **char \*\****fromsurls***,** **char \*\****tosurls***,** **int \****nbreplies***,** **struct dpm\_copyfilestatus \*\****filestatuses***)**

## DESCRIPTION

**dpm\_getstatus\_copyreq** gets status for a dpm\_copy request.

The input arguments are:

- *r\_token*

  specifies the token returned by a previous copy request.

- *nbsurls*

  specifies the number of files for which the status is requested. If zero, the status of all files in the copy request is returned.

- *fromsurls*

  specifies the array of source file names.

- *tosurls*

  specifies the array of target file names.

The output arguments are:

- *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\_copyfilestatus structures allocated by the API. The client application is responsible for freeing the array when not needed anymore.

```
struct dpm_copyfilestatus {
	char		*from_surl;
	char		*to_surl;
	u_signed64	filesize;
	int		status;
	char		*errstring;
	time_t	f_lifetime;
};
```

## 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**

  *nbsurls* is strictly positive and *fromsurls* or *tosurls* is NULL or *r\_token*, *nbreplies* or *filestatuses* is a NULL pointer.

- **ENOMEM**

  Memory could not be allocated for marshalling the request.

- **EINVAL**

  *nbsurls* is not positive, the token is invalid/unknown or all file requests have errors.

- **SENOSHOST**

  Host unknown.

- **SEINTERNAL**

  Database error.

- **SECOMERR**

  Communication error.
