jpayne@68
|
1 .\"
|
jpayne@68
|
2 .\" Copyright (C) 2006 Red Hat, Inc. All Rights Reserved.
|
jpayne@68
|
3 .\" Written by David Howells (dhowells@redhat.com)
|
jpayne@68
|
4 .\"
|
jpayne@68
|
5 .\" This program is free software; you can redistribute it and/or
|
jpayne@68
|
6 .\" modify it under the terms of the GNU General Public License
|
jpayne@68
|
7 .\" as published by the Free Software Foundation; either version
|
jpayne@68
|
8 .\" 2 of the License, or (at your option) any later version.
|
jpayne@68
|
9 .\"
|
jpayne@68
|
10 .TH KEYCTL_UPDATE 3 "4 May 2006" Linux "Linux Key Management Calls"
|
jpayne@68
|
11 .\"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
jpayne@68
|
12 .SH NAME
|
jpayne@68
|
13 keyctl_update \- update a key
|
jpayne@68
|
14 .\"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
jpayne@68
|
15 .SH SYNOPSIS
|
jpayne@68
|
16 .nf
|
jpayne@68
|
17 .B #include <keyutils.h>
|
jpayne@68
|
18 .sp
|
jpayne@68
|
19 .BI "long keyctl_update(key_serial_t " key ", const void *" payload ,
|
jpayne@68
|
20 .BI "size_t " plen ");"
|
jpayne@68
|
21 .\"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
jpayne@68
|
22 .SH DESCRIPTION
|
jpayne@68
|
23 .BR keyctl_update ()
|
jpayne@68
|
24 updates the payload of a key if the key type permits it.
|
jpayne@68
|
25 .P
|
jpayne@68
|
26 The caller must have
|
jpayne@68
|
27 .B write
|
jpayne@68
|
28 permission on a key to be able update it.
|
jpayne@68
|
29 .P
|
jpayne@68
|
30 .I payload
|
jpayne@68
|
31 and
|
jpayne@68
|
32 .I plen
|
jpayne@68
|
33 specify the data for the new payload.
|
jpayne@68
|
34 .I payload
|
jpayne@68
|
35 may be NULL and
|
jpayne@68
|
36 .I plen
|
jpayne@68
|
37 may be zero if the key type permits that. The key type may reject the data if
|
jpayne@68
|
38 it's in the wrong format or in some other way invalid.
|
jpayne@68
|
39 .\"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
jpayne@68
|
40 .SH RETURN VALUE
|
jpayne@68
|
41 On success
|
jpayne@68
|
42 .BR keyctl_update ()
|
jpayne@68
|
43 returns
|
jpayne@68
|
44 .BR 0 .
|
jpayne@68
|
45 On error, the value
|
jpayne@68
|
46 .B -1
|
jpayne@68
|
47 will be returned and
|
jpayne@68
|
48 .I errno
|
jpayne@68
|
49 will have been set to an appropriate error.
|
jpayne@68
|
50 .\"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
jpayne@68
|
51 .SH ERRORS
|
jpayne@68
|
52 .TP
|
jpayne@68
|
53 .B ENOKEY
|
jpayne@68
|
54 The key specified is invalid.
|
jpayne@68
|
55 .TP
|
jpayne@68
|
56 .B EKEYEXPIRED
|
jpayne@68
|
57 The key specified has expired.
|
jpayne@68
|
58 .TP
|
jpayne@68
|
59 .B EKEYREVOKED
|
jpayne@68
|
60 The key specified had been revoked.
|
jpayne@68
|
61 .TP
|
jpayne@68
|
62 .B EINVAL
|
jpayne@68
|
63 The payload data was invalid.
|
jpayne@68
|
64 .TP
|
jpayne@68
|
65 .B ENOMEM
|
jpayne@68
|
66 Insufficient memory to store the new payload.
|
jpayne@68
|
67 .TP
|
jpayne@68
|
68 .B EDQUOT
|
jpayne@68
|
69 The key quota for this user would be exceeded by increasing the size of the
|
jpayne@68
|
70 key to accommodate the new payload.
|
jpayne@68
|
71 .TP
|
jpayne@68
|
72 .B EACCES
|
jpayne@68
|
73 The key exists, but is not
|
jpayne@68
|
74 .B writable
|
jpayne@68
|
75 by the calling process.
|
jpayne@68
|
76 .TP
|
jpayne@68
|
77 .B EOPNOTSUPP
|
jpayne@68
|
78 The key type does not support the update operation on its keys.
|
jpayne@68
|
79 .\"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
jpayne@68
|
80 .SH LINKING
|
jpayne@68
|
81 This is a library function that can be found in
|
jpayne@68
|
82 .IR libkeyutils .
|
jpayne@68
|
83 When linking,
|
jpayne@68
|
84 .B \-lkeyutils
|
jpayne@68
|
85 should be specified to the linker.
|
jpayne@68
|
86 .\"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
jpayne@68
|
87 .SH SEE ALSO
|
jpayne@68
|
88 .ad l
|
jpayne@68
|
89 .nh
|
jpayne@68
|
90 .BR keyctl (1),
|
jpayne@68
|
91 .BR add_key (2),
|
jpayne@68
|
92 .BR keyctl (2),
|
jpayne@68
|
93 .BR request_key (2),
|
jpayne@68
|
94 .BR keyctl (3),
|
jpayne@68
|
95 .BR keyrings (7),
|
jpayne@68
|
96 .BR keyutils (7)
|