Lines Matching refs:salt
227 struct salt { struct
228 unsigned char *salt; argument
234 struct salt *salt_list; argument
239 static struct salt *find_by_salt(unsigned char *salt, size_t salt_len) in find_by_salt() argument
242 struct salt *p; in find_by_salt()
246 !memcmp(p->salt, salt, salt_len)) in find_by_salt()
251 static void add_salt(unsigned char *salt, size_t salt_len) in add_salt() argument
253 if (find_by_salt(salt, salt_len)) in add_salt()
257 salt_list = realloc(salt_list, max_salt * sizeof(struct salt)); in add_salt()
263 salt_list[num_salt].salt = salt; in add_salt()
271 memset(salt_list, 0, sizeof(struct salt) * max_salt); in clear_secrets()
393 static void set_policy(struct salt *set_salt, int pad, in set_policy()
396 struct salt *salt; in set_policy() local
416 salt = set_salt; in set_policy()
423 salt = find_by_salt(uu, sizeof(uu)); in set_policy()
424 if (!salt) { in set_policy()
435 memcpy(policy.master_key_descriptor, salt->key_desc, in set_policy()
443 strerror(errno), salt->key_ref_str, argv[x]); in set_policy()
447 salt->key_ref_str, argv[x]); in set_policy()
451 static void pbkdf2_sha512(const char *passphrase, struct salt *salt, in pbkdf2_sha512() argument
471 if (salt->salt_len > F2FS_MAX_SALT_SIZE) { in pbkdf2_sha512()
472 printf("Salt size is %zd; max is %d.\n", salt->salt_len, in pbkdf2_sha512()
478 memcpy(saltbuf, salt->salt, salt->salt_len); in pbkdf2_sha512()
588 static void generate_key_ref_str(struct salt *salt) in generate_key_ref_str() argument
594 f2fs_sha512(salt->key, F2FS_MAX_KEY_SIZE, key_ref1); in generate_key_ref_str()
596 memcpy(salt->key_desc, key_ref2, F2FS_KEY_DESCRIPTOR_SIZE); in generate_key_ref_str()
598 sprintf(&salt->key_ref_str[x * 2], "%02x", in generate_key_ref_str()
599 salt->key_desc[x]); in generate_key_ref_str()
601 salt->key_ref_str[F2FS_KEY_REF_STR_BUF_SIZE - 1] = '\0'; in generate_key_ref_str()
604 static void insert_key_into_keyring(const char *keyring, struct salt *salt) in insert_key_into_keyring() argument
617 salt->key_ref_str); in insert_key_into_keyring()
623 salt->key_ref_str); in insert_key_into_keyring()
632 memcpy(key.raw, salt->key, F2FS_MAX_KEY_SIZE); in insert_key_into_keyring()
641 "%s\n", salt->key_ref_str, strerror(errno)); in insert_key_into_keyring()
647 salt->key_ref_str); in insert_key_into_keyring()
691 struct salt *salt; in do_add_key() local
734 for (j = 0, salt = salt_list; j < num_salt; j++, salt++) { in do_add_key()
735 pbkdf2_sha512(in_passphrase, salt, in do_add_key()
736 F2FS_PBKDF2_ITERATIONS, salt->key); in do_add_key()
737 generate_key_ref_str(salt); in do_add_key()
738 insert_key_into_keyring(keyring, salt); in do_add_key()
757 struct salt saltbuf; in do_set_policy()