JNIEXPORT void JNICALL Java_sun_nio_fs_LinuxNativeDispatcher_fsetxattr0(JNIEnv* env, jclass clazz, jint fd, jlong nameAddress, jlong valueAddress, jint valueLen) { int res = -1; const char* name = jlong_to_ptr(nameAddress); void* value = jlong_to_ptr(valueAddress); res = fsetxattr (fd, name, value, valueLen, 0); if (res == -1) throwUnixException(env, errno); }
JNIEXPORT jint JNICALL Java_sun_nio_fs_LinuxNativeDispatcher_flistxattr(JNIEnv* env, jclass clazz, jint fd, jlong listAddress, jint size) { size_t res = -1; char* list = jlong_to_ptr(listAddress); res = flistxattr (fd, list, (size_t)size); if (res == (size_t)-1) throwUnixException(env, errno); return (jint)res; }
JNIEXPORT void JNICALL Java_sun_nio_fs_LinuxNativeDispatcher_fremovexattr0(JNIEnv* env, jclass clazz, jint fd, jlong nameAddress) { int res = -1; const char* name = jlong_to_ptr(nameAddress); if (my_fremovexattr_func == NULL) { errno = ENOTSUP; } else { /* EINTR not documented */ res = (*my_fremovexattr_func)(fd, name); } if (res == -1) throwUnixException(env, errno); }
JNIEXPORT jint JNICALL Java_sun_nio_fs_LinuxNativeDispatcher_flistxattr(JNIEnv* env, jclass clazz, jint fd, jlong listAddress, jint size) { size_t res = -1; char* list = jlong_to_ptr(listAddress); if (my_flistxattr_func == NULL) { errno = ENOTSUP; } else { /* EINTR not documented */ res = (*my_flistxattr_func)(fd, list, (size_t)size); } if (res == (size_t)-1) throwUnixException(env, errno); return (jint)res; }
JNIEXPORT jint JNICALL Java_sun_nio_fs_LinuxNativeDispatcher_fgetxattr0(JNIEnv* env, jclass clazz, jint fd, jlong nameAddress, jlong valueAddress, jint valueLen) { size_t res = -1; const char* name = jlong_to_ptr(nameAddress); void* value = jlong_to_ptr(valueAddress); if (my_fgetxattr_func == NULL) { errno = ENOTSUP; } else { /* EINTR not documented */ res = (*my_fgetxattr_func)(fd, name, value, valueLen); } if (res == (size_t)-1) throwUnixException(env, errno); return (jint)res; }