Lines Matching refs:key
2 /* user_defined.c: user defined key type
38 * This key type is essentially the same as key_type_user, but it does
57 * Preparse a user defined key payload
81 * Free a preparse of a user defined key payload
98 * update a user defined key
99 * - the key's semaphore is write-locked
101 int user_update(struct key *key, struct key_preparsed_payload *prep)
107 ret = key_payload_reserve(key, prep->datalen);
112 key->expiry = prep->expiry;
113 if (key_is_positive(key))
114 zap = dereference_key_locked(key);
115 rcu_assign_keypointer(key, prep->payload.data[0]);
126 * - called with the key sem write-locked
128 void user_revoke(struct key *key)
130 struct user_key_payload *upayload = user_key_payload_locked(key);
133 key_payload_reserve(key, 0);
136 rcu_assign_keypointer(key, NULL);
144 * dispose of the data dangling from the corpse of a user key
146 void user_destroy(struct key *key)
148 struct user_key_payload *upayload = key->payload.data[0];
156 * describe the user key
158 void user_describe(const struct key *key, struct seq_file *m)
160 seq_puts(m, key->description);
161 if (key_is_positive(key))
162 seq_printf(m, ": %u", key->datalen);
168 * read the key data
169 * - the key's semaphore is read-locked
171 long user_read(const struct key *key, char *buffer, size_t buflen)
176 upayload = user_key_payload_locked(key);
192 /* Vet the description for a "logon" key */