comparison CSP2/CSP2_env/env-d9b9114564458d9d-741b3de822f2aaca6c6caa4325c4afce/share/man/man3/keyctl_move.3 @ 68:5028fdace37b

planemo upload commit 2e9511a184a1ca667c7be0c6321a36dc4e3d116d
author jpayne
date Tue, 18 Mar 2025 16:23:26 -0400
parents
children
comparison
equal deleted inserted replaced
67:0e9998148a16 68:5028fdace37b
1 .\"
2 .\" Copyright (C) 2019 Red Hat, Inc. All Rights Reserved.
3 .\" Written by David Howells (dhowells@redhat.com)
4 .\"
5 .\" This program is free software; you can redistribute it and/or
6 .\" modify it under the terms of the GNU General Public License
7 .\" as published by the Free Software Foundation; either version
8 .\" 2 of the License, or (at your option) any later version.
9 .\"
10 .TH KEYCTL_MOVE 3 "29 May 2019" Linux "Linux Key Management Calls"
11 .\"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
12 .SH NAME
13 keyctl_move \- Move a key between keyrings
14 .\"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
15 .SH SYNOPSIS
16 .nf
17 .B #include <keyutils.h>
18 .sp
19 .BI "long keyctl_move(key_serial_t " key ", key_serial_t " from_keyring ","
20 .br
21 .BI " key_serial_t " to_keyring ", unsigned int " flags ");"
22 .\"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
23 .SH DESCRIPTION
24 .BR keyctl_move ()
25 atomically unlinks
26 .I key
27 from
28 .I from_keyring
29 and links it into
30 .I to_keyring
31 in a single operation. Depending on the flags set, a link to any matching key
32 in to_keyring may get displaced.
33 .P
34 .I flags
35 is a bitwise-OR of zero or more of the following flags:
36 .P
37 .TP
38 .B KEYCTL_MOVE_EXCL
39 If there's a matching key in to_keyring, don't displace it but rather return
40 an error.
41 .P
42 The caller must have
43 .B write
44 permission on both keyring to be able create or remove links in them.
45 .P
46 The caller must have
47 .B link
48 permission on a key to be able to create a new link to it.
49 .\"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
50 .SH RETURN VALUE
51 On success
52 .BR keyctl_move ()
53 return
54 .BR 0 .
55 On error, the value
56 .B -1
57 will be returned and
58 .I errno
59 will have been set to an appropriate error.
60 .\"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
61 .SH ERRORS
62 .TP
63 .B ENOKEY
64 The key or one of the keyrings specified are invalid.
65 .TP
66 .B ENOKEY
67 A key with the same type and description is present in to_keyring and
68 KEYCTL_MOVE_EXCL is set.
69 .TP
70 .B EKEYEXPIRED
71 The key or one of the keyrings specified have expired.
72 .TP
73 .B EKEYREVOKED
74 The key or one of the keyrings specified have been revoked.
75 .TP
76 .B EACCES
77 The key exists, but is not
78 .B linkable
79 by the calling process.
80 .TP
81 .B EACCES
82 The keyrings exist, but are not
83 .B writable
84 by the calling process.
85 .TP
86 .B ENOMEM
87 Insufficient memory to effect the changes.
88 .TP
89 .B EDQUOT
90 Expanding to_keyring would exceed the keyring owner's quota.
91 .\"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
92 .SH LINKING
93 This is a library function that can be found in
94 .IR libkeyutils .
95 When linking,
96 .B \-lkeyutils
97 should be specified to the linker.
98 .\"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
99 .SH SEE ALSO
100 .ad l
101 .nh
102 .BR keyctl (1),
103 .BR add_key (2),
104 .BR keyctl (2),
105 .BR request_key (2),
106 .BR keyctl (3),
107 .BR keyrings (7),
108 .BR keyutils (7)
109