Lines Matching refs:key
1 /* user_defined.c: user defined key type
40 * instantiate a user defined key
42 int user_instantiate(struct key *key, const void *data, size_t datalen)
51 ret = key_payload_reserve(key, datalen);
63 rcu_assign_pointer(key->payload.data, upayload);
75 * dispose of the old data from an updated user defined key
89 * update a user defined key
90 * - the key's semaphore is write-locked
92 int user_update(struct key *key, const void *data, size_t datalen)
113 ret = key_payload_reserve(key, datalen);
117 zap = key->payload.data;
118 rcu_assign_pointer(key->payload.data, upayload);
119 key->expiry = 0;
135 int user_match(const struct key *key, const void *description)
137 return strcmp(key->description, description) == 0;
146 * - called with the key sem write-locked
148 void user_revoke(struct key *key)
150 struct user_key_payload *upayload = key->payload.data;
153 key_payload_reserve(key, 0);
156 rcu_assign_pointer(key->payload.data, NULL);
166 * dispose of the data dangling from the corpse of a user key
168 void user_destroy(struct key *key)
170 struct user_key_payload *upayload = key->payload.data;
180 * describe the user key
182 void user_describe(const struct key *key, struct seq_file *m)
184 seq_puts(m, key->description);
186 seq_printf(m, ": %u", key->datalen);
194 * read the key data
195 * - the key's semaphore is read-locked
197 long user_read(const struct key *key, char __user *buffer, size_t buflen)
202 upayload = rcu_dereference(key->payload.data);