< prev index next >
jdk/src/jdk.crypto.mscapi/windows/native/libsunmscapi/security.cpp
Print this page
*** 1441,1464 ****
*/
JNIEXPORT jint JNICALL Java_sun_security_mscapi_KeyStore_getKeyLength
(JNIEnv *env, jobject obj, jlong hKey)
{
DWORD dwDataLen = sizeof(DWORD);
- BYTE pbData[sizeof(DWORD)];
DWORD length = 0;
__try
{
// Get key length (in bits)
//TODO - may need to use KP_BLOCKLEN instead?
! if (!(::CryptGetKeyParam((HCRYPTKEY) hKey, KP_KEYLEN, (BYTE *)pbData, &dwDataLen,
0))) {
ThrowException(env, KEY_EXCEPTION, GetLastError());
__leave;
}
- length = (DWORD) pbData;
}
__finally
{
// no cleanup required
}
--- 1441,1463 ----
*/
JNIEXPORT jint JNICALL Java_sun_security_mscapi_KeyStore_getKeyLength
(JNIEnv *env, jobject obj, jlong hKey)
{
DWORD dwDataLen = sizeof(DWORD);
DWORD length = 0;
__try
{
// Get key length (in bits)
//TODO - may need to use KP_BLOCKLEN instead?
! // pbData must be a pointer to a DWORD value with KP_KEYLEN
! if (!(::CryptGetKeyParam((HCRYPTKEY) hKey, KP_KEYLEN, (BYTE *)&length, &dwDataLen,
0))) {
ThrowException(env, KEY_EXCEPTION, GetLastError());
__leave;
}
}
__finally
{
// no cleanup required
}
< prev index next >