src/solaris/native/java/net/NetworkInterface.c
Print this page
@@ -217,11 +217,13 @@
ifs = enumInterfaces(env);
if (ifs == NULL) {
return NULL;
}
- name_utf = (*env)->GetStringUTFChars(env, name, &isCopy);
+ if ((name_utf = (*env)->GetStringUTFChars(env, name, &isCopy)) == NULL) {
+ return NULL;
+ }
/*
* Search the list of interface based on name
*/
curr = ifs;
@@ -487,13 +489,15 @@
int len;
int sock;
jboolean isCopy;
const char* name_utf;
- name_utf = (*env)->GetStringUTFChars(env, name, &isCopy);
+ if ((name_utf = (*env)->GetStringUTFChars(env, name, &isCopy)) == NULL) {
+ return JNI_FALSE;
+ }
- if ((sock =openSocketWithFallback(env, name_utf)) < 0) {
+ if ((sock = openSocketWithFallback(env, name_utf)) < 0) {
(*env)->ReleaseStringUTFChars(env, name, name_utf);
return JNI_FALSE;
}
@@ -534,13 +538,15 @@
jboolean isCopy;
int ret = -1;
int sock;
const char* name_utf;
- name_utf = (*env)->GetStringUTFChars(env, name, &isCopy);
+ if ((name_utf = (*env)->GetStringUTFChars(env, name, &isCopy)) == NULL) {
+ return JNI_FALSE;
+ }
- if ((sock =openSocketWithFallback(env, name_utf)) < 0) {
+ if ((sock = openSocketWithFallback(env, name_utf)) < 0) {
(*env)->ReleaseStringUTFChars(env, name, name_utf);
return JNI_FALSE;
}
ret = getMTU(env, sock, name_utf);
@@ -557,19 +563,19 @@
jboolean isCopy;
int ret, sock;
const char* name_utf;
int flags = 0;
- name_utf = (*env)->GetStringUTFChars(env, name, &isCopy);
+ if ((name_utf = (*env)->GetStringUTFChars(env, name, &isCopy)) == NULL) {
+ return -1;
+ }
if ((sock = openSocketWithFallback(env, name_utf)) < 0) {
(*env)->ReleaseStringUTFChars(env, name, name_utf);
return -1;
}
- name_utf = (*env)->GetStringUTFChars(env, name, &isCopy);
-
ret = getFlags(sock, name_utf, &flags);
close(sock);
(*env)->ReleaseStringUTFChars(env, name, name_utf);