SYNOPSIS

#include <sys/types.h>

#include "dpm_api.h"

int dpm_getpoolfs (char *poolname, int *nbfs, struct dpm_fs **dpm_fs)

DESCRIPTION

dpm_getpoolfs gets list of filesystems for a given pool.

The input argument is:

poolname

specifies the disk pool name previously defined using dpm_addpool.

The output arguments are:

nbfs

will be set to the number of replies in the array of filesystems.

dpm_fs

will be set to the address of an array of dpm_fs structures allocated by the API. The client application is responsible for freeing the array when not needed anymore.

struct dpm_fs {
	char		poolname[CA_MAXPOOLNAMELEN+1];
	char		server[CA_MAXHOSTNAMELEN+1];
	char		fs[80];
	u_signed64	capacity;
	u_signed64	free;
	int		status;
	int		weight;
};

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

poolname, nbfs or dpm_fs is a NULL pointer.

ENOMEM

Memory could not be allocated for storing the reply.

EINVAL

The pool is unknown or the length of poolname exceeds CA_MAXPOOLNAMELEN.

SENOSHOST

Host unknown.

SECOMERR

Communication error.