[FIX] Webview not falling back to default auth challenge when no cert is provided (#2918)

* [FIX] Android - fallback to default auth challenge handling when no cert is provided

* If a certificate auth challenge is requested on Android the webview will hang if no certificate is loaded.
  To prevent this, fallback to default Android behavior and cancel the challenge with request.cancel()

* No client certificate case defaults to super implementation

* Update react-native-webview

* Downgrade to previous dependency version

Co-authored-by: Diego Mello <diegolmello@gmail.com>
Co-authored-by: Gerzon Z <gerzonc@icloud.com>
Co-authored-by: Jan Garaj <jan.garaj@gmail.com>
This commit is contained in:
Billy Newman 2021-02-22 14:36:10 -07:00 committed by GitHub
parent 4c148bde3b
commit 3532cb349c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 5 additions and 5 deletions

View File

@ -1,5 +1,5 @@
diff --git a/node_modules/react-native-webview/android/src/main/java/com/reactnativecommunity/webview/RNCWebViewManager.java b/node_modules/react-native-webview/android/src/main/java/com/reactnativecommunity/webview/RNCWebViewManager.java diff --git a/node_modules/react-native-webview/android/src/main/java/com/reactnativecommunity/webview/RNCWebViewManager.java b/node_modules/react-native-webview/android/src/main/java/com/reactnativecommunity/webview/RNCWebViewManager.java
index ab869cf..2aa7a9e 100644 index ab869cf..08ce7ce 100644
--- a/node_modules/react-native-webview/android/src/main/java/com/reactnativecommunity/webview/RNCWebViewManager.java --- a/node_modules/react-native-webview/android/src/main/java/com/reactnativecommunity/webview/RNCWebViewManager.java
+++ b/node_modules/react-native-webview/android/src/main/java/com/reactnativecommunity/webview/RNCWebViewManager.java +++ b/node_modules/react-native-webview/android/src/main/java/com/reactnativecommunity/webview/RNCWebViewManager.java
@@ -84,6 +84,12 @@ import java.util.Map; @@ -84,6 +84,12 @@ import java.util.Map;
@ -44,7 +44,7 @@ index ab869cf..2aa7a9e 100644
} }
@Override @Override
@@ -742,12 +754,54 @@ public class RNCWebViewManager extends SimpleViewManager<WebView> { @@ -742,12 +754,56 @@ public class RNCWebViewManager extends SimpleViewManager<WebView> {
protected static class RNCWebViewClient extends WebViewClient { protected static class RNCWebViewClient extends WebViewClient {
@ -93,6 +93,8 @@ index ab869cf..2aa7a9e 100644
+ } + }
+ }; + };
+ task.execute(); + task.execute();
+ } else {
+ super.onReceivedClientCertRequest(view, request);
+ } + }
+ } + }
+ +

View File

@ -13189,7 +13189,7 @@ react-native-windows@^0.62.0-0:
uuid "^3.3.2" uuid "^3.3.2"
xml-parser "^1.2.1" xml-parser "^1.2.1"
react-native@RocketChat/react-native#0.63.4, react-native@^0.63.1: react-native@RocketChat/react-native#0.63.4:
version "0.63.4" version "0.63.4"
resolved "https://codeload.github.com/RocketChat/react-native/tar.gz/616299bbc01eeb56cb7d5b52e543051e1ad2d136" resolved "https://codeload.github.com/RocketChat/react-native/tar.gz/616299bbc01eeb56cb7d5b52e543051e1ad2d136"
dependencies: dependencies:
@ -13832,8 +13832,6 @@ ripemd160@^2.0.0, ripemd160@^2.0.1:
rn-extensions-share@RocketChat/rn-extensions-share: rn-extensions-share@RocketChat/rn-extensions-share:
version "2.4.1" version "2.4.1"
resolved "https://codeload.github.com/RocketChat/rn-extensions-share/tar.gz/4d7c0e4c2f300e4fb116af7b7cc0dbbc8169150c" resolved "https://codeload.github.com/RocketChat/rn-extensions-share/tar.gz/4d7c0e4c2f300e4fb116af7b7cc0dbbc8169150c"
dependencies:
react-native "^0.63.1"
rn-fetch-blob@0.12.0: rn-fetch-blob@0.12.0:
version "0.12.0" version "0.12.0"