]> git.ipfire.org Git - thirdparty/man-pages.git/blobdiff - man2/add_key.2
console_codes.4, inode.7: srcfix
[thirdparty/man-pages.git] / man2 / add_key.2
diff --git a/man2/add_key.2 b/man2/add_key.2
deleted file mode 100644 (file)
index 2af01ab..0000000
+++ /dev/null
@@ -1,149 +0,0 @@
-.\" Copyright (C) 2006 Red Hat, Inc. All Rights Reserved.
-.\" Written by David Howells (dhowells@redhat.com)
-.\"
-.\" %%%LICENSE_START(GPLv2+_SW_ONEPARA)
-.\" This program is free software; you can redistribute it and/or
-.\" modify it under the terms of the GNU General Public License
-.\" as published by the Free Software Foundation; either version
-.\" 2 of the License, or (at your option) any later version.
-.\" %%%LICENSE_END
-.\"
-.TH ADD_KEY 2 2016-07-17 Linux "Linux Key Management Calls"
-.SH NAME
-add_key \- add a key to the kernel's key management facility
-.SH SYNOPSIS
-.nf
-.B #include <keyutils.h>
-.sp
-.BI "key_serial_t add_key(const char *" type ", const char *" description ,
-.BI "                     const void *" payload ", size_t " plen ,
-.BI "                     key_serial_t " keyring ");"
-.fi
-
-No glibc wrapper is provided for this system call; see NOTES.
-.SH DESCRIPTION
-.BR add_key ()
-creates or updates a key of the given
-.I type
-and
-.IR description ,
-instantiates it with the
-.I payload
-of length
-.IR plen ,
-attaches it to the nominated
-.IR keyring ,
-and return the key's serial number.
-.P
-The key type may reject the data if it is in the wrong format or
-is in some other way invalid.
-.P
-If the destination
-.I keyring
-already contains a key that matches the specified
-.IR type
-and
-.IR description ,
-then, if the key type supports it, that key will be updated rather than a new
-key being created; if not, a new key will be created and it will displace the
-link to the extant key from the keyring.
-.P
-The destination
-.I keyring
-serial number may be that of a valid keyring for which the caller has
-.I write
-permission, or it may be one of the following special keyring IDs:
-.TP
-.B KEY_SPEC_THREAD_KEYRING
-This specifies the caller's thread-specific keyring.
-.TP
-.B KEY_SPEC_PROCESS_KEYRING
-This specifies the caller's process-specific keyring.
-.TP
-.B KEY_SPEC_SESSION_KEYRING
-This specifies the caller's session-specific keyring.
-.TP
-.B KEY_SPEC_USER_KEYRING
-This specifies the caller's UID-specific keyring.
-.TP
-.B KEY_SPEC_USER_SESSION_KEYRING
-This specifies the caller's UID-session keyring.
-.SS Key types
-There are a number of key types available in the core key management code, and
-these can be specified to this function:
-.TP
-.B \*(lquser\*(rq
-Keys of the user-defined key type may contain a blob of arbitrary data, and the
-.I description
-may be any valid string, though it is preferred that the description be
-prefixed with a string representing the service to which the key is of interest
-and a colon (for instance
-.RB \*(lq afs:mykey \*(rq).
-.TP
-.B \*(lqkeyring\*(rq
-Keyrings are special key types that may contain links to sequences of other
-keys of any type.
-If this interface is used to create a keyring, then a NULL
-.I payload
-should be specified, and
-.I plen
-should be zero.
-.SH RETURN VALUE
-On success,
-.BR add_key ()
-returns the serial number of the key it created or updated.
-On error, \-1 is returned and
-.I errno
-is set to indicate the cause of the error.
-.SH ERRORS
-.TP
-.B EACCES
-The keyring wasn't available for modification by the user.
-.TP
-.B EINVAL
-The payload data was invalid.
-.TP
-.B EKEYEXPIRED
-The keyring has expired.
-.TP
-.B EKEYREVOKED
-The keyring has been revoked.
-.TP
-.B ENOKEY
-The keyring doesn't exist.
-.TP
-.B ENOMEM
-Insufficient memory to create a key.
-.TP
-.B EDQUOT
-The key quota for this user would be exceeded by creating this key or linking
-it to the keyring.
-.SH VERSIONS
-This system call first appeared in Linux 2.6.11.
-.SH CONFORMING TO
-This system call is a nonstandard Linux extension.
-.SH NOTES
-No wrapper for this system call is provided in glibc.
-A wrapper is provided in the
-.IR libkeyutils
-package.
-When employing the wrapper in that library, link with
-.IR \-lkeyutils .
-.SH SEE ALSO
-.BR keyctl (1),
-.BR keyctl (2),
-.BR request_key (2),
-.BR keyctl (3),
-.BR keyutils (7),
-.BR keyrings (7),
-.BR persistent-keyring (7),
-.BR process-keyring (7),
-.BR session-keyring (7),
-.BR thread-keyring (7),
-.BR user-keyring (7),
-.BR user-session-keyring (7)
-
-The kernel source files
-.IR Documentation/security/keys.txt
-and
-.IR Documentation/security/keys-request-key.txt .