-
Notifications
You must be signed in to change notification settings - Fork 5.4k
Closed
Description
Description
When trying to connect to a chromecast there will be an authentication error. Becauser there is no network security config specified and there is no path for a trust anchor certificate
Steps to Reproduce
- Create a new .NET MAUI project
- Add the Scharpcaster 1.0.8 package.
- Create in the MainPage.xaml.cs a OnAppearing function
- Add the following code in the OnAppearing function under step 5:
- Test the app and the app will break when trying to connect to a Chromecast
base.OnAppearing();
IChromecastLocator locator = new MdnsChromecastLocator();
var chromeCasts = await locator.FindReceiversAsync();
var client = new ChromecastClient();
await client.ConnectChromecast(chromeCasts.First());
_ = client.LaunchApplicationAsync("CC1AD845");
var media = new Media
{
ContentUrl = "https://commondatastorage.googleapis.com/gtv-videos-bucket/CastVideos/mp4/DesigningForGoogleCast.mp4"
};
_ = await client.GetChannel<IMediaChannel>().LoadAsync(media); Link to public reproduction project repository
https://github.com/timgoeij/MauiChromeCastTest
Version with bug
7.0 (current)
Last version that worked well
Unknown/Other
Affected platforms
Android
Affected platform versions
Android 7.1, 9, 12
Did you find any workaround?
No response
Relevant log output
Android 7.1:
[NetworkSecurityConfig] No Network Security Config specified, using platform default
[System.err] javax.net.ssl.SSLHandshakeException: Handshake failed
[System.err] at com.android.org.conscrypt.OpenSSLEngineImpl.unwrap(OpenSSLEngineImpl.java:441)
[System.err] at javax.net.ssl.SSLEngine.unwrap(SSLEngine.java:1270)
[System.err] Caused by: java.security.cert.CertificateException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.
[System.err] at com.android.org.conscrypt.TrustManagerImpl.verifyChain(TrustManagerImpl.java:563)
[System.err] at com.android.org.conscrypt.TrustManagerImpl.checkTrustedRecursive(TrustManagerImpl.java:444)
[System.err] at com.android.org.conscrypt.TrustManagerImpl.checkTrusted(TrustManagerImpl.java:401)
[System.err] at com.android.org.conscrypt.TrustManagerImpl.checkTrusted(TrustManagerImpl.java:375)
[System.err] at com.android.org.conscrypt.TrustManagerImpl.getTrustedChainForServer(TrustManagerImpl.java:318)
[System.err] at android.security.net.config.NetworkSecurityTrustManager.checkServerTrusted(NetworkSecurityTrustManager.java:102)
[System.err] at android.security.net.config.RootTrustManager.checkServerTrusted(RootTrustManager.java:104)
[System.err] at com.android.org.conscrypt.Platform.checkServerTrusted(Platform.java:202)
[System.err] at com.android.org.conscrypt.OpenSSLEngineImpl.verifyCertificateChain(OpenSSLEngineImpl.java:666)
[System.err] at com.android.org.conscrypt.NativeCrypto.SSL_do_handshake_bio(Native Method)
[System.err] at com.android.org.conscrypt.OpenSSLEngineImpl.unwrap(OpenSSLEngineImpl.java:426)
[System.err] ... 1 more
[System.err] Caused by: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.
[System.err] ... 12 more
[monodroid-assembly] open_from_bundles: failed to load assembly nl-NL/System.Net.Security.resources.dll
[monodroid-assembly] open_from_bundles: failed to load assembly nl-NL/System.Net.Security.resources.dll
[monodroid-assembly] open_from_bundles: failed to load assembly nl/System.Net.Security.resources.dll
Thread started: <Thread Pool> dotnet/maui#12
[monodroid-assembly] open_from_bundles: failed to load assembly nl/System.Net.Security.resources.dll
**System.Security.Authentication.AuthenticationException:** 'Authentication failed, see inner exception.
Android 9, 12
[NetworkSecurityConfig] No Network Security Config specified, using platform default
[System.err] javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.
[System.err] at com.android.org.conscrypt.SSLUtils.toSSLHandshakeException(SSLUtils.java:331)
[System.err] at com.android.org.conscrypt.ConscryptEngine.convertException(ConscryptEngine.java:1138)
[System.err] at com.android.org.conscrypt.ConscryptEngine.readPlaintextData(ConscryptEngine.java:1093)
[System.err] at com.android.org.conscrypt.ConscryptEngine.unwrap(ConscryptEngine.java:841)
[System.err] at com.android.org.conscrypt.ConscryptEngine.unwrap(ConscryptEngine.java:713)
[System.err] at com.android.org.conscrypt.ConscryptEngine.unwrap(ConscryptEngine.java:678)
[System.err] at com.android.org.conscrypt.Java8EngineWrapper.unwrap(Java8EngineWrapper.java:236)
[System.err] Caused by: java.security.cert.CertificateException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.
[System.err] at com.android.org.conscrypt.TrustManagerImpl.verifyChain(TrustManagerImpl.java:661)
[System.err] at com.android.org.conscrypt.TrustManagerImpl.checkTrustedRecursive(TrustManagerImpl.java:539)
[System.err] at com.android.org.conscrypt.TrustManagerImpl.checkTrusted(TrustManagerImpl.java:495)
[System.err] at com.android.org.conscrypt.TrustManagerImpl.checkTrusted(TrustManagerImpl.java:418)
[System.err] at com.android.org.conscrypt.TrustManagerImpl.getTrustedChainForServer(TrustManagerImpl.java:353)
[System.err] at android.security.net.config.NetworkSecurityTrustManager.checkServerTrusted(NetworkSecurityTrustManager.java:102)
[System.err] at android.security.net.config.RootTrustManager.checkServerTrusted(RootTrustManager.java:104)
[System.err] at com.android.org.conscrypt.Platform.checkServerTrusted(Platform.java:232)
[System.err] at com.android.org.conscrypt.ConscryptEngine.verifyCertificateChain(ConscryptEngine.java:1633)
[System.err] at com.android.org.conscrypt.NativeCrypto.ENGINE_SSL_read_direct(Native Method)
[System.err] at com.android.org.conscrypt.NativeSsl.readDirectByteBuffer(NativeSsl.java:521)
[System.err] at com.android.org.conscrypt.ConscryptEngine.readPlaintextDataDirect(ConscryptEngine.java:1099)
[System.err] at com.android.org.conscrypt.ConscryptEngine.readPlaintextDataHeap(ConscryptEngine.java:1119)
[System.err] at com.android.org.conscrypt.ConscryptEngine.readPlaintextData(ConscryptEngine.java:1091)
[System.err] ... 4 more
[System.err] Caused by: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.
[System.err] ... 18 more
[monodroid-assembly] open_from_bundles: failed to load assembly nl-NL/System.Net.Security.resources.dll
[monodroid-assembly] open_from_bundles: failed to load assembly nl-NL/System.Net.Security.resources.dll
[monodroid-assembly] open_from_bundles: failed to load assembly nl/System.Net.Security.resources.dll
Thread started: <Thread Pool> dotnet/maui#12
[monodroid-assembly] open_from_bundles: failed to load assembly nl/System.Net.Security.resources.dll
**System.Security.Authentication.AuthenticationException:** 'Authentication failed, see inner exception.Reactions are currently unavailable