.\" .\" Copyright (C) 2014 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 Licence .\" as published by the Free Software Foundation; either version .\" 2 of the Licence, or (at your option) any later version. .\" %%%LICENSE_END .\" .TH "PROCESS-KEYRING" 7 2016-11-01 Linux "Linux Programmer's Manual" .SH NAME process-keyring \- per-process shared keyring .SH DESCRIPTION The process keyring is a keyring used to anchor keys on behalf of a process. It is only created when a process requests it. .P A special serial number value, .BR KEY_SPEC_PROCESS_KEYRING , is defined that can be used in lieu of the calling process's process keyring's actual serial number. .P From the keyctl utility, '\fB@p\fP' can be used instead of a numeric key ID in much the same way, but as keyctl is a program run after forking, this is of no utility. .P A process's process keyring is inherited across .BR clone (2) with .B CLONE_THREAD and is cleared by .BR execve (2). The process keyring will be destroyed when the last thread that refers to it exits. .P If a process doesn't have a process keyring when it is accessed, then the process keyring will be created if the keyring is to be modified, otherwise error .B ENOKEY will be issued. .SH SEE ALSO .ad l .nh .BR keyctl (1), .BR keyctl (3), .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)