Files
moonlight-embedded/jni/nv_io/nv_io_jni.c
2014-01-28 01:34:45 +01:00

24 lines
598 B
C

#include <fcntl.h>
#include <jni.h>
JNIEXPORT jboolean JNICALL
Java_com_limelight_input_IO_ioctl(
JNIEnv *env, jobject this, // JNI parameters
jstring filename, jbyteArray buffer, jint request)
{
const char* jni_filename = (*env)->GetStringUTFChars(env, filename, NULL);
unsigned char* jni_buffer = (*env)->GetByteArrayElements(env, buffer, NULL);
jboolean retval;
int fd;
if ((fd = open(jni_filename, O_RDONLY)) < 0) {
retval = 0;
} else {
ioctl(fd, request, jni_buffer);
close(fd);
retval = 1;
}
(*env)->ReleaseByteArrayElements(env, buffer, jni_buffer, 0);
return retval;
}