GFS_REALPATH(3)

NAME
gfs_realpath - resolve pathname in Gfarm filesystem

SYNOPSIS

#include <gfarm/gfarm.h>

char *gfs_realpath (const char * gfarm_url, char ** resolved_pathp);

DESCRIPTION

gfs_realpath expands a home directory '~' and resolves references to '.', '..' and extra '/' characters in the null terminated string pointed to by gfarm_url and stores the canonicalized absolute pathname to dynamically allocated memory space whose pointer is returned to resolved_pathp. It will be necessary to free the dynamically allocated memory space pointed to by resolved_pathp.

RETURN VALUES

NULL
    The function terminated successfully.

GFARM_ERR_NO_MEMORY
    Insufficient memory was available.

GFARM_ERR_NOT_A_DIRECTORY
    A component of the path prefix is not a directory.

GFARM_ERR_INVALID_ARGUMENT
    gfarm_url is NULL.

GFARM_ERR_PERMISSION_DENIED
    gfarm_url points outside your accessible address space.

GFARM_ERR_NO_SUCH_OBJECT
    gfarm_url does not exist.

Others
    An error except the above occurred. The reason is shown by its pointed strings.