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

# lfc\_listlinks(3)

list link entries for a given file

## NAME

lfc\_listlinks - list link entries for a given file

## SYNOPSIS

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

**struct lfc\_linkinfo \*lfc\_listlinks (const char \****path***,** **const char \****guid***,** **int** *flags***,** **lfc\_list \****listp***)**

## DESCRIPTION

**lfc\_listlinks** lists link entries for a given file. The first entry in the list is the actual file name, while the other entries are the symbolic links pointing at this file.

- *path*

  specifies the logical pathname.

- *guid*

  specifies the Grid Unique IDentifier.

- *flags*

  may be one of the following constant:

  - **CNS\_LIST\_BEGIN**

    the first call must have this flag set to allocate buffers and initialize pointers.

  - **CNS\_LIST\_CONTINUE**

    all the following calls must have this flag set.

  - **CNS\_LIST\_END**

    final call to terminate the list and free resources.

## RETURN VALUE

This routine returns a pointer to a structure containing the current link entry if the operation was successful or NULL if all entries have been returned or if the operation failed. In the latter case, **serrno** is set appropriately.

## ERRORS

- **ENOENT**

  The named file does not exist.

- **EACCES**

  Search permission is denied on a component of the parent directory.

- **ENOMEM**

  Memory could not be allocated for the output buffer.

- **EFAULT**

  *path* and *guid* are NULL pointers or *listp* is a NULL pointer.

- **ENOTDIR**

  A component of *path* prefix is not a directory.

- **EINVAL**

  The length of *guid* exceeds **CA\_MAXGUIDLEN** or path and guid are both given and they point at a different file.

- **ENAMETOOLONG**

  The length of *path* exceeds **CA\_MAXPATHNAMELEN**.

- **SENOSHOST**

  Host unknown.

- **SENOSSERV**

  Service unknown.

- **SECOMERR**

  Communication error.

- **ENSNACT**

  Name server is not running or is being shutdown.

## SEE ALSO

**[Castor\_limits(4)](/Castor_limits/4.md)**, **[lfc\_symlink(3)](/lfc_symlink/3.md)**
