NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | ERRORS | LINKING | SEE ALSO | COLOPHON

KEYCTL_UPDATE(3)         Linux Key Management Calls         KEYCTL_UPDATE(3)

NAME         top

       keyctl_update - Update a key

SYNOPSIS         top

       #include <keyutils.h>

       long keyctl_update(key_serial_t key, const void *payload,
       size_t plen);

DESCRIPTION         top

       keyctl_update() updates the payload of a key if the key type permits
       it.

       The caller must have write permission on a key to be able update it.

       payload and plen specify the data for the new payload.  payload may
       be NULL and plen may be zero if the key type permits that.  The key
       type may reject the data if it's in the wrong format or in some other
       way invalid.

RETURN VALUE         top

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

ERRORS         top

       ENOKEY The key specified is invalid.

       EKEYEXPIRED
              The key specified has expired.

       EKEYREVOKED
              The key specified had been revoked.

       EINVAL The payload data was invalid.

       ENOMEM Insufficient memory to store the new payload.

       EDQUOT The key quota for this user would be exceeded by increasing
              the size of the key to accommodate the new payload.

       EACCES The key exists, but is not writable by the calling process.

       EOPNOTSUPP
              The key type does not support the update operation on its
              keys.

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),
       keyutils(7),
       keyrings(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 man-pages@man7.org] If you have a bug report for
       this manual page, send it to keyrings@linux-nfs.org.  This page was
       obtained from the project's upstream Git repository 
       ⟨http://git.kernel.org/pub/scm/linux/kernel/git/dhowells/keyutils.git⟩
       on 2016-08-07.  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 man-pages@man7.org

Linux                            4 May 2006                 KEYCTL_UPDATE(3)