### Method

# Gio UnixFDList append

since: 2.24

#### Declaration

    gint
    g_unix_fd_list_append (
      GUnixFDList* list,
      gint fd,
      GError** error
    )

#### Description

Adds a file descriptor to `list`.

The file descriptor is duplicated using dup(). You keep your copy of the descriptor and the copy contained in `list` will be closed when `list` is finalized.

A possible cause of failure is exceeding the per-process or system-wide file descriptor limit.

The index of the file descriptor in the list is returned. If you use this index with `g_unix_fd_list_get()` then you will receive back a duplicated copy of the same file descriptor.

Available since: 2.24

#### Parameters

`fd`

  Type: `gint`

  A valid open file descriptor.

`error`

  Type: `GError **`

  The return location for a recoverable error.

  The argument can be `NULL`.
  If the return location is not `NULL`, then you must initialize it to a `NULL` `GError*`.
  The argument will be left initialized to `NULL` by the method if there are no errors.
  In case of error, the argument will be set to a newly allocated `GError`; the caller will take ownership of the data, and be responsible for freeing it.

#### Return value

Type: `gint`

The index of the appended fd in case of success, else -1 (and `error` is set).