Lines Matching refs:env

71 void jMechanismParameterToCKMechanismParameterSlow(JNIEnv *env, jobject jParam, CK_VOID_PTR *ckpParamPtr, CK_ULONG *ckpLength);
77 * @param env - used to call JNI funktions to create the new Java object
81 jobject ckDatePtrToJDateObject(JNIEnv *env, const CK_DATE *ckpDate)
91 jDateClass = (*env)->FindClass(env, CLASS_DATE);
95 jCtrId = (*env)->GetMethodID(env, jDateClass, "<init>", "([C[C[C)V");
99 jYear = ckCharArrayToJCharArray(env, (CK_CHAR_PTR)(ckpDate->year), 4);
101 jMonth = ckCharArrayToJCharArray(env, (CK_CHAR_PTR)(ckpDate->month), 2);
103 jDay = ckCharArrayToJCharArray(env, (CK_CHAR_PTR)(ckpDate->day), 2);
108 (*env)->NewObject(env, jDateClass, jCtrId, jYear, jMonth, jDay);
112 (*env)->DeleteLocalRef(env, jDateClass);
113 (*env)->DeleteLocalRef(env, jYear);
114 (*env)->DeleteLocalRef(env, jMonth);
115 (*env)->DeleteLocalRef(env, jDay);
123 * @param env - used to call JNI funktions to create the new Java object
127 jobject ckVersionPtrToJVersion(JNIEnv *env, const CK_VERSION_PTR ckpVersion)
136 jVersionClass = (*env)->FindClass(env, CLASS_VERSION);
140 jCtrId = (*env)->GetMethodID(env, jVersionClass, "<init>", "(II)V");
149 (*env)->NewObject(env, jVersionClass, jCtrId, jMajor, jMinor);
153 (*env)->DeleteLocalRef(env, jVersionClass);
161 * @param env - used to call JNI funktions to create the new Java object
165 jobject ckSessionInfoPtrToJSessionInfo(JNIEnv *env, const CK_SESSION_INFO_PTR ckpSessionInfo)
176 jSessionInfoClass = (*env)->FindClass(env, CLASS_SESSION_INFO);
180 jCtrId = (*env)->GetMethodID(env, jSessionInfoClass, "<init>", "(JJJJ)V");
191 (*env)->NewObject(env, jSessionInfoClass, jCtrId, jSlotID, jState,
196 (*env)->DeleteLocalRef(env, jSessionInfoClass);
204 * @param env - used to call JNI funktions to create the new Java object
208 jobject ckAttributePtrToJAttribute(JNIEnv *env, const CK_ATTRIBUTE_PTR ckpAttribute)
216 jAttributeClass = (*env)->FindClass(env, CLASS_ATTRIBUTE);
220 jCtrId = (*env)->GetMethodID(env, jAttributeClass, "<init>", "(JLjava/lang/Object;)V");
225 jPValue = ckAttributeValueToJObject(env, ckpAttribute);
226 if ((*env)->ExceptionCheck(env)) { return NULL; }
230 (*env)->NewObject(env, jAttributeClass, jCtrId, jType, jPValue);
234 (*env)->DeleteLocalRef(env, jAttributeClass);
235 (*env)->DeleteLocalRef(env, jPValue);
244 * @param env - used to call JNI funktions to get the values out of the Java object
248 CK_VERSION_PTR jVersionToCKVersionPtr(JNIEnv *env, jobject jVersion)
260 jVersionClass = (*env)->GetObjectClass(env, jVersion);
264 jFieldID = (*env)->GetFieldID(env, jVersionClass, "major", "B");
266 jMajor = (*env)->GetByteField(env, jVersion, jFieldID);
269 jFieldID = (*env)->GetFieldID(env, jVersionClass, "minor", "B");
271 jMinor = (*env)->GetByteField(env, jVersion, jFieldID);
276 JNU_ThrowOutOfMemoryError(env, 0);
289 * @param env - used to call JNI funktions to get the values out of the Java object
293 CK_DATE * jDateObjectPtrToCKDatePtr(JNIEnv *env, jobject jDate)
308 jDateClass = (*env)->FindClass(env, CLASS_DATE);
312 jFieldID = (*env)->GetFieldID(env, jDateClass, "year", "[C");
314 jYear = (*env)->GetObjectField(env, jDate, jFieldID);
317 jFieldID = (*env)->GetFieldID(env, jDateClass, "month", "[C");
319 jMonth = (*env)->GetObjectField(env, jDate, jFieldID);
322 jFieldID = (*env)->GetFieldID(env, jDateClass, "day", "[C");
324 jDay = (*env)->GetObjectField(env, jDate, jFieldID);
329 JNU_ThrowOutOfMemoryError(env, 0);
339 ckLength = (*env)->GetArrayLength(env, jYear);
343 JNU_ThrowOutOfMemoryError(env, 0);
346 (*env)->GetCharArrayRegion(env, jYear, 0, ckLength, jTempChars);
347 if ((*env)->ExceptionCheck(env)) {
363 ckLength = (*env)->GetArrayLength(env, jMonth);
367 JNU_ThrowOutOfMemoryError(env, 0);
370 (*env)->GetCharArrayRegion(env, jMonth, 0, ckLength, jTempChars);
371 if ((*env)->ExceptionCheck(env)) {
387 ckLength = (*env)->GetArrayLength(env, jDay);
391 JNU_ThrowOutOfMemoryError(env, 0);
394 (*env)->GetCharArrayRegion(env, jDay, 0, ckLength, jTempChars);
395 if ((*env)->ExceptionCheck(env)) {
414 * @param env - used to call JNI funktions to get the values out of the Java object
418 CK_ATTRIBUTE jAttributeToCKAttribute(JNIEnv *env, jobject jAttribute)
431 jAttributeClass = (*env)->GetObjectClass(env, jAttribute);
436 jFieldID = (*env)->GetFieldID(env, jAttributeClass, "type", "J");
438 jType = (*env)->GetLongField(env, jAttribute, jFieldID);
443 jFieldID = (*env)->GetFieldID(env, jAttributeClass, "pValue", "Ljava/lang/Object;");
445 jPValue = (*env)->GetObjectField(env, jAttribute, jFieldID);
452 jObjectToPrimitiveCKObjectPtrPtr(env, jPValue, &(ckAttribute.pValue), &(ckAttribute.ulValueLen));
463 * @param env - used to call JNI funktions to get the Java classes and objects
467 CK_SSL3_MASTER_KEY_DERIVE_PARAMS jSsl3MasterKeyDeriveParamToCKSsl3MasterKeyDeriveParam(JNIEnv *env, jobject jParam)
478 jSsl3MasterKeyDeriveParamsClass = (*env)->FindClass(env, CLASS_SSL3_MASTER_KEY_DERIVE_PARAMS);
480 fieldID = (*env)->GetFieldID(env, jSsl3MasterKeyDeriveParamsClass, "RandomInfo", "Lsun/security/pkcs11/wrapper/CK_SSL3_RANDOM_DATA;");
482 jRandomInfo = (*env)->GetObjectField(env, jParam, fieldID);
485 jSsl3RandomDataClass = (*env)->FindClass(env, CLASS_SSL3_RANDOM_DATA);
487 fieldID = (*env)->GetFieldID(env, jSsl3RandomDataClass, "pClientRandom", "[B");
489 jRIClientRandom = (*env)->GetObjectField(env, jRandomInfo, fieldID);
492 fieldID = (*env)->GetFieldID(env, jSsl3RandomDataClass, "pServerRandom", "[B");
494 jRIServerRandom = (*env)->GetObjectField(env, jRandomInfo, fieldID);
497 fieldID = (*env)->GetFieldID(env, jSsl3MasterKeyDeriveParamsClass, "pVersion", "Lsun/security/pkcs11/wrapper/CK_VERSION;");
499 jVersion = (*env)->GetObjectField(env, jParam, fieldID);
502 ckParam.pVersion = jVersionToCKVersionPtr(env, jVersion);
503 if ((*env)->ExceptionCheck(env)) { return ckParam; }
504 jByteArrayToCKByteArray(env, jRIClientRandom, &(ckParam.RandomInfo.pClientRandom), &(ckParam.RandomInfo.ulClientRandomLen));
505 if ((*env)->ExceptionCheck(env)) {
509 jByteArrayToCKByteArray(env, jRIServerRandom, &(ckParam.RandomInfo.pServerRandom), &(ckParam.RandomInfo.ulServerRandomLen));
510 if ((*env)->ExceptionCheck(env)) {
523 CK_TLS_PRF_PARAMS jTlsPrfParamsToCKTlsPrfParam(JNIEnv *env, jobject jParam)
533 jTlsPrfParamsClass = (*env)->FindClass(env, CLASS_TLS_PRF_PARAMS);
535 fieldID = (*env)->GetFieldID(env, jTlsPrfParamsClass, "pSeed", "[B");
537 jSeed = (*env)->GetObjectField(env, jParam, fieldID);
540 fieldID = (*env)->GetFieldID(env, jTlsPrfParamsClass, "pLabel", "[B");
542 jLabel = (*env)->GetObjectField(env, jParam, fieldID);
545 fieldID = (*env)->GetFieldID(env, jTlsPrfParamsClass, "pOutput", "[B");
547 jOutput = (*env)->GetObjectField(env, jParam, fieldID);
550 jByteArrayToCKByteArray(env, jSeed, &(ckParam.pSeed), &(ckParam.ulSeedLen));
551 if ((*env)->ExceptionCheck(env)) { return ckParam; }
552 jByteArrayToCKByteArray(env, jLabel, &(ckParam.pLabel), &(ckParam.ulLabelLen));
553 if ((*env)->ExceptionCheck(env)) {
561 JNU_ThrowOutOfMemoryError(env, 0);
564 jByteArrayToCKByteArray(env, jOutput, &(ckParam.pOutput), ckParam.pulOutputLen);
565 if ((*env)->ExceptionCheck(env)) {
578 * @param env - used to call JNI funktions to get the Java classes and objects
582 CK_SSL3_KEY_MAT_PARAMS jSsl3KeyMatParamToCKSsl3KeyMatParam(JNIEnv *env, jobject jParam)
596 jSsl3KeyMatParamsClass = (*env)->FindClass(env, CLASS_SSL3_KEY_MAT_PARAMS);
598 fieldID = (*env)->GetFieldID(env, jSsl3KeyMatParamsClass, "ulMacSizeInBits", "J");
600 jMacSizeInBits = (*env)->GetLongField(env, jParam, fieldID);
603 fieldID = (*env)->GetFieldID(env, jSsl3KeyMatParamsClass, "ulKeySizeInBits", "J");
605 jKeySizeInBits = (*env)->GetLongField(env, jParam, fieldID);
608 fieldID = (*env)->GetFieldID(env, jSsl3KeyMatParamsClass, "ulIVSizeInBits", "J");
610 jIVSizeInBits = (*env)->GetLongField(env, jParam, fieldID);
613 fieldID = (*env)->GetFieldID(env, jSsl3KeyMatParamsClass, "bIsExport", "Z");
615 jIsExport = (*env)->GetBooleanField(env, jParam, fieldID);
618 jSsl3RandomDataClass = (*env)->FindClass(env, CLASS_SSL3_RANDOM_DATA);
620 fieldID = (*env)->GetFieldID(env, jSsl3KeyMatParamsClass, "RandomInfo", "Lsun/security/pkcs11/wrapper/CK_SSL3_RANDOM_DATA;");
622 jRandomInfo = (*env)->GetObjectField(env, jParam, fieldID);
625 fieldID = (*env)->GetFieldID(env, jSsl3RandomDataClass, "pClientRandom", "[B");
627 jRIClientRandom = (*env)->GetObjectField(env, jRandomInfo, fieldID);
630 fieldID = (*env)->GetFieldID(env, jSsl3RandomDataClass, "pServerRandom", "[B");
632 jRIServerRandom = (*env)->GetObjectField(env, jRandomInfo, fieldID);
635 jSsl3KeyMatOutClass = (*env)->FindClass(env, CLASS_SSL3_KEY_MAT_OUT);
637 fieldID = (*env)->GetFieldID(env, jSsl3KeyMatParamsClass, "pReturnedKeyMaterial", "Lsun/security/pkcs11/wrapper/CK_SSL3_KEY_MAT_OUT;");
639 jReturnedKeyMaterial = (*env)->GetObjectField(env, jParam, fieldID);
642 fieldID = (*env)->GetFieldID(env, jSsl3KeyMatOutClass, "pIVClient", "[B");
644 jRMIvClient = (*env)->GetObjectField(env, jReturnedKeyMaterial, fieldID);
647 fieldID = (*env)->GetFieldID(env, jSsl3KeyMatOutClass, "pIVServer", "[B");
649 jRMIvServer = (*env)->GetObjectField(env, jReturnedKeyMaterial, fieldID);
656 jByteArrayToCKByteArray(env, jRIClientRandom, &(ckParam.RandomInfo.pClientRandom), &(ckParam.RandomInfo.ulClientRandomLen));
657 if ((*env)->ExceptionCheck(env)) { return ckParam; }
658 jByteArrayToCKByteArray(env, jRIServerRandom, &(ckParam.RandomInfo.pServerRandom), &(ckParam.RandomInfo.ulServerRandomLen));
659 if ((*env)->ExceptionCheck(env)) {
668 JNU_ThrowOutOfMemoryError(env, 0);
678 jByteArrayToCKByteArray(env, jRMIvClient, &(ckParam.pReturnedKeyMaterial->pIVClient), &ckTemp);
679 if ((*env)->ExceptionCheck(env)) {
685 jByteArrayToCKByteArray(env, jRMIvServer, &(ckParam.pReturnedKeyMaterial->pIVServer), &ckTemp);
686 if ((*env)->ExceptionCheck(env)) {
700 * @param env - used to call JNI funktions to get the Java classes and objects
704 void jAesCtrParamsToCKAesCtrParam(JNIEnv *env, jobject jParam,
714 jAesCtrParamsClass = (*env)->FindClass(env, CLASS_AES_CTR_PARAMS);
716 fieldID = (*env)->GetFieldID(env, jAesCtrParamsClass, "ulCounterBits", "J");
718 jCounterBits = (*env)->GetLongField(env, jParam, fieldID);
721 fieldID = (*env)->GetFieldID(env, jAesCtrParamsClass, "cb", "[B");
723 jCb = (*env)->GetObjectField(env, jParam, fieldID);
727 jByteArrayToCKByteArray(env, jCb, &ckBytes, &ckTemp);
728 if ((*env)->ExceptionCheck(env)) { return; }
740 * @param env - used to call JNI funktions to get the values out of the Java object
744 void jMechanismToCKMechanism(JNIEnv *env, jobject jMechanism, CK_MECHANISM_PTR ckMechanismPtr)
746 jlong jMechanismType = (*env)->GetLongField(env, jMechanism, mech_mechanismID);
747 jobject jParameter = (*env)->GetObjectField(env, jMechanism, mech_pParameterID);
758 jMechanismParameterToCKMechanismParameter(env, jParameter, &(*ckMechanismPtr).pParameter, &(*ckMechanismPtr).ulParameterLen);
765 * jobject ckAttributeValueToJObject(JNIEnv *env,
768 * void jObjectToPrimitiveCKObjectPtrPtr(JNIEnv *env,
773 * void jMechanismParameterToCKMechanismParameter(JNIEnv *env,
803 * @param env - used to call JNI funktions to create the new Java object
808 jobject ckAttributeValueToJObject(JNIEnv *env, const CK_ATTRIBUTE_PTR ckpAttribute)
835 jValueObject = ckULongPtrToJLongObject(env, (CK_ULONG*) ckpAttribute->pValue);
858 jValueObject = ckByteArrayToJByteArray(env, (CK_BYTE*) ckpAttribute->pValue, jValueLength);
883 jValueObject = ckBBoolPtrToJBooleanObject(env, (CK_BBOOL*) ckpAttribute->pValue);
889 jValueObject = ckUTF8CharArrayToJCharArray(env, (CK_UTF8CHAR*) ckpAttribute->pValue, jValueLength);
895 jValueObject = ckDatePtrToJDateObject(env, (CK_DATE*) ckpAttribute->pValue);
904 jValueObject = ckByteArrayToJByteArray(env, (CK_BYTE*) ckpAttribute->pValue, jValueLength);
908 jValueObject = ckULongPtrToJLongObject(env, (CK_ULONG*) ckpAttribute->pValue);
914 jValueObject = ckByteArrayToJByteArray(env, (CK_BYTE*) ckpAttribute->pValue, jValueLength);
923 jValueObject = ckULongPtrToJLongObject(env, (CK_ULONG*) ckpAttribute->pValue);
928 jValueObject = ckByteArrayToJByteArray(env, (CK_BYTE*) ckpAttribute->pValue, jValueLength);
939 * CK_<Param>_PARAMS j<Param>ParamToCK<Param>Param(JNIEnv *env,
953 * @param env - used to call JNI funktions to get the Java classes and objects
960 void jMechanismParameterToCKMechanismParameter(JNIEnv *env, jobject jParam, CK_VOID_PTR *ckpParamPtr, CK_ULONG *ckpLength)
965 } else if ((*env)->IsInstanceOf(env, jParam, jByteArrayClass)) {
966 jByteArrayToCKByteArray(env, jParam, (CK_BYTE_PTR *)ckpParamPtr, ckpLength);
967 } else if ((*env)->IsInstanceOf(env, jParam, jLongClass)) {
968 *ckpParamPtr = jLongObjectToCKULongPtr(env, jParam);
972 jMechanismParameterToCKMechanismParameterSlow(env, jParam, ckpParamPtr, ckpLength);
976 void jMechanismParameterToCKMechanismParameterSlow(JNIEnv *env, jobject jParam, CK_VOID_PTR *ckpParamPtr, CK_ULONG *ckpLength)
989 jVersionClass = (*env)->FindClass(env, CLASS_VERSION);
991 if ((*env)->IsInstanceOf(env, jParam, jVersionClass)) {
998 ckpParam = jVersionToCKVersionPtr(env, jParam);
1006 jSsl3MasterKeyDeriveParamsClass = (*env)->FindClass(env, CLASS_SSL3_MASTER_KEY_DERIVE_PARAMS);
1008 if ((*env)->IsInstanceOf(env, jParam, jSsl3MasterKeyDeriveParamsClass)) {
1016 JNU_ThrowOutOfMemoryError(env, 0);
1021 *ckpParam = jSsl3MasterKeyDeriveParamToCKSsl3MasterKeyDeriveParam(env, jParam);
1022 if ((*env)->ExceptionCheck(env)) {
1033 jSsl3KeyMatParamsClass = (*env)->FindClass(env, CLASS_SSL3_KEY_MAT_PARAMS);
1035 if ((*env)->IsInstanceOf(env, jParam, jSsl3KeyMatParamsClass)) {
1043 JNU_ThrowOutOfMemoryError(env, 0);
1048 *ckpParam = jSsl3KeyMatParamToCKSsl3KeyMatParam(env, jParam);
1049 if ((*env)->ExceptionCheck(env)) {
1060 jTlsPrfParamsClass = (*env)->FindClass(env, CLASS_TLS_PRF_PARAMS);
1062 if ((*env)->IsInstanceOf(env, jParam, jTlsPrfParamsClass)) {
1070 JNU_ThrowOutOfMemoryError(env, 0);
1075 *ckpParam = jTlsPrfParamsToCKTlsPrfParam(env, jParam);
1076 if ((*env)->ExceptionCheck(env)) {
1087 jAesCtrParamsClass = (*env)->FindClass(env, CLASS_AES_CTR_PARAMS);
1089 if ((*env)->IsInstanceOf(env, jParam, jAesCtrParamsClass)) {
1097 JNU_ThrowOutOfMemoryError(env, 0);
1102 jAesCtrParamsToCKAesCtrParam(env, jParam, ckpParam);
1103 if ((*env)->ExceptionCheck(env)) {
1114 jRsaPkcsOaepParamsClass = (*env)->FindClass(env, CLASS_RSA_PKCS_OAEP_PARAMS);
1116 if ((*env)->IsInstanceOf(env, jParam, jRsaPkcsOaepParamsClass)) {
1124 JNU_ThrowOutOfMemoryError(env, 0);
1129 *ckpParam = jRsaPkcsOaepParamToCKRsaPkcsOaepParam(env, jParam);
1130 if ((*env)->ExceptionCheck(env)) {
1141 jPbeParamsClass = (*env)->FindClass(env, CLASS_PBE_PARAMS);
1143 if ((*env)->IsInstanceOf(env, jParam, jPbeParamsClass)) {
1151 JNU_ThrowOutOfMemoryError(env, 0);
1156 *ckpParam = jPbeParamToCKPbeParam(env, jParam);
1157 if ((*env)->ExceptionCheck(env)) {
1168 jPkcs5Pbkd2ParamsClass = (*env)->FindClass(env, CLASS_PKCS5_PBKD2_PARAMS);
1170 if ((*env)->IsInstanceOf(env, jParam, jPkcs5Pbkd2ParamsClass)) {
1178 JNU_ThrowOutOfMemoryError(env, 0);
1183 *ckpParam = jPkcs5Pbkd2ParamToCKPkcs5Pbkd2Param(env, jParam);
1184 if ((*env)->ExceptionCheck(env)) {
1195 jRsaPkcsPssParamsClass = (*env)->FindClass(env, CLASS_RSA_PKCS_PSS_PARAMS);
1197 if ((*env)->IsInstanceOf(env, jParam, jRsaPkcsPssParamsClass)) {
1205 JNU_ThrowOutOfMemoryError(env, 0);
1210 *ckpParam = jRsaPkcsPssParamToCKRsaPkcsPssParam(env, jParam);
1211 if ((*env)->ExceptionCheck(env)) {
1222 jEcdh1DeriveParamsClass = (*env)->FindClass(env, CLASS_ECDH1_DERIVE_PARAMS);
1224 if ((*env)->IsInstanceOf(env, jParam, jEcdh1DeriveParamsClass)) {
1232 JNU_ThrowOutOfMemoryError(env, 0);
1237 *ckpParam = jEcdh1DeriveParamToCKEcdh1DeriveParam(env, jParam);
1238 if ((*env)->ExceptionCheck(env)) {
1249 jEcdh2DeriveParamsClass = (*env)->FindClass(env, CLASS_ECDH2_DERIVE_PARAMS);
1251 if ((*env)->IsInstanceOf(env, jParam, jEcdh2DeriveParamsClass)) {
1259 JNU_ThrowOutOfMemoryError(env, 0);
1264 *ckpParam = jEcdh2DeriveParamToCKEcdh2DeriveParam(env, jParam);
1265 if ((*env)->ExceptionCheck(env)) {
1276 jX942Dh1DeriveParamsClass = (*env)->FindClass(env, CLASS_X9_42_DH1_DERIVE_PARAMS);
1278 if ((*env)->IsInstanceOf(env, jParam, jX942Dh1DeriveParamsClass)) {
1286 JNU_ThrowOutOfMemoryError(env, 0);
1291 *ckpParam = jX942Dh1DeriveParamToCKX942Dh1DeriveParam(env, jParam);
1292 if ((*env)->ExceptionCheck(env)) {
1303 jX942Dh2DeriveParamsClass = (*env)->FindClass(env, CLASS_X9_42_DH2_DERIVE_PARAMS);
1305 if ((*env)->IsInstanceOf(env, jParam, jX942Dh2DeriveParamsClass)) {
1313 JNU_ThrowOutOfMemoryError(env, 0);
1318 *ckpParam = jX942Dh2DeriveParamToCKX942Dh2DeriveParam(env, jParam);
1319 if ((*env)->ExceptionCheck(env)) {
1332 jObjectToPrimitiveCKObjectPtrPtr(env, jParam, ckpParamPtr, ckpLength);
1345 * @param env - used to call JNI funktions to get the Java classes and objects
1349 CK_RSA_PKCS_OAEP_PARAMS jRsaPkcsOaepParamToCKRsaPkcsOaepParam(JNIEnv *env, jobject jParam)
1359 jRsaPkcsOaepParamsClass = (*env)->FindClass(env, CLASS_RSA_PKCS_OAEP_PARAMS);
1361 fieldID = (*env)->GetFieldID(env, jRsaPkcsOaepParamsClass, "hashAlg", "J");
1363 jHashAlg = (*env)->GetLongField(env, jParam, fieldID);
1366 fieldID = (*env)->GetFieldID(env, jRsaPkcsOaepParamsClass, "mgf", "J");
1368 jMgf = (*env)->GetLongField(env, jParam, fieldID);
1371 fieldID = (*env)->GetFieldID(env, jRsaPkcsOaepParamsClass, "source", "J");
1373 jSource = (*env)->GetLongField(env, jParam, fieldID);
1376 fieldID = (*env)->GetFieldID(env, jRsaPkcsOaepParamsClass, "pSourceData", "[B");
1378 jSourceData = (*env)->GetObjectField(env, jParam, fieldID);
1384 jByteArrayToCKByteArray(env, jSourceData, & ckpByte, &(ckParam.ulSourceDataLen));
1385 if ((*env)->ExceptionCheck(env)) { return ckParam; }
1394 * @param env - used to call JNI funktions to get the Java classes and objects
1398 CK_PBE_PARAMS jPbeParamToCKPbeParam(JNIEnv *env, jobject jParam)
1408 jPbeParamsClass = (*env)->FindClass(env, CLASS_PBE_PARAMS);
1410 fieldID = (*env)->GetFieldID(env, jPbeParamsClass, "pInitVector", "[C");
1412 jInitVector = (*env)->GetObjectField(env, jParam, fieldID);
1415 fieldID = (*env)->GetFieldID(env, jPbeParamsClass, "pPassword", "[C");
1417 jPassword = (*env)->GetObjectField(env, jParam, fieldID);
1420 fieldID = (*env)->GetFieldID(env, jPbeParamsClass, "pSalt", "[C");
1422 jSalt = (*env)->GetObjectField(env, jParam, fieldID);
1425 fieldID = (*env)->GetFieldID(env, jPbeParamsClass, "ulIteration", "J");
1427 jIteration = (*env)->GetLongField(env, jParam, fieldID);
1431 jCharArrayToCKCharArray(env, jInitVector, &(ckParam.pInitVector), &ckTemp);
1432 if ((*env)->ExceptionCheck(env)) { return ckParam; }
1433 jCharArrayToCKCharArray(env, jPassword, &(ckParam.pPassword), &(ckParam.ulPasswordLen));
1434 if ((*env)->ExceptionCheck(env)) {
1438 jCharArrayToCKCharArray(env, jSalt, &(ckParam.pSalt), &(ckParam.ulSaltLen));
1439 if ((*env)->ExceptionCheck(env)) {
1454 void copyBackPBEInitializationVector(JNIEnv *env, CK_MECHANISM *ckMechanism, jobject jMechanism)
1469 jMechanismClass = (*env)->FindClass(env, CLASS_MECHANISM);
1471 fieldID = (*env)->GetFieldID(env, jMechanismClass, "mechanism", "J");
1473 jMechanismType = (*env)->GetLongField(env, jMechanism, fieldID);
1480 jPbeParamsClass = (*env)->FindClass(env, CLASS_PBE_PARAMS);
1487 fieldID = (*env)->GetFieldID(env, jMechanismClass, "pParameter", "Ljava/lang/Object;");
1489 jParameter = (*env)->GetObjectField(env, jMechanism, fieldID);
1490 fieldID = (*env)->GetFieldID(env, jPbeParamsClass, "pInitVektor", "[C");
1492 jInitVector = (*env)->GetObjectField(env, jParameter, fieldID);
1495 jInitVectorLength = (*env)->GetArrayLength(env, jInitVector);
1496 jInitVectorChars = (*env)->GetCharArrayElements(env, jInitVector, NULL);
1504 (*env)->ReleaseCharArrayElements(env, jInitVector, jInitVectorChars, 0);
1513 * @param env - used to call JNI funktions to get the Java classes and objects
1517 CK_PKCS5_PBKD2_PARAMS jPkcs5Pbkd2ParamToCKPkcs5Pbkd2Param(JNIEnv *env, jobject jParam)
1526 jPkcs5Pbkd2ParamsClass = (*env)->FindClass(env, CLASS_PKCS5_PBKD2_PARAMS);
1528 fieldID = (*env)->GetFieldID(env, jPkcs5Pbkd2ParamsClass, "saltSource", "J");
1530 jSaltSource = (*env)->GetLongField(env, jParam, fieldID);
1533 fieldID = (*env)->GetFieldID(env, jPkcs5Pbkd2ParamsClass, "pSaltSourceData", "[B");
1535 jSaltSourceData = (*env)->GetObjectField(env, jParam, fieldID);
1538 fieldID = (*env)->GetFieldID(env, jPkcs5Pbkd2ParamsClass, "iterations", "J");
1540 jIteration = (*env)->GetLongField(env, jParam, fieldID);
1543 fieldID = (*env)->GetFieldID(env, jPkcs5Pbkd2ParamsClass, "prf", "J");
1545 jPrf = (*env)->GetLongField(env, jParam, fieldID);
1548 fieldID = (*env)->GetFieldID(env, jPkcs5Pbkd2ParamsClass, "pPrfData", "[B");
1550 jPrfData = (*env)->GetObjectField(env, jParam, fieldID);
1554 jByteArrayToCKByteArray(env, jSaltSourceData, (CK_BYTE_PTR *) &(ckParam.pSaltSourceData), &(ckParam.ulSaltSourceDataLen));
1555 if ((*env)->ExceptionCheck(env)) { return ckParam; }
1558 jByteArrayToCKByteArray(env, jPrfData, (CK_BYTE_PTR *) &(ckParam.pPrfData), &(ckParam.ulPrfDataLen));
1559 if ((*env)->ExceptionCheck(env)) {
1570 * @param env - used to call JNI funktions to get the Java classes and objects
1574 CK_RSA_PKCS_PSS_PARAMS jRsaPkcsPssParamToCKRsaPkcsPssParam(JNIEnv *env, jobject jParam)
1582 jRsaPkcsPssParamsClass = (*env)->FindClass(env, CLASS_RSA_PKCS_PSS_PARAMS);
1584 fieldID = (*env)->GetFieldID(env, jRsaPkcsPssParamsClass, "hashAlg", "J");
1586 jHashAlg = (*env)->GetLongField(env, jParam, fieldID);
1589 fieldID = (*env)->GetFieldID(env, jRsaPkcsPssParamsClass, "mgf", "J");
1591 jMgf = (*env)->GetLongField(env, jParam, fieldID);
1594 fieldID = (*env)->GetFieldID(env, jRsaPkcsPssParamsClass, "sLen", "J");
1596 jSLen = (*env)->GetLongField(env, jParam, fieldID);
1609 * @param env - used to call JNI funktions to get the Java classes and objects
1613 CK_ECDH1_DERIVE_PARAMS jEcdh1DeriveParamToCKEcdh1DeriveParam(JNIEnv *env, jobject jParam)
1622 jEcdh1DeriveParamsClass = (*env)->FindClass(env, CLASS_ECDH1_DERIVE_PARAMS);
1624 fieldID = (*env)->GetFieldID(env, jEcdh1DeriveParamsClass, "kdf", "J");
1626 jLong = (*env)->GetLongField(env, jParam, fieldID);
1630 fieldID = (*env)->GetFieldID(env, jEcdh1DeriveParamsClass, "pSharedData", "[B");
1632 jSharedData = (*env)->GetObjectField(env, jParam, fieldID);
1635 fieldID = (*env)->GetFieldID(env, jEcdh1DeriveParamsClass, "pPublicData", "[B");
1637 jPublicData = (*env)->GetObjectField(env, jParam, fieldID);
1641 jByteArrayToCKByteArray(env, jSharedData, &(ckParam.pSharedData), &(ckParam.ulSharedDataLen));
1642 if ((*env)->ExceptionCheck(env)) { return ckParam; }
1643 jByteArrayToCKByteArray(env, jPublicData, &(ckParam.pPublicData), &(ckParam.ulPublicDataLen));
1644 if ((*env)->ExceptionCheck(env)) {
1655 * @param env - used to call JNI funktions to get the Java classes and objects
1659 CK_ECDH2_DERIVE_PARAMS jEcdh2DeriveParamToCKEcdh2DeriveParam(JNIEnv *env, jobject jParam)
1668 jEcdh2DeriveParamsClass = (*env)->FindClass(env, CLASS_ECDH2_DERIVE_PARAMS);
1670 fieldID = (*env)->GetFieldID(env, jEcdh2DeriveParamsClass, "kdf", "J");
1672 jKdf = (*env)->GetLongField(env, jParam, fieldID);
1675 fieldID = (*env)->GetFieldID(env, jEcdh2DeriveParamsClass, "pSharedData", "[B");
1677 jSharedData = (*env)->GetObjectField(env, jParam, fieldID);
1680 fieldID = (*env)->GetFieldID(env, jEcdh2DeriveParamsClass, "pPublicData", "[B");
1682 jPublicData = (*env)->GetObjectField(env, jParam, fieldID);
1685 fieldID = (*env)->GetFieldID(env, jEcdh2DeriveParamsClass, "ulPrivateDataLen", "J");
1687 jPrivateDataLen = (*env)->GetLongField(env, jParam, fieldID);
1690 fieldID = (*env)->GetFieldID(env, jEcdh2DeriveParamsClass, "hPrivateData", "J");
1692 jPrivateData = (*env)->GetLongField(env, jParam, fieldID);
1695 fieldID = (*env)->GetFieldID(env, jEcdh2DeriveParamsClass, "pPublicData2", "[B");
1697 jPublicData2 = (*env)->GetObjectField(env, jParam, fieldID);
1701 jByteArrayToCKByteArray(env, jSharedData, &(ckParam.pSharedData), &(ckParam.ulSharedDataLen));
1702 if ((*env)->ExceptionCheck(env)) { return ckParam; }
1703 jByteArrayToCKByteArray(env, jPublicData, &(ckParam.pPublicData), &(ckParam.ulPublicDataLen));
1704 if ((*env)->ExceptionCheck(env)) {
1710 jByteArrayToCKByteArray(env, jPublicData2, &(ckParam.pPublicData2), &(ckParam.ulPublicDataLen2));
1711 if ((*env)->ExceptionCheck(env)) {
1722 * @param env - used to call JNI funktions to get the Java classes and objects
1726 CK_X9_42_DH1_DERIVE_PARAMS jX942Dh1DeriveParamToCKX942Dh1DeriveParam(JNIEnv *env, jobject jParam)
1735 jX942Dh1DeriveParamsClass = (*env)->FindClass(env, CLASS_X9_42_DH1_DERIVE_PARAMS);
1737 fieldID = (*env)->GetFieldID(env, jX942Dh1DeriveParamsClass, "kdf", "J");
1739 jKdf = (*env)->GetLongField(env, jParam, fieldID);
1742 fieldID = (*env)->GetFieldID(env, jX942Dh1DeriveParamsClass, "pOtherInfo", "[B");
1744 jOtherInfo = (*env)->GetObjectField(env, jParam, fieldID);
1747 fieldID = (*env)->GetFieldID(env, jX942Dh1DeriveParamsClass, "pPublicData", "[B");
1749 jPublicData = (*env)->GetObjectField(env, jParam, fieldID);
1753 jByteArrayToCKByteArray(env, jOtherInfo, &(ckParam.pOtherInfo), &(ckParam.ulOtherInfoLen));
1754 if ((*env)->ExceptionCheck(env)) { return ckParam; }
1755 jByteArrayToCKByteArray(env, jPublicData, &(ckParam.pPublicData), &(ckParam.ulPublicDataLen));
1756 if ((*env)->ExceptionCheck(env)) {
1767 * @param env - used to call JNI funktions to get the Java classes and objects
1771 CK_X9_42_DH2_DERIVE_PARAMS jX942Dh2DeriveParamToCKX942Dh2DeriveParam(JNIEnv *env, jobject jParam)
1780 jX942Dh2DeriveParamsClass = (*env)->FindClass(env, CLASS_X9_42_DH2_DERIVE_PARAMS);
1782 fieldID = (*env)->GetFieldID(env, jX942Dh2DeriveParamsClass, "kdf", "J");
1784 jKdf = (*env)->GetLongField(env, jParam, fieldID);
1787 fieldID = (*env)->GetFieldID(env, jX942Dh2DeriveParamsClass, "pOtherInfo", "[B");
1789 jOtherInfo = (*env)->GetObjectField(env, jParam, fieldID);
1792 fieldID = (*env)->GetFieldID(env, jX942Dh2DeriveParamsClass, "pPublicData", "[B");
1794 jPublicData = (*env)->GetObjectField(env, jParam, fieldID);
1797 fieldID = (*env)->GetFieldID(env, jX942Dh2DeriveParamsClass, "ulPrivateDataLen", "J");
1799 jPrivateDataLen = (*env)->GetLongField(env, jParam, fieldID);
1802 fieldID = (*env)->GetFieldID(env, jX942Dh2DeriveParamsClass, "hPrivateData", "J");
1804 jPrivateData = (*env)->GetLongField(env, jParam, fieldID);
1807 fieldID = (*env)->GetFieldID(env, jX942Dh2DeriveParamsClass, "pPublicData2", "[B");
1809 jPublicData2 = (*env)->GetObjectField(env, jParam, fieldID);
1813 jByteArrayToCKByteArray(env, jOtherInfo, &(ckParam.pOtherInfo), &(ckParam.ulOtherInfoLen));
1814 if ((*env)->ExceptionCheck(env)) { return ckParam; }
1815 jByteArrayToCKByteArray(env, jPublicData, &(ckParam.pPublicData), &(ckParam.ulPublicDataLen));
1816 if ((*env)->ExceptionCheck(env)) {
1822 jByteArrayToCKByteArray(env, jPublicData2, &(ckParam.pPublicData2), &(ckParam.ulPublicDataLen2));
1823 if ((*env)->ExceptionCheck(env)) {