コード例 #1
0
 tstring Win32Certificate::getOrganizationName()
 {
     return getCertAttribute(szOID_ORGANIZATION_NAME);
 }
コード例 #2
0
jobject __MIX_PREFIX_FUNC_PASTE(MIX_PREFIX_UPAPI_FUNC,getCertAttribute(JNIEnv* env, jobject javaThis, jstring str_cert_id))
{
	if(!str_cert_id)
	{
		setLastErrInfo(EStateErrorInvalidArg);

		return NULL;
	}

	certInfo info;

	getCertAttribute(&info, atoi((* env)->GetStringUTFChars(env, str_cert_id, 0)));
    /**//* 下面为获取到Java中对应的实例类中的变量*/

    //获取Java中的实例类
    jclass objectClass = (* env)->FindClass(env, CLASS_CERT_INFO);

    //获取类中每一个变量的定义
    //名字
    jfieldID CommonName = (* env)->GetFieldID(env, objectClass,"CommonName","Ljava/lang/String;");

	jfieldID Subject = (* env)->GetFieldID(env, objectClass,"Subject","Ljava/lang/String;");

	jfieldID Issuer = (* env)->GetFieldID(env, objectClass,"Issuer","Ljava/lang/String;");

	jfieldID SerialNumber = (* env)->GetFieldID(env, objectClass,"SerialNumber","Ljava/lang/String;");

	jfieldID ValidFrom = (* env)->GetFieldID(env, objectClass,"ValidFrom","Ljava/lang/String;");

	jfieldID ValidTo = (* env)->GetFieldID(env, objectClass,"ValidTo","Ljava/lang/String;");

	jfieldID Verify = (* env)->GetFieldID(env, objectClass,"Verify","Ljava/lang/String;");

	jfieldID PublicKey = (* env)->GetFieldID(env,objectClass,"PublicKey","Ljava/lang/String;");

    //序列号
    jfieldID KeyUsage = (* env)->GetFieldID(env, objectClass,"KeyUsage","I");

    //给每一个实例的变量付值

	jobject joInfo = (* env)->AllocObject(env, objectClass);

    (* env)->SetObjectField(env, joInfo,CommonName,CharTojstring(env, info.CommonName));

	(* env)->SetObjectField(env, joInfo,Subject,CharTojstring(env, info.Subject));

	(* env)->SetObjectField(env, joInfo,Issuer,CharTojstring(env, info.Issuer));

	(* env)->SetObjectField(env, joInfo,SerialNumber,CharTojstring(env, info.SerialNumber));

	(* env)->SetObjectField(env, joInfo,ValidFrom,CharTojstring(env, info.ValidFrom));

	(* env)->SetObjectField(env, joInfo,ValidTo,CharTojstring(env, info.ValidTo));

	(* env)->SetObjectField(env, joInfo,Verify,CharTojstring(env, info.Verify));

	(* env)->SetObjectField(env, joInfo,PublicKey,CharTojstring(env, info.PublicKey));

    (* env)->SetIntField(env ,joInfo,KeyUsage,info.KeyUsage);
   
    return joInfo;
}
コード例 #3
0
 tstring Win32Certificate::getSubjectName()
 {
     return getCertAttribute(szOID_COMMON_NAME);
 }