aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation
diff options
context:
space:
mode:
authorDavid Howells <dhowells@redhat.com>2008-04-29 04:01:24 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2008-04-29 11:06:16 -0400
commit4a38e122e2cc6294779021ff4ccc784a3997059e (patch)
tree84b401b44e0550b04f831d98a91eacfd7cffb51d /Documentation
parentdceba9944181b1fd5993417b5c8fa0e3dda38f8d (diff)
keys: allow the callout data to be passed as a blob rather than a string
Allow the callout data to be passed as a blob rather than a string for internal kernel services that call any request_key_*() interface other than request_key(). request_key() itself still takes a NUL-terminated string. The functions that change are: request_key_with_auxdata() request_key_async() request_key_async_with_auxdata() Signed-off-by: David Howells <dhowells@redhat.com> Cc: Paul Moore <paul.moore@hp.com> Cc: Chris Wright <chrisw@sous-sol.org> Cc: Stephen Smalley <sds@tycho.nsa.gov> Cc: James Morris <jmorris@namei.org> Cc: Kevin Coffman <kwc@citi.umich.edu> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'Documentation')
-rw-r--r--Documentation/keys-request-key.txt11
-rw-r--r--Documentation/keys.txt14
2 files changed, 16 insertions, 9 deletions
diff --git a/Documentation/keys-request-key.txt b/Documentation/keys-request-key.txt
index 266955d23ee6..09b55e461740 100644
--- a/Documentation/keys-request-key.txt
+++ b/Documentation/keys-request-key.txt
@@ -11,26 +11,29 @@ request_key*():
11 11
12 struct key *request_key(const struct key_type *type, 12 struct key *request_key(const struct key_type *type,
13 const char *description, 13 const char *description,
14 const char *callout_string); 14 const char *callout_info);
15 15
16or: 16or:
17 17
18 struct key *request_key_with_auxdata(const struct key_type *type, 18 struct key *request_key_with_auxdata(const struct key_type *type,
19 const char *description, 19 const char *description,
20 const char *callout_string, 20 const char *callout_info,
21 size_t callout_len,
21 void *aux); 22 void *aux);
22 23
23or: 24or:
24 25
25 struct key *request_key_async(const struct key_type *type, 26 struct key *request_key_async(const struct key_type *type,
26 const char *description, 27 const char *description,
27 const char *callout_string); 28 const char *callout_info,
29 size_t callout_len);
28 30
29or: 31or:
30 32
31 struct key *request_key_async_with_auxdata(const struct key_type *type, 33 struct key *request_key_async_with_auxdata(const struct key_type *type,
32 const char *description, 34 const char *description,
33 const char *callout_string, 35 const char *callout_info,
36 size_t callout_len,
34 void *aux); 37 void *aux);
35 38
36Or by userspace invoking the request_key system call: 39Or by userspace invoking the request_key system call:
diff --git a/Documentation/keys.txt b/Documentation/keys.txt
index 51652d39e61c..b82d38de8b89 100644
--- a/Documentation/keys.txt
+++ b/Documentation/keys.txt
@@ -771,7 +771,7 @@ payload contents" for more information.
771 771
772 struct key *request_key(const struct key_type *type, 772 struct key *request_key(const struct key_type *type,
773 const char *description, 773 const char *description,
774 const char *callout_string); 774 const char *callout_info);
775 775
776 This is used to request a key or keyring with a description that matches 776 This is used to request a key or keyring with a description that matches
777 the description specified according to the key type's match function. This 777 the description specified according to the key type's match function. This
@@ -793,24 +793,28 @@ payload contents" for more information.
793 793
794 struct key *request_key_with_auxdata(const struct key_type *type, 794 struct key *request_key_with_auxdata(const struct key_type *type,
795 const char *description, 795 const char *description,
796 const char *callout_string, 796 const void *callout_info,
797 size_t callout_len,
797 void *aux); 798 void *aux);
798 799
799 This is identical to request_key(), except that the auxiliary data is 800 This is identical to request_key(), except that the auxiliary data is
800 passed to the key_type->request_key() op if it exists. 801 passed to the key_type->request_key() op if it exists, and the callout_info
802 is a blob of length callout_len, if given (the length may be 0).
801 803
802 804
803(*) A key can be requested asynchronously by calling one of: 805(*) A key can be requested asynchronously by calling one of:
804 806
805 struct key *request_key_async(const struct key_type *type, 807 struct key *request_key_async(const struct key_type *type,
806 const char *description, 808 const char *description,
807 const char *callout_string); 809 const void *callout_info,
810 size_t callout_len);
808 811
809 or: 812 or:
810 813
811 struct key *request_key_async_with_auxdata(const struct key_type *type, 814 struct key *request_key_async_with_auxdata(const struct key_type *type,
812 const char *description, 815 const char *description,
813 const char *callout_string, 816 const char *callout_info,
817 size_t callout_len,
814 void *aux); 818 void *aux);
815 819
816 which are asynchronous equivalents of request_key() and 820 which are asynchronous equivalents of request_key() and