Lines Matching refs:dcp

143 	dsl_crypto_params_t *dcp = NULL;  in dsl_crypto_params_create_nvlist()  local
149 dcp = kmem_zalloc(sizeof (dsl_crypto_params_t), KM_SLEEP); in dsl_crypto_params_create_nvlist()
150 dcp->cp_cmd = cmd; in dsl_crypto_params_create_nvlist()
165 dcp->cp_crypt = crypt; in dsl_crypto_params_create_nvlist()
174 if (dcp->cp_cmd >= DCP_CMD_MAX) { in dsl_crypto_params_create_nvlist()
178 dcp->cp_cmd = cmd; in dsl_crypto_params_create_nvlist()
182 if (dcp->cp_crypt >= ZIO_CRYPT_FUNCTIONS) { in dsl_crypto_params_create_nvlist()
186 dcp->cp_crypt = crypt; in dsl_crypto_params_create_nvlist()
202 dcp->cp_keylocation = spa_strdup(keylocation); in dsl_crypto_params_create_nvlist()
212 if (dcp->cp_crypt == ZIO_CRYPT_ON) in dsl_crypto_params_create_nvlist()
213 dcp->cp_crypt = ZIO_CRYPT_ON_VALUE; in dsl_crypto_params_create_nvlist()
220 dcp->cp_wkey = wkey; in dsl_crypto_params_create_nvlist()
233 *dcp_out = dcp; in dsl_crypto_params_create_nvlist()
238 kmem_free(dcp, sizeof (dsl_crypto_params_t)); in dsl_crypto_params_create_nvlist()
244 dsl_crypto_params_free(dsl_crypto_params_t *dcp, boolean_t unload) in dsl_crypto_params_free() argument
246 if (dcp == NULL) in dsl_crypto_params_free()
249 if (dcp->cp_keylocation != NULL) in dsl_crypto_params_free()
250 spa_strfree(dcp->cp_keylocation); in dsl_crypto_params_free()
251 if (unload && dcp->cp_wkey != NULL) in dsl_crypto_params_free()
252 dsl_wrapping_key_free(dcp->cp_wkey); in dsl_crypto_params_free()
254 kmem_free(dcp, sizeof (dsl_crypto_params_t)); in dsl_crypto_params_free()
772 spa_keystore_load_wkey(const char *dsname, dsl_crypto_params_t *dcp, in spa_keystore_load_wkey() argument
778 dsl_wrapping_key_t *wkey = dcp->cp_wkey; in spa_keystore_load_wkey()
786 if (dcp->cp_wkey == NULL || in spa_keystore_load_wkey()
787 dcp->cp_cmd != DCP_CMD_NONE || in spa_keystore_load_wkey()
788 dcp->cp_crypt != ZIO_CRYPT_INHERIT || in spa_keystore_load_wkey()
789 dcp->cp_keylocation != NULL) in spa_keystore_load_wkey()
1268 dsl_crypto_params_t *dcp = skcka->skcka_cp; in spa_keystore_change_key_check() local
1278 if (dcp->cp_cmd != DCP_CMD_NEW_KEY && in spa_keystore_change_key_check()
1279 dcp->cp_cmd != DCP_CMD_INHERIT && in spa_keystore_change_key_check()
1280 dcp->cp_cmd != DCP_CMD_FORCE_NEW_KEY && in spa_keystore_change_key_check()
1281 dcp->cp_cmd != DCP_CMD_FORCE_INHERIT) { in spa_keystore_change_key_check()
1311 if (dcp->cp_cmd == DCP_CMD_INHERIT || in spa_keystore_change_key_check()
1312 dcp->cp_cmd == DCP_CMD_FORCE_INHERIT) { in spa_keystore_change_key_check()
1314 if (dcp->cp_crypt != ZIO_CRYPT_INHERIT || in spa_keystore_change_key_check()
1315 dcp->cp_keylocation != NULL || in spa_keystore_change_key_check()
1316 dcp->cp_wkey != NULL) { in spa_keystore_change_key_check()
1334 if (dcp->cp_cmd == DCP_CMD_INHERIT) { in spa_keystore_change_key_check()
1349 if (dcp->cp_cmd == DCP_CMD_FORCE_NEW_KEY) { in spa_keystore_change_key_check()
1351 if (dcp->cp_crypt != ZIO_CRYPT_INHERIT || in spa_keystore_change_key_check()
1352 dcp->cp_keylocation != NULL || in spa_keystore_change_key_check()
1353 dcp->cp_wkey != NULL) { in spa_keystore_change_key_check()
1369 if (dcp->cp_crypt != ZIO_CRYPT_INHERIT) { in spa_keystore_change_key_check()
1375 if (dcp->cp_wkey == NULL) { in spa_keystore_change_key_check()
1381 if (dcp->cp_wkey->wk_keyformat >= ZFS_KEYFORMAT_FORMATS || in spa_keystore_change_key_check()
1382 dcp->cp_wkey->wk_keyformat == ZFS_KEYFORMAT_NONE) { in spa_keystore_change_key_check()
1392 if (dd->dd_object != rddobj && dcp->cp_keylocation == NULL) { in spa_keystore_change_key_check()
1398 if (dcp->cp_keylocation != NULL && in spa_keystore_change_key_check()
1399 !zfs_prop_valid_keylocation(dcp->cp_keylocation, B_TRUE)) { in spa_keystore_change_key_check()
1405 if (dcp->cp_wkey->wk_keyformat == ZFS_KEYFORMAT_PASSPHRASE) { in spa_keystore_change_key_check()
1406 if (dcp->cp_wkey->wk_salt == 0 || in spa_keystore_change_key_check()
1407 dcp->cp_wkey->wk_iters < MIN_PBKDF2_ITERATIONS) { in spa_keystore_change_key_check()
1412 if (dcp->cp_wkey->wk_salt != 0 || dcp->cp_wkey->wk_iters != 0) { in spa_keystore_change_key_check()
1547 dsl_crypto_params_t *dcp = skcka->skcka_cp; in spa_keystore_change_key_sync() local
1550 const char *keylocation = dcp->cp_keylocation; in spa_keystore_change_key_sync()
1557 if (dcp->cp_cmd == DCP_CMD_NEW_KEY || in spa_keystore_change_key_sync()
1558 dcp->cp_cmd == DCP_CMD_FORCE_NEW_KEY) { in spa_keystore_change_key_sync()
1565 if (dcp->cp_cmd == DCP_CMD_NEW_KEY) { in spa_keystore_change_key_sync()
1566 wkey = dcp->cp_wkey; in spa_keystore_change_key_sync()
1586 if (dcp->cp_cmd == DCP_CMD_INHERIT) { in spa_keystore_change_key_sync()
1601 ASSERT(dcp->cp_cmd == DCP_CMD_FORCE_INHERIT || in spa_keystore_change_key_sync()
1602 dcp->cp_cmd == DCP_CMD_FORCE_NEW_KEY); in spa_keystore_change_key_sync()
1623 if (dcp->cp_cmd == DCP_CMD_NEW_KEY) { in spa_keystore_change_key_sync()
1636 spa_keystore_change_key(const char *dsname, dsl_crypto_params_t *dcp) in spa_keystore_change_key() argument
1642 skcka.skcka_cp = dcp; in spa_keystore_change_key()
1796 dmu_objset_create_crypt_check(dsl_dir_t *parentdd, dsl_crypto_params_t *dcp, in dmu_objset_create_crypt_check() argument
1806 if (dcp == NULL) in dmu_objset_create_crypt_check()
1807 dcp = &dummy_dcp; in dmu_objset_create_crypt_check()
1809 if (dcp->cp_cmd != DCP_CMD_NONE) in dmu_objset_create_crypt_check()
1820 crypt = (dcp->cp_crypt == ZIO_CRYPT_INHERIT) ? pcrypt : dcp->cp_crypt; in dmu_objset_create_crypt_check()
1828 if (dcp->cp_wkey != NULL || in dmu_objset_create_crypt_check()
1829 (dcp->cp_keylocation != NULL && in dmu_objset_create_crypt_check()
1830 strcmp(dcp->cp_keylocation, "none") != 0)) in dmu_objset_create_crypt_check()
1858 if (dcp->cp_wkey == NULL) { in dmu_objset_create_crypt_check()
1862 if (dcp->cp_keylocation != NULL) in dmu_objset_create_crypt_check()
1878 if (dcp->cp_keylocation == NULL || in dmu_objset_create_crypt_check()
1879 !zfs_prop_valid_keylocation(dcp->cp_keylocation, B_TRUE)) in dmu_objset_create_crypt_check()
1883 switch (dcp->cp_wkey->wk_keyformat) { in dmu_objset_create_crypt_check()
1887 if (dcp->cp_wkey->wk_salt != 0 || dcp->cp_wkey->wk_iters != 0) in dmu_objset_create_crypt_check()
1892 if (dcp->cp_wkey->wk_salt == 0 || in dmu_objset_create_crypt_check()
1893 dcp->cp_wkey->wk_iters < MIN_PBKDF2_ITERATIONS) in dmu_objset_create_crypt_check()
1907 dsl_dataset_t *origin, dsl_crypto_params_t *dcp, dmu_tx_t *tx) in dsl_dataset_create_crypt_sync() argument
1915 ASSERT3P(dcp, ==, NULL); in dsl_dataset_create_crypt_sync()
1940 if (dcp == NULL || dcp->cp_cmd == DCP_CMD_RAW_RECV) in dsl_dataset_create_crypt_sync()
1943 crypt = dcp->cp_crypt; in dsl_dataset_create_crypt_sync()
1944 wkey = dcp->cp_wkey; in dsl_dataset_create_crypt_sync()
1981 if (dcp->cp_wkey == NULL) { in dsl_dataset_create_crypt_sync()