37
38 #ifdef STATIC_BUILD
39 JNIEXPORT jint JNI_OnLoad_attach012Agent00(JavaVM *jvm, char *options, void *reserved) {
40 return JNI_VERSION_1_8;
41 }
42 #endif
43
44 JNIEXPORT jint JNICALL
45 #ifdef STATIC_BUILD
46 Agent_OnAttach_attach012Agent00(JavaVM *vm, char *optionsString, void *reserved)
47 #else
48 Agent_OnAttach(JavaVM *vm, char *optionsString, void *reserved)
49 #endif
50 {
51 jvmtiEnv* jvmti;
52 JNIEnv* jni = NULL;
53 Options* options = NULL;
54 const char* agentName;
55 jvmtiCapabilities caps;
56
57 if (!NSK_VERIFY((options = (Options*) nsk_aod_createOptions(optionsString)) != NULL))
58 return JNI_ERR;
59
60 agentName = nsk_aod_getOptionValue(options, NSK_AOD_AGENT_NAME_OPTION);
61
62 if ((jni = (JNIEnv*) nsk_aod_createJNIEnv(vm)) == NULL)
63 return NSK_FALSE;
64
65 if (!NSK_VERIFY((jvmti = nsk_jvmti_createJVMTIEnv(vm, reserved)) != NULL))
66 return JNI_ERR;
67
68 if (!NSK_JVMTI_VERIFY(jvmti->GetPotentialCapabilities(&caps))) {
69 return JNI_ERR;
70 }
71
72 NSK_DISPLAY1("%s: potential capabilities:\n", agentName);
73
74 printCapabilities(caps);
75
76 NSK_DISPLAY1("%s: trying to get all potential capabilities:\n", agentName);
77
78 if (!NSK_JVMTI_VERIFY(jvmti->AddCapabilities(&caps))) {
79 return JNI_ERR;
80 }
81
82 NSK_DISPLAY1("%s: initialization was done\n", agentName);
83
84 if (!NSK_VERIFY(nsk_aod_agentLoaded(jni, agentName)))
85 return JNI_ERR;
|
37
38 #ifdef STATIC_BUILD
39 JNIEXPORT jint JNI_OnLoad_attach012Agent00(JavaVM *jvm, char *options, void *reserved) {
40 return JNI_VERSION_1_8;
41 }
42 #endif
43
44 JNIEXPORT jint JNICALL
45 #ifdef STATIC_BUILD
46 Agent_OnAttach_attach012Agent00(JavaVM *vm, char *optionsString, void *reserved)
47 #else
48 Agent_OnAttach(JavaVM *vm, char *optionsString, void *reserved)
49 #endif
50 {
51 jvmtiEnv* jvmti;
52 JNIEnv* jni = NULL;
53 Options* options = NULL;
54 const char* agentName;
55 jvmtiCapabilities caps;
56
57 options = (Options*) nsk_aod_createOptions(optionsString);
58 if (!NSK_VERIFY(options != NULL))
59 return JNI_ERR;
60
61 agentName = nsk_aod_getOptionValue(options, NSK_AOD_AGENT_NAME_OPTION);
62
63 jni = (JNIEnv*) nsk_aod_createJNIEnv(vm);
64 if (jni == NULL)
65 return NSK_FALSE;
66
67 jvmti = nsk_jvmti_createJVMTIEnv(vm, reserved);
68 if (!NSK_VERIFY(jvmti != NULL))
69 return JNI_ERR;
70
71 if (!NSK_JVMTI_VERIFY(jvmti->GetPotentialCapabilities(&caps))) {
72 return JNI_ERR;
73 }
74
75 NSK_DISPLAY1("%s: potential capabilities:\n", agentName);
76
77 printCapabilities(caps);
78
79 NSK_DISPLAY1("%s: trying to get all potential capabilities:\n", agentName);
80
81 if (!NSK_JVMTI_VERIFY(jvmti->AddCapabilities(&caps))) {
82 return JNI_ERR;
83 }
84
85 NSK_DISPLAY1("%s: initialization was done\n", agentName);
86
87 if (!NSK_VERIFY(nsk_aod_agentLoaded(jni, agentName)))
88 return JNI_ERR;
|