• Home
  • Raw
  • Download

Lines Matching refs:env

40     var = env->FindClass(className); \
44 var = env->GetFieldID(clazz, fieldName, fieldDescriptor); \
48 var = env->GetMethodID(clazz, fieldName, fieldDescriptor); \
52 var = env->GetStaticFieldID(clazz, fieldName, fieldDescriptor); \
56 var = env->GetStaticMethodID(clazz, fieldName, fieldDescriptor); \
158 JNIDrmListener(JNIEnv* env, jobject thiz, jobject weak_thiz);
167 JNIDrmListener::JNIDrmListener(JNIEnv* env, jobject thiz, jobject weak_thiz) in JNIDrmListener() argument
171 jclass clazz = env->GetObjectClass(thiz); in JNIDrmListener()
174 jniThrowException(env, "java/lang/Exception", in JNIDrmListener()
178 mClass = (jclass)env->NewGlobalRef(clazz); in JNIDrmListener()
182 mObject = env->NewGlobalRef(weak_thiz); in JNIDrmListener()
188 JNIEnv *env = AndroidRuntime::getJNIEnv(); in ~JNIDrmListener() local
189 env->DeleteGlobalRef(mObject); in ~JNIDrmListener()
190 env->DeleteGlobalRef(mClass); in ~JNIDrmListener()
232 JNIEnv *env = AndroidRuntime::getJNIEnv(); in notify() local
234 jobject jParcel = createJavaParcelObject(env); in notify()
236 Parcel* nativeParcel = parcelForJavaObject(env, jParcel); in notify()
238 env->CallStaticVoidMethod(mClass, gFields.post_event, mObject, in notify()
240 env->DeleteLocalRef(jParcel); in notify()
244 if (env->ExceptionCheck()) { in notify()
246 LOGW_EX(env); in notify()
247 env->ExceptionClear(); in notify()
251 static void throwStateException(JNIEnv *env, const char *msg, status_t err) { in throwStateException() argument
254 jobject exception = env->NewObject(gFields.stateException.classId, in throwStateException()
256 env->NewStringUTF(msg)); in throwStateException()
257 env->Throw(static_cast<jthrowable>(exception)); in throwStateException()
261 JNIEnv *env, status_t err, const char *msg = NULL) { in throwExceptionAsNecessary() argument
301 jniThrowException(env, "java/lang/IllegalArgumentException", msg); in throwExceptionAsNecessary()
304 jniThrowException(env, "android/media/NotProvisionedException", msg); in throwExceptionAsNecessary()
307 jniThrowException(env, "android/media/ResourceBusyException", msg); in throwExceptionAsNecessary()
310 jniThrowException(env, "android/media/DeniedByServerException", msg); in throwExceptionAsNecessary()
313 jniThrowException(env, "android/media/MediaDrmResetException", in throwExceptionAsNecessary()
326 throwStateException(env, msg, err); in throwExceptionAsNecessary()
332 static sp<IDrm> GetDrm(JNIEnv *env, jobject thiz) { in GetDrm() argument
333 JDrm *jdrm = (JDrm *)env->GetLongField(thiz, gFields.context); in GetDrm()
338 JNIEnv *env, jobject thiz, const uint8_t uuid[16], in JDrm() argument
340 mObject = env->NewWeakGlobalRef(thiz); in JDrm()
348 JNIEnv *env = AndroidRuntime::getJNIEnv(); in ~JDrm() local
350 env->DeleteWeakGlobalRef(mObject); in ~JDrm()
431 static Vector<uint8_t> JByteArrayToVector(JNIEnv *env, jbyteArray const &byteArray) { in JByteArrayToVector() argument
433 size_t length = env->GetArrayLength(byteArray); in JByteArrayToVector()
435 env->GetByteArrayRegion(byteArray, 0, length, (jbyte *)vector.editArray()); in JByteArrayToVector()
439 static jbyteArray VectorToJByteArray(JNIEnv *env, Vector<uint8_t> const &vector) { in VectorToJByteArray() argument
441 jbyteArray result = env->NewByteArray(length); in VectorToJByteArray()
443 env->SetByteArrayRegion(result, 0, length, (jbyte *)vector.array()); in VectorToJByteArray()
448 static String8 JStringToString8(JNIEnv *env, jstring const &jstr) { in JStringToString8() argument
451 const char *s = env->GetStringUTFChars(jstr, NULL); in JStringToString8()
454 env->ReleaseStringUTFChars(jstr, s); in JStringToString8()
472 JNIEnv *env, jobject &hashMap, bool* pIsOK) { in HashMapToKeyedVector() argument
477 jobject entrySet = env->CallObjectMethod(hashMap, gFields.hashmap.entrySet); in HashMapToKeyedVector()
479 jobject iterator = env->CallObjectMethod(entrySet, gFields.set.iterator); in HashMapToKeyedVector()
481 jboolean hasNext = env->CallBooleanMethod(iterator, gFields.iterator.hasNext); in HashMapToKeyedVector()
483 jobject entry = env->CallObjectMethod(iterator, gFields.iterator.next); in HashMapToKeyedVector()
485 jobject obj = env->CallObjectMethod(entry, gFields.entry.getKey); in HashMapToKeyedVector()
486 if (obj == NULL || !env->IsInstanceOf(obj, clazz)) { in HashMapToKeyedVector()
487 jniThrowException(env, "java/lang/IllegalArgumentException", in HashMapToKeyedVector()
489 env->DeleteLocalRef(entry); in HashMapToKeyedVector()
495 obj = env->CallObjectMethod(entry, gFields.entry.getValue); in HashMapToKeyedVector()
496 if (obj == NULL || !env->IsInstanceOf(obj, clazz)) { in HashMapToKeyedVector()
497 jniThrowException(env, "java/lang/IllegalArgumentException", in HashMapToKeyedVector()
499 env->DeleteLocalRef(entry); in HashMapToKeyedVector()
505 String8 key = JStringToString8(env, jkey); in HashMapToKeyedVector()
506 String8 value = JStringToString8(env, jvalue); in HashMapToKeyedVector()
509 env->DeleteLocalRef(jkey); in HashMapToKeyedVector()
510 env->DeleteLocalRef(jvalue); in HashMapToKeyedVector()
511 hasNext = env->CallBooleanMethod(iterator, gFields.iterator.hasNext); in HashMapToKeyedVector()
513 env->DeleteLocalRef(entry); in HashMapToKeyedVector()
515 env->DeleteLocalRef(iterator); in HashMapToKeyedVector()
517 env->DeleteLocalRef(entrySet); in HashMapToKeyedVector()
522 static jobject KeyedVectorToHashMap (JNIEnv *env, KeyedVector<String8, String8> const &map) { in KeyedVectorToHashMap() argument
524 jobject hashMap = env->NewObject(clazz, gFields.hashmap.init); in KeyedVectorToHashMap()
526 jstring jkey = env->NewStringUTF(map.keyAt(i).string()); in KeyedVectorToHashMap()
527 jstring jvalue = env->NewStringUTF(map.valueAt(i).string()); in KeyedVectorToHashMap()
528 env->CallObjectMethod(hashMap, gFields.hashmap.put, jkey, jvalue); in KeyedVectorToHashMap()
529 env->DeleteLocalRef(jkey); in KeyedVectorToHashMap()
530 env->DeleteLocalRef(jvalue); in KeyedVectorToHashMap()
535 static jobject ListOfVectorsToArrayListOfByteArray(JNIEnv *env, in ListOfVectorsToArrayListOfByteArray() argument
538 jobject arrayList = env->NewObject(clazz, gFields.arraylist.init); in ListOfVectorsToArrayListOfByteArray()
541 jbyteArray byteArray = VectorToJByteArray(env, *iter); in ListOfVectorsToArrayListOfByteArray()
542 env->CallBooleanMethod(arrayList, gFields.arraylist.add, byteArray); in ListOfVectorsToArrayListOfByteArray()
543 env->DeleteLocalRef(byteArray); in ListOfVectorsToArrayListOfByteArray()
555 JNIEnv *env, jobject thiz, const sp<JDrm> &drm) { in setDrm() argument
556 sp<JDrm> old = (JDrm *)env->GetLongField(thiz, gFields.context); in setDrm()
563 env->SetLongField(thiz, gFields.context, reinterpret_cast<jlong>(drm.get())); in setDrm()
568 static bool CheckSession(JNIEnv *env, const sp<IDrm> &drm, jbyteArray const &jsessionId) in CheckSession() argument
571 jniThrowException(env, "java/lang/IllegalStateException", "MediaDrm obj is null"); in CheckSession()
576 jniThrowException(env, "java/lang/IllegalArgumentException", "sessionId is null"); in CheckSession()
582 static void android_media_MediaDrm_release(JNIEnv *env, jobject thiz) { in android_media_MediaDrm_release() argument
583 sp<JDrm> drm = setDrm(env, thiz, NULL); in android_media_MediaDrm_release()
590 static void android_media_MediaDrm_native_init(JNIEnv *env) { in android_media_MediaDrm_native_init() argument
599 gEventTypes.kEventProvisionRequired = env->GetStaticIntField(clazz, field); in android_media_MediaDrm_native_init()
601 gEventTypes.kEventKeyRequired = env->GetStaticIntField(clazz, field); in android_media_MediaDrm_native_init()
603 gEventTypes.kEventKeyExpired = env->GetStaticIntField(clazz, field); in android_media_MediaDrm_native_init()
605 gEventTypes.kEventVendorDefined = env->GetStaticIntField(clazz, field); in android_media_MediaDrm_native_init()
607 gEventTypes.kEventSessionReclaimed = env->GetStaticIntField(clazz, field); in android_media_MediaDrm_native_init()
610 gEventWhat.kWhatDrmEvent = env->GetStaticIntField(clazz, field); in android_media_MediaDrm_native_init()
612 gEventWhat.kWhatExpirationUpdate = env->GetStaticIntField(clazz, field); in android_media_MediaDrm_native_init()
614 gEventWhat.kWhatKeyStatusChange = env->GetStaticIntField(clazz, field); in android_media_MediaDrm_native_init()
617 gKeyTypes.kKeyTypeStreaming = env->GetStaticIntField(clazz, field); in android_media_MediaDrm_native_init()
619 gKeyTypes.kKeyTypeOffline = env->GetStaticIntField(clazz, field); in android_media_MediaDrm_native_init()
621 gKeyTypes.kKeyTypeRelease = env->GetStaticIntField(clazz, field); in android_media_MediaDrm_native_init()
624 gCertificateTypes.kCertificateTypeNone = env->GetStaticIntField(clazz, field); in android_media_MediaDrm_native_init()
626 gCertificateTypes.kCertificateTypeX509 = env->GetStaticIntField(clazz, field); in android_media_MediaDrm_native_init()
634 gKeyRequestTypes.kKeyRequestTypeInitial = env->GetStaticIntField(clazz, field); in android_media_MediaDrm_native_init()
636 gKeyRequestTypes.kKeyRequestTypeRenewal = env->GetStaticIntField(clazz, field); in android_media_MediaDrm_native_init()
638 gKeyRequestTypes.kKeyRequestTypeRelease = env->GetStaticIntField(clazz, field); in android_media_MediaDrm_native_init()
647 gFields.certificateClassId = static_cast<jclass>(env->NewGlobalRef(clazz)); in android_media_MediaDrm_native_init()
672 gFields.hashmapClassId = static_cast<jclass>(env->NewGlobalRef(clazz)); in android_media_MediaDrm_native_init()
675 gFields.stringClassId = static_cast<jclass>(env->NewGlobalRef(clazz)); in android_media_MediaDrm_native_init()
678 gFields.arraylistClassId = static_cast<jclass>(env->NewGlobalRef(clazz)); in android_media_MediaDrm_native_init()
682 gFields.stateException.classId = static_cast<jclass>(env->NewGlobalRef(clazz)); in android_media_MediaDrm_native_init()
686 JNIEnv *env, jobject thiz, in android_media_MediaDrm_native_setup() argument
690 jniThrowException(env, "java/lang/IllegalArgumentException", "uuid is null"); in android_media_MediaDrm_native_setup()
694 Vector<uint8_t> uuid = JByteArrayToVector(env, uuidObj); in android_media_MediaDrm_native_setup()
697 jniThrowException(env, "java/lang/IllegalArgumentException", in android_media_MediaDrm_native_setup()
704 jniThrowException(env, "java/lang/IllegalArgumentException", in android_media_MediaDrm_native_setup()
709 packageName = JStringToString8(env, jappPackageName); in android_media_MediaDrm_native_setup()
710 sp<JDrm> drm = new JDrm(env, thiz, uuid.array(), packageName); in android_media_MediaDrm_native_setup()
716 env, in android_media_MediaDrm_native_setup()
722 sp<JNIDrmListener> listener = new JNIDrmListener(env, thiz, weak_this); in android_media_MediaDrm_native_setup()
724 setDrm(env, thiz, drm); in android_media_MediaDrm_native_setup()
728 JNIEnv *env, jobject thiz) { in android_media_MediaDrm_native_finalize() argument
729 android_media_MediaDrm_release(env, thiz); in android_media_MediaDrm_native_finalize()
733 JNIEnv *env, jobject /* thiz */, jbyteArray uuidObj, jstring jmimeType) { in android_media_MediaDrm_isCryptoSchemeSupportedNative() argument
736 jniThrowException(env, "java/lang/IllegalArgumentException", NULL); in android_media_MediaDrm_isCryptoSchemeSupportedNative()
740 Vector<uint8_t> uuid = JByteArrayToVector(env, uuidObj); in android_media_MediaDrm_isCryptoSchemeSupportedNative()
744 env, in android_media_MediaDrm_isCryptoSchemeSupportedNative()
752 mimeType = JStringToString8(env, jmimeType); in android_media_MediaDrm_isCryptoSchemeSupportedNative()
759 JNIEnv *env, jobject thiz) { in android_media_MediaDrm_openSession() argument
760 sp<IDrm> drm = GetDrm(env, thiz); in android_media_MediaDrm_openSession()
763 jniThrowException(env, "java/lang/IllegalStateException", in android_media_MediaDrm_openSession()
771 if (throwExceptionAsNecessary(env, err, "Failed to open session")) { in android_media_MediaDrm_openSession()
775 return VectorToJByteArray(env, sessionId); in android_media_MediaDrm_openSession()
779 JNIEnv *env, jobject thiz, jbyteArray jsessionId) { in android_media_MediaDrm_closeSession() argument
780 sp<IDrm> drm = GetDrm(env, thiz); in android_media_MediaDrm_closeSession()
782 if (!CheckSession(env, drm, jsessionId)) { in android_media_MediaDrm_closeSession()
786 Vector<uint8_t> sessionId(JByteArrayToVector(env, jsessionId)); in android_media_MediaDrm_closeSession()
790 throwExceptionAsNecessary(env, err, "Failed to close session"); in android_media_MediaDrm_closeSession()
794 JNIEnv *env, jobject thiz, jbyteArray jsessionId, jbyteArray jinitData, in android_media_MediaDrm_getKeyRequest() argument
796 sp<IDrm> drm = GetDrm(env, thiz); in android_media_MediaDrm_getKeyRequest()
798 if (!CheckSession(env, drm, jsessionId)) { in android_media_MediaDrm_getKeyRequest()
802 Vector<uint8_t> sessionId(JByteArrayToVector(env, jsessionId)); in android_media_MediaDrm_getKeyRequest()
806 initData = JByteArrayToVector(env, jinitData); in android_media_MediaDrm_getKeyRequest()
811 mimeType = JStringToString8(env, jmimeType); in android_media_MediaDrm_getKeyRequest()
822 jniThrowException(env, "java/lang/IllegalArgumentException", in android_media_MediaDrm_getKeyRequest()
830 optParams = HashMapToKeyedVector(env, joptParams, &isOK); in android_media_MediaDrm_getKeyRequest()
843 if (throwExceptionAsNecessary(env, err, "Failed to get key request")) { in android_media_MediaDrm_getKeyRequest()
854 keyObj = env->AllocObject(clazz); in android_media_MediaDrm_getKeyRequest()
855 jbyteArray jrequest = VectorToJByteArray(env, request); in android_media_MediaDrm_getKeyRequest()
856 env->SetObjectField(keyObj, gFields.keyRequest.data, jrequest); in android_media_MediaDrm_getKeyRequest()
858 jstring jdefaultUrl = env->NewStringUTF(defaultUrl.string()); in android_media_MediaDrm_getKeyRequest()
859 env->SetObjectField(keyObj, gFields.keyRequest.defaultUrl, jdefaultUrl); in android_media_MediaDrm_getKeyRequest()
863 env->SetIntField(keyObj, gFields.keyRequest.requestType, in android_media_MediaDrm_getKeyRequest()
867 env->SetIntField(keyObj, gFields.keyRequest.requestType, in android_media_MediaDrm_getKeyRequest()
871 env->SetIntField(keyObj, gFields.keyRequest.requestType, in android_media_MediaDrm_getKeyRequest()
875 throwStateException(env, "DRM plugin failure: unknown key request type", in android_media_MediaDrm_getKeyRequest()
885 JNIEnv *env, jobject thiz, jbyteArray jsessionId, jbyteArray jresponse) { in android_media_MediaDrm_provideKeyResponse() argument
886 sp<IDrm> drm = GetDrm(env, thiz); in android_media_MediaDrm_provideKeyResponse()
888 if (!CheckSession(env, drm, jsessionId)) { in android_media_MediaDrm_provideKeyResponse()
892 Vector<uint8_t> sessionId(JByteArrayToVector(env, jsessionId)); in android_media_MediaDrm_provideKeyResponse()
895 jniThrowException(env, "java/lang/IllegalArgumentException", in android_media_MediaDrm_provideKeyResponse()
899 Vector<uint8_t> response(JByteArrayToVector(env, jresponse)); in android_media_MediaDrm_provideKeyResponse()
904 if (throwExceptionAsNecessary(env, err, "Failed to handle key response")) { in android_media_MediaDrm_provideKeyResponse()
907 return VectorToJByteArray(env, keySetId); in android_media_MediaDrm_provideKeyResponse()
911 JNIEnv *env, jobject thiz, jbyteArray jkeysetId) { in android_media_MediaDrm_removeKeys() argument
912 sp<IDrm> drm = GetDrm(env, thiz); in android_media_MediaDrm_removeKeys()
915 jniThrowException(env, "java/lang/IllegalArgumentException", in android_media_MediaDrm_removeKeys()
920 Vector<uint8_t> keySetId(JByteArrayToVector(env, jkeysetId)); in android_media_MediaDrm_removeKeys()
924 throwExceptionAsNecessary(env, err, "Failed to remove keys"); in android_media_MediaDrm_removeKeys()
928 JNIEnv *env, jobject thiz, jbyteArray jsessionId, in android_media_MediaDrm_restoreKeys() argument
931 sp<IDrm> drm = GetDrm(env, thiz); in android_media_MediaDrm_restoreKeys()
933 if (!CheckSession(env, drm, jsessionId)) { in android_media_MediaDrm_restoreKeys()
938 jniThrowException(env, "java/lang/IllegalArgumentException", NULL); in android_media_MediaDrm_restoreKeys()
942 Vector<uint8_t> sessionId(JByteArrayToVector(env, jsessionId)); in android_media_MediaDrm_restoreKeys()
943 Vector<uint8_t> keySetId(JByteArrayToVector(env, jkeysetId)); in android_media_MediaDrm_restoreKeys()
947 throwExceptionAsNecessary(env, err, "Failed to restore keys"); in android_media_MediaDrm_restoreKeys()
951 JNIEnv *env, jobject thiz, jbyteArray jsessionId) { in android_media_MediaDrm_queryKeyStatus() argument
952 sp<IDrm> drm = GetDrm(env, thiz); in android_media_MediaDrm_queryKeyStatus()
954 if (!CheckSession(env, drm, jsessionId)) { in android_media_MediaDrm_queryKeyStatus()
957 Vector<uint8_t> sessionId(JByteArrayToVector(env, jsessionId)); in android_media_MediaDrm_queryKeyStatus()
963 if (throwExceptionAsNecessary(env, err, "Failed to query key status")) { in android_media_MediaDrm_queryKeyStatus()
967 return KeyedVectorToHashMap(env, infoMap); in android_media_MediaDrm_queryKeyStatus()
971 JNIEnv *env, jobject thiz, jint jcertType, jstring jcertAuthority) { in android_media_MediaDrm_getProvisionRequestNative() argument
972 sp<IDrm> drm = GetDrm(env, thiz); in android_media_MediaDrm_getProvisionRequestNative()
975 jniThrowException(env, "java/lang/IllegalStateException", in android_media_MediaDrm_getProvisionRequestNative()
992 String8 certAuthority = JStringToString8(env, jcertAuthority); in android_media_MediaDrm_getProvisionRequestNative()
995 if (throwExceptionAsNecessary(env, err, "Failed to get provision request")) { in android_media_MediaDrm_getProvisionRequestNative()
1006 provisionObj = env->AllocObject(clazz); in android_media_MediaDrm_getProvisionRequestNative()
1007 jbyteArray jrequest = VectorToJByteArray(env, request); in android_media_MediaDrm_getProvisionRequestNative()
1008 env->SetObjectField(provisionObj, gFields.provisionRequest.data, jrequest); in android_media_MediaDrm_getProvisionRequestNative()
1010 jstring jdefaultUrl = env->NewStringUTF(defaultUrl.string()); in android_media_MediaDrm_getProvisionRequestNative()
1011 env->SetObjectField(provisionObj, gFields.provisionRequest.defaultUrl, jdefaultUrl); in android_media_MediaDrm_getProvisionRequestNative()
1018 JNIEnv *env, jobject thiz, jbyteArray jresponse) { in android_media_MediaDrm_provideProvisionResponseNative() argument
1019 sp<IDrm> drm = GetDrm(env, thiz); in android_media_MediaDrm_provideProvisionResponseNative()
1022 jniThrowException(env, "java/lang/IllegalStateException", in android_media_MediaDrm_provideProvisionResponseNative()
1028 jniThrowException(env, "java/lang/IllegalArgumentException", in android_media_MediaDrm_provideProvisionResponseNative()
1033 Vector<uint8_t> response(JByteArrayToVector(env, jresponse)); in android_media_MediaDrm_provideProvisionResponseNative()
1044 certificateObj = env->AllocObject(clazz); in android_media_MediaDrm_provideProvisionResponseNative()
1045 jbyteArray jcertificate = VectorToJByteArray(env, certificate); in android_media_MediaDrm_provideProvisionResponseNative()
1046 env->SetObjectField(certificateObj, gFields.certificate.certificateData, jcertificate); in android_media_MediaDrm_provideProvisionResponseNative()
1048 jbyteArray jwrappedKey = VectorToJByteArray(env, wrappedKey); in android_media_MediaDrm_provideProvisionResponseNative()
1049 env->SetObjectField(certificateObj, gFields.certificate.wrappedPrivateKey, jwrappedKey); in android_media_MediaDrm_provideProvisionResponseNative()
1052 throwExceptionAsNecessary(env, err, "Failed to handle provision response"); in android_media_MediaDrm_provideProvisionResponseNative()
1057 JNIEnv *env, jobject thiz) { in android_media_MediaDrm_getSecureStops() argument
1058 sp<IDrm> drm = GetDrm(env, thiz); in android_media_MediaDrm_getSecureStops()
1061 jniThrowException(env, "java/lang/IllegalStateException", in android_media_MediaDrm_getSecureStops()
1070 if (throwExceptionAsNecessary(env, err, "Failed to get secure stops")) { in android_media_MediaDrm_getSecureStops()
1074 return ListOfVectorsToArrayListOfByteArray(env, secureStops); in android_media_MediaDrm_getSecureStops()
1078 JNIEnv *env, jobject thiz, jbyteArray ssid) { in android_media_MediaDrm_getSecureStop() argument
1079 sp<IDrm> drm = GetDrm(env, thiz); in android_media_MediaDrm_getSecureStop()
1082 jniThrowException(env, "java/lang/IllegalStateException", in android_media_MediaDrm_getSecureStop()
1089 status_t err = drm->getSecureStop(JByteArrayToVector(env, ssid), secureStop); in android_media_MediaDrm_getSecureStop()
1091 if (throwExceptionAsNecessary(env, err, "Failed to get secure stop")) { in android_media_MediaDrm_getSecureStop()
1095 return VectorToJByteArray(env, secureStop); in android_media_MediaDrm_getSecureStop()
1099 JNIEnv *env, jobject thiz, jbyteArray jssRelease) { in android_media_MediaDrm_releaseSecureStops() argument
1100 sp<IDrm> drm = GetDrm(env, thiz); in android_media_MediaDrm_releaseSecureStops()
1103 jniThrowException(env, "java/lang/IllegalStateException", in android_media_MediaDrm_releaseSecureStops()
1108 Vector<uint8_t> ssRelease(JByteArrayToVector(env, jssRelease)); in android_media_MediaDrm_releaseSecureStops()
1112 throwExceptionAsNecessary(env, err, "Failed to release secure stops"); in android_media_MediaDrm_releaseSecureStops()
1116 JNIEnv *env, jobject thiz) { in android_media_MediaDrm_releaseAllSecureStops() argument
1117 sp<IDrm> drm = GetDrm(env, thiz); in android_media_MediaDrm_releaseAllSecureStops()
1120 jniThrowException(env, "java/lang/IllegalStateException", in android_media_MediaDrm_releaseAllSecureStops()
1127 throwExceptionAsNecessary(env, err, "Failed to release all secure stops"); in android_media_MediaDrm_releaseAllSecureStops()
1131 JNIEnv *env, jobject thiz, jstring jname) { in android_media_MediaDrm_getPropertyString() argument
1132 sp<IDrm> drm = GetDrm(env, thiz); in android_media_MediaDrm_getPropertyString()
1135 jniThrowException(env, "java/lang/IllegalStateException", in android_media_MediaDrm_getPropertyString()
1141 jniThrowException(env, "java/lang/IllegalArgumentException", in android_media_MediaDrm_getPropertyString()
1146 String8 name = JStringToString8(env, jname); in android_media_MediaDrm_getPropertyString()
1151 if (throwExceptionAsNecessary(env, err, "Failed to get property")) { in android_media_MediaDrm_getPropertyString()
1155 return env->NewStringUTF(value.string()); in android_media_MediaDrm_getPropertyString()
1159 JNIEnv *env, jobject thiz, jstring jname) { in android_media_MediaDrm_getPropertyByteArray() argument
1160 sp<IDrm> drm = GetDrm(env, thiz); in android_media_MediaDrm_getPropertyByteArray()
1163 jniThrowException(env, "java/lang/IllegalStateException", in android_media_MediaDrm_getPropertyByteArray()
1169 jniThrowException(env, "java/lang/IllegalArgumentException", in android_media_MediaDrm_getPropertyByteArray()
1174 String8 name = JStringToString8(env, jname); in android_media_MediaDrm_getPropertyByteArray()
1179 if (throwExceptionAsNecessary(env, err, "Failed to get property")) { in android_media_MediaDrm_getPropertyByteArray()
1183 return VectorToJByteArray(env, value); in android_media_MediaDrm_getPropertyByteArray()
1187 JNIEnv *env, jobject thiz, jstring jname, jstring jvalue) { in android_media_MediaDrm_setPropertyString() argument
1188 sp<IDrm> drm = GetDrm(env, thiz); in android_media_MediaDrm_setPropertyString()
1191 jniThrowException(env, "java/lang/IllegalStateException", in android_media_MediaDrm_setPropertyString()
1197 jniThrowException(env, "java/lang/IllegalArgumentException", in android_media_MediaDrm_setPropertyString()
1203 jniThrowException(env, "java/lang/IllegalArgumentException", in android_media_MediaDrm_setPropertyString()
1208 String8 name = JStringToString8(env, jname); in android_media_MediaDrm_setPropertyString()
1209 String8 value = JStringToString8(env, jvalue); in android_media_MediaDrm_setPropertyString()
1213 throwExceptionAsNecessary(env, err, "Failed to set property"); in android_media_MediaDrm_setPropertyString()
1217 JNIEnv *env, jobject thiz, jstring jname, jbyteArray jvalue) { in android_media_MediaDrm_setPropertyByteArray() argument
1218 sp<IDrm> drm = GetDrm(env, thiz); in android_media_MediaDrm_setPropertyByteArray()
1221 jniThrowException(env, "java/lang/IllegalStateException", in android_media_MediaDrm_setPropertyByteArray()
1227 jniThrowException(env, "java/lang/IllegalArgumentException", in android_media_MediaDrm_setPropertyByteArray()
1233 jniThrowException(env, "java/lang/IllegalArgumentException", in android_media_MediaDrm_setPropertyByteArray()
1238 String8 name = JStringToString8(env, jname); in android_media_MediaDrm_setPropertyByteArray()
1239 Vector<uint8_t> value = JByteArrayToVector(env, jvalue); in android_media_MediaDrm_setPropertyByteArray()
1243 throwExceptionAsNecessary(env, err, "Failed to set property"); in android_media_MediaDrm_setPropertyByteArray()
1247 JNIEnv *env, jobject /* thiz */, jobject jdrm, jbyteArray jsessionId, in android_media_MediaDrm_setCipherAlgorithmNative() argument
1250 sp<IDrm> drm = GetDrm(env, jdrm); in android_media_MediaDrm_setCipherAlgorithmNative()
1252 if (!CheckSession(env, drm, jsessionId)) { in android_media_MediaDrm_setCipherAlgorithmNative()
1257 jniThrowException(env, "java/lang/IllegalArgumentException", in android_media_MediaDrm_setCipherAlgorithmNative()
1262 Vector<uint8_t> sessionId(JByteArrayToVector(env, jsessionId)); in android_media_MediaDrm_setCipherAlgorithmNative()
1263 String8 algorithm = JStringToString8(env, jalgorithm); in android_media_MediaDrm_setCipherAlgorithmNative()
1267 throwExceptionAsNecessary(env, err, "Failed to set cipher algorithm"); in android_media_MediaDrm_setCipherAlgorithmNative()
1271 JNIEnv *env, jobject /* thiz */, jobject jdrm, jbyteArray jsessionId, in android_media_MediaDrm_setMacAlgorithmNative() argument
1274 sp<IDrm> drm = GetDrm(env, jdrm); in android_media_MediaDrm_setMacAlgorithmNative()
1276 if (!CheckSession(env, drm, jsessionId)) { in android_media_MediaDrm_setMacAlgorithmNative()
1281 jniThrowException(env, "java/lang/IllegalArgumentException", in android_media_MediaDrm_setMacAlgorithmNative()
1286 Vector<uint8_t> sessionId(JByteArrayToVector(env, jsessionId)); in android_media_MediaDrm_setMacAlgorithmNative()
1287 String8 algorithm = JStringToString8(env, jalgorithm); in android_media_MediaDrm_setMacAlgorithmNative()
1291 throwExceptionAsNecessary(env, err, "Failed to set mac algorithm"); in android_media_MediaDrm_setMacAlgorithmNative()
1296 JNIEnv *env, jobject /* thiz */, jobject jdrm, jbyteArray jsessionId, in android_media_MediaDrm_encryptNative() argument
1299 sp<IDrm> drm = GetDrm(env, jdrm); in android_media_MediaDrm_encryptNative()
1301 if (!CheckSession(env, drm, jsessionId)) { in android_media_MediaDrm_encryptNative()
1306 jniThrowException(env, "java/lang/IllegalArgumentException", in android_media_MediaDrm_encryptNative()
1311 Vector<uint8_t> sessionId(JByteArrayToVector(env, jsessionId)); in android_media_MediaDrm_encryptNative()
1312 Vector<uint8_t> keyId(JByteArrayToVector(env, jkeyId)); in android_media_MediaDrm_encryptNative()
1313 Vector<uint8_t> input(JByteArrayToVector(env, jinput)); in android_media_MediaDrm_encryptNative()
1314 Vector<uint8_t> iv(JByteArrayToVector(env, jiv)); in android_media_MediaDrm_encryptNative()
1319 if (throwExceptionAsNecessary(env, err, "Failed to encrypt")) { in android_media_MediaDrm_encryptNative()
1323 return VectorToJByteArray(env, output); in android_media_MediaDrm_encryptNative()
1327 JNIEnv *env, jobject /* thiz */, jobject jdrm, jbyteArray jsessionId, in android_media_MediaDrm_decryptNative() argument
1330 sp<IDrm> drm = GetDrm(env, jdrm); in android_media_MediaDrm_decryptNative()
1332 if (!CheckSession(env, drm, jsessionId)) { in android_media_MediaDrm_decryptNative()
1337 jniThrowException(env, "java/lang/IllegalArgumentException", in android_media_MediaDrm_decryptNative()
1342 Vector<uint8_t> sessionId(JByteArrayToVector(env, jsessionId)); in android_media_MediaDrm_decryptNative()
1343 Vector<uint8_t> keyId(JByteArrayToVector(env, jkeyId)); in android_media_MediaDrm_decryptNative()
1344 Vector<uint8_t> input(JByteArrayToVector(env, jinput)); in android_media_MediaDrm_decryptNative()
1345 Vector<uint8_t> iv(JByteArrayToVector(env, jiv)); in android_media_MediaDrm_decryptNative()
1349 if (throwExceptionAsNecessary(env, err, "Failed to decrypt")) { in android_media_MediaDrm_decryptNative()
1353 return VectorToJByteArray(env, output); in android_media_MediaDrm_decryptNative()
1357 JNIEnv *env, jobject /* thiz */, jobject jdrm, jbyteArray jsessionId, in android_media_MediaDrm_signNative() argument
1360 sp<IDrm> drm = GetDrm(env, jdrm); in android_media_MediaDrm_signNative()
1362 if (!CheckSession(env, drm, jsessionId)) { in android_media_MediaDrm_signNative()
1367 jniThrowException(env, "java/lang/IllegalArgumentException", in android_media_MediaDrm_signNative()
1372 Vector<uint8_t> sessionId(JByteArrayToVector(env, jsessionId)); in android_media_MediaDrm_signNative()
1373 Vector<uint8_t> keyId(JByteArrayToVector(env, jkeyId)); in android_media_MediaDrm_signNative()
1374 Vector<uint8_t> message(JByteArrayToVector(env, jmessage)); in android_media_MediaDrm_signNative()
1379 if (throwExceptionAsNecessary(env, err, "Failed to sign")) { in android_media_MediaDrm_signNative()
1383 return VectorToJByteArray(env, signature); in android_media_MediaDrm_signNative()
1387 JNIEnv *env, jobject /* thiz */, jobject jdrm, jbyteArray jsessionId, in android_media_MediaDrm_verifyNative() argument
1390 sp<IDrm> drm = GetDrm(env, jdrm); in android_media_MediaDrm_verifyNative()
1392 if (!CheckSession(env, drm, jsessionId)) { in android_media_MediaDrm_verifyNative()
1397 jniThrowException(env, "java/lang/IllegalArgumentException", in android_media_MediaDrm_verifyNative()
1402 Vector<uint8_t> sessionId(JByteArrayToVector(env, jsessionId)); in android_media_MediaDrm_verifyNative()
1403 Vector<uint8_t> keyId(JByteArrayToVector(env, jkeyId)); in android_media_MediaDrm_verifyNative()
1404 Vector<uint8_t> message(JByteArrayToVector(env, jmessage)); in android_media_MediaDrm_verifyNative()
1405 Vector<uint8_t> signature(JByteArrayToVector(env, jsignature)); in android_media_MediaDrm_verifyNative()
1410 throwExceptionAsNecessary(env, err, "Failed to verify"); in android_media_MediaDrm_verifyNative()
1416 JNIEnv *env, jobject /* thiz */, jobject jdrm, jbyteArray jsessionId, in android_media_MediaDrm_signRSANative() argument
1419 sp<IDrm> drm = GetDrm(env, jdrm); in android_media_MediaDrm_signRSANative()
1421 if (!CheckSession(env, drm, jsessionId)) { in android_media_MediaDrm_signRSANative()
1426 jniThrowException(env, "java/lang/IllegalArgumentException", in android_media_MediaDrm_signRSANative()
1431 Vector<uint8_t> sessionId(JByteArrayToVector(env, jsessionId)); in android_media_MediaDrm_signRSANative()
1432 String8 algorithm = JStringToString8(env, jalgorithm); in android_media_MediaDrm_signRSANative()
1433 Vector<uint8_t> wrappedKey(JByteArrayToVector(env, jwrappedKey)); in android_media_MediaDrm_signRSANative()
1434 Vector<uint8_t> message(JByteArrayToVector(env, jmessage)); in android_media_MediaDrm_signRSANative()
1439 if (throwExceptionAsNecessary(env, err, "Failed to sign")) { in android_media_MediaDrm_signRSANative()
1443 return VectorToJByteArray(env, signature); in android_media_MediaDrm_signRSANative()
1536 int register_android_media_Drm(JNIEnv *env) { in register_android_media_Drm() argument
1537 return AndroidRuntime::registerNativeMethods(env, in register_android_media_Drm()