| Index: webrtc/sdk/android/src/jni/peerconnection_jni.cc
|
| diff --git a/webrtc/sdk/android/src/jni/peerconnection_jni.cc b/webrtc/sdk/android/src/jni/peerconnection_jni.cc
|
| index da552997758ae04e9e1cd15939e88ad446b7d74c..f4174ceb88326c62633c8c05a8abd17a64217272 100644
|
| --- a/webrtc/sdk/android/src/jni/peerconnection_jni.cc
|
| +++ b/webrtc/sdk/android/src/jni/peerconnection_jni.cc
|
| @@ -1566,6 +1566,23 @@ static PeerConnectionInterface::ContinualGatheringPolicy
|
| return PeerConnectionInterface::GATHER_ONCE;
|
| }
|
|
|
| +static PeerConnectionInterface::TlsCertPolicy JavaTlsCertPolicyTypeToNativeType(
|
| + JNIEnv* jni,
|
| + jobject j_ice_server_tls_cert_policy) {
|
| + std::string enum_name =
|
| + GetJavaEnumName(jni, "org/webrtc/PeerConnection$TlsCertPolicy",
|
| + j_ice_server_tls_cert_policy);
|
| +
|
| + if (enum_name == "TLS_CERT_POLICY_SECURE")
|
| + return PeerConnectionInterface::kTlsCertPolicySecure;
|
| +
|
| + if (enum_name == "TLS_CERT_POLICY_INSECURE_NO_CHECK")
|
| + return PeerConnectionInterface::kTlsCertPolicyInsecureNoCheck;
|
| +
|
| + RTC_CHECK(false) << "Unexpected TlsCertPolicy enum_name " << enum_name;
|
| + return PeerConnectionInterface::kTlsCertPolicySecure;
|
| +}
|
| +
|
| static void JavaIceServersToJsepIceServers(
|
| JNIEnv* jni, jobject j_ice_servers,
|
| PeerConnectionInterface::IceServers* ice_servers) {
|
| @@ -1577,16 +1594,24 @@ static void JavaIceServersToJsepIceServers(
|
| GetFieldID(jni, j_ice_server_class, "username", "Ljava/lang/String;");
|
| jfieldID j_ice_server_password_id =
|
| GetFieldID(jni, j_ice_server_class, "password", "Ljava/lang/String;");
|
| + jfieldID j_ice_server_tls_cert_policy_id =
|
| + GetFieldID(jni, j_ice_server_class, "tlsCertPolicy",
|
| + "Lorg/webrtc/PeerConnection$TlsCertPolicy;");
|
| + jobject j_ice_server_tls_cert_policy =
|
| + GetObjectField(jni, j_ice_server, j_ice_server_tls_cert_policy_id);
|
| jstring uri = reinterpret_cast<jstring>(
|
| GetObjectField(jni, j_ice_server, j_ice_server_uri_id));
|
| jstring username = reinterpret_cast<jstring>(
|
| GetObjectField(jni, j_ice_server, j_ice_server_username_id));
|
| jstring password = reinterpret_cast<jstring>(
|
| GetObjectField(jni, j_ice_server, j_ice_server_password_id));
|
| + PeerConnectionInterface::TlsCertPolicy tls_cert_policy =
|
| + JavaTlsCertPolicyTypeToNativeType(jni, j_ice_server_tls_cert_policy);
|
| PeerConnectionInterface::IceServer server;
|
| server.uri = JavaToStdString(jni, uri);
|
| server.username = JavaToStdString(jni, username);
|
| server.password = JavaToStdString(jni, password);
|
| + server.tls_cert_policy = tls_cert_policy;
|
| ice_servers->push_back(server);
|
| }
|
| }
|
|
|