keyctl_link(3) — Linux manual page


KEYCTL_LINK(3)         Linux Key Management Calls         KEYCTL_LINK(3)

NAME         top

       keyctl_link, keyctl_unlink - link/unlink a key to/from a keyring

SYNOPSIS         top

       #include <keyutils.h>

       long keyctl_link(key_serial_t key, key_serial_t keyring);

       long keyctl_unlink(key_serial_t key, key_serial_t keyring);

DESCRIPTION         top

       keyctl_link() creates a link from keyring to key, displacing any
       link to another key of the same type and description in that
       keyring if one exists.

       keyctl_unlink() removes the link from keyring to key if it

       The caller must have write permission on a keyring to be able to
       create or remove links in it.

       The caller must have link permission on a key to be able to
       create a link to it.

RETURN VALUE         top

       On success keyctl_link() and keyctl_unlink() return 0.  On error,
       the value -1 will be returned and errno will have been set to an
       appropriate error.

ERRORS         top

       ENOKEY The key or the keyring specified are invalid.

              The key or the keyring specified have expired.

              The key or the keyring specified have been revoked.

       EACCES The keyring exists, but is not writable by the calling

       For keyctl_link() only:

       ENOMEM Insufficient memory to expand the keyring

       EDQUOT Expanding the keyring would exceed the keyring owner's

       EACCES The key exists, but is not linkable by the calling

LINKING         top

       This is a library function that can be found in libkeyutils.
       When linking, -lkeyutils should be specified to the linker.

SEE ALSO         top

       keyctl(1), add_key(2), keyctl(2), request_key(2), keyctl(3),
       keyrings(7), keyutils(7)

COLOPHON         top

       This page is part of the keyutils (key management utilities)
       project.  Information about the project can be found at [unknown
       -- if you know, please contact] If you have a
       bug report for this manual page, send it to  This page was obtained from the
       project's upstream Git repository
       on 2023-12-22.  (At that time, the date of the most recent commit
       that was found in the repository was 2023-03-20.)  If you
       discover any rendering problems in this HTML version of the page,
       or you believe there is a better or more up-to-date source for
       the page, or you have corrections or improvements to the
       information in this COLOPHON (which is not part of the original
       manual page), send a mail to

Linux                          4 May 2006                 KEYCTL_LINK(3)

Pages that refer to this page: keyctl(2)keyctl(3)keyrings(7)