• Home
  • Raw
  • Download

Lines Matching refs:key

62 static int fscrypt_key_instantiate(struct key *key,  in fscrypt_key_instantiate()  argument
65 key->payload.data[0] = (struct fscrypt_master_key *)prep->data; in fscrypt_key_instantiate()
69 static void fscrypt_key_destroy(struct key *key) in fscrypt_key_destroy() argument
71 free_master_key(key->payload.data[0]); in fscrypt_key_destroy()
74 static void fscrypt_key_describe(const struct key *key, struct seq_file *m) in fscrypt_key_describe() argument
76 seq_puts(m, key->description); in fscrypt_key_describe()
78 if (key_is_positive(key)) { in fscrypt_key_describe()
79 const struct fscrypt_master_key *mk = key->payload.data[0]; in fscrypt_key_describe()
100 static int fscrypt_user_key_instantiate(struct key *key, in fscrypt_user_key_instantiate() argument
108 return key_payload_reserve(key, FSCRYPT_MAX_KEY_SIZE); in fscrypt_user_key_instantiate()
111 static void fscrypt_user_key_describe(const struct key *key, struct seq_file *m) in fscrypt_user_key_describe() argument
113 seq_puts(m, key->description); in fscrypt_user_key_describe()
133 static struct key *search_fscrypt_keyring(struct key *keyring, in search_fscrypt_keyring()
201 struct key *keyring; in allocate_filesystem_keyring()
229 struct key *fscrypt_find_master_key(struct super_block *sb, in fscrypt_find_master_key()
232 struct key *keyring; in fscrypt_find_master_key()
247 struct key *keyring; in allocate_master_key_users_keyring()
266 static struct key *find_master_key_user(struct fscrypt_master_key *mk) in find_master_key_user()
284 struct key *mk_user; in add_master_key_user()
307 struct key *mk_user; in remove_master_key_user()
325 struct key *keyring) in add_new_master_key()
329 struct key *key; in add_new_master_key() local
360 key = key_alloc(&key_type_fscrypt, description, in add_new_master_key()
364 if (IS_ERR(key)) { in add_new_master_key()
365 err = PTR_ERR(key); in add_new_master_key()
368 err = key_instantiate_and_link(key, mk, sizeof(*mk), keyring, NULL); in add_new_master_key()
369 key_put(key); in add_new_master_key()
385 struct key *mk_user; in add_existing_master_key()
432 struct key *key; in add_master_key() local
437 key = fscrypt_find_master_key(sb, mk_spec); in add_master_key()
438 if (IS_ERR(key)) { in add_master_key()
439 err = PTR_ERR(key); in add_master_key()
452 down_write(&key->sem); in add_master_key()
453 err = add_existing_master_key(key->payload.data[0], secret); in add_master_key()
454 up_write(&key->sem); in add_master_key()
457 key_invalidate(key); in add_master_key()
458 key_put(key); in add_master_key()
461 key_put(key); in add_master_key()
617 struct key *key, *mk_user; in fscrypt_verify_key_added() local
624 key = fscrypt_find_master_key(sb, &mk_spec); in fscrypt_verify_key_added()
625 if (IS_ERR(key)) { in fscrypt_verify_key_added()
626 err = PTR_ERR(key); in fscrypt_verify_key_added()
629 mk = key->payload.data[0]; in fscrypt_verify_key_added()
637 key_put(key); in fscrypt_verify_key_added()
827 struct key *key; in do_remove_key() local
851 key = fscrypt_find_master_key(sb, &arg.key_spec); in do_remove_key()
852 if (IS_ERR(key)) in do_remove_key()
853 return PTR_ERR(key); in do_remove_key()
854 mk = key->payload.data[0]; in do_remove_key()
856 down_write(&key->sem); in do_remove_key()
865 up_write(&key->sem); in do_remove_key()
877 up_write(&key->sem); in do_remove_key()
890 up_write(&key->sem); in do_remove_key()
896 key_invalidate(key); in do_remove_key()
914 key_put(key); in do_remove_key()
961 struct key *key; in fscrypt_ioctl_get_key_status() local
978 key = fscrypt_find_master_key(sb, &arg.key_spec); in fscrypt_ioctl_get_key_status()
979 if (IS_ERR(key)) { in fscrypt_ioctl_get_key_status()
980 if (key != ERR_PTR(-ENOKEY)) in fscrypt_ioctl_get_key_status()
981 return PTR_ERR(key); in fscrypt_ioctl_get_key_status()
986 mk = key->payload.data[0]; in fscrypt_ioctl_get_key_status()
987 down_read(&key->sem); in fscrypt_ioctl_get_key_status()
997 struct key *mk_user; in fscrypt_ioctl_get_key_status()
1012 up_read(&key->sem); in fscrypt_ioctl_get_key_status()
1013 key_put(key); in fscrypt_ioctl_get_key_status()