SynoCommunity / spksrc

Cross compilation framework to create native packages for the Synology's NAS
https://synocommunity.com
Other
2.99k stars 1.22k forks source link

Mono 5.18 SSL store problems on aarch64 platforms #3666

Closed bjorn1981 closed 3 years ago

bjorn1981 commented 5 years ago

For new Package Requests, see the guidelines

Setup

Package Name: Mono Package Version: 5.18

NAS Model: DS118 NAS Architecture: ARM rtd1296 DSM version: 6.1

Expected behavior

https connection excepted

Actual behavior

any https connection is refused since updating Mono 5.8 -> 5.18, for example torrentapi or telegram. Happens in sonarr and radarr. Mono, Sonarr and Radarr are all latest version by SynoCommunity.

log error: System.Net.WebException: Error: SecureChannelFailure (Authentication failed, see inner exception.) ---> System.Security.Authentication.AuthenticationException: Authentication failed, see inner exception. ---> Mono.Btls.MonoBtlsException: Ssl error:0f000078:elliptic curve routines:OPENSSL_internal:POINT_IS_NOT_ON_CURVE

Running /var/packages/mono/target/bin/cert-sync /etc/ssl/certs/ca-certificates.crt did not help. Also noticed there is no /usr/share/.mono/ folder

Connecting torrentapi over http instead of https works.

ymartin59 commented 5 years ago

@m4tt075 Hello. As you can see, I have just successfully uploaded and published Mono and related application package updates.

bjorn1981 commented 5 years ago

I might not be looking in the correct place, but the latest I see is Mono 5.18.0.240-12. I have that version installed.

m4tt075 commented 5 years ago

@bjorn1981 Yes, that is the latest version we ship. I've just searched the net for reports of the same error. There is not a lot. I found some issues for ARM64 platforms with this, but no clear direction where it comes from. Some people blamed mono, some openssl. EDIT: To complete my message: Please report this with the mono team as they might be able to debug this further. We'll have to see whether this is an issue that affects people more broadly or just ARM64 platforms. Sorry, but I'm afraid I'm not able to do more right now. As temporary workaround, I'd downgrade the mono package again, but please report the error first, to ensure you provide all information the mono people need.

m4tt075 commented 5 years ago

Sorry, accidentally closed and reopened...

silv3r23 commented 5 years ago

same issue here since mono update to 5.18.0.240-12

  at /spksrc/spk/mono/work-aarch64-6.1/mono-5.18.0.240/external/boringssl/crypto/ec/ec.c:835
  at Mono.Btls.MonoBtlsContext.ProcessHandshake () [0x00038] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at Mono.Net.Security.MobileAuthenticatedStream.ProcessHandshake (Mono.Net.Security.AsyncOperationStatus status, System.Boolean renegotiate) [0x000a1] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at (wrapper remoting-invoke-with-check) Mono.Net.Security.MobileAuthenticatedStream.ProcessHandshake(Mono.Net.Security.AsyncOperationStatus,bool)
  at Mono.Net.Security.AsyncHandshakeRequest.Run (Mono.Net.Security.AsyncOperationStatus status) [0x00006] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at Mono.Net.Security.AsyncProtocolRequest.ProcessOperation (System.Threading.CancellationToken cancellationToken) [0x000ff] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at Mono.Net.Security.AsyncProtocolRequest.StartOperation (System.Threading.CancellationToken cancellationToken) [0x0008b] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
   --- End of inner exception stack trace ---
  at Mono.Net.Security.MobileAuthenticatedStream.ProcessAuthentication (System.Boolean runSynchronously, Mono.Net.Security.MonoSslAuthenticationOptions options, System.Threading.CancellationToken cancellationToken) [0x00252] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at Mono.Net.Security.MonoTlsStream.CreateStream (System.Net.WebConnectionTunnel tunnel, System.Threading.CancellationToken cancellationToken) [0x00126] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at System.Net.WebConnection.CreateStream (System.Net.WebOperation operation, System.Boolean reused, System.Threading.CancellationToken cancellationToken) [0x001ba] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
   --- End of inner exception stack trace ---
  at System.Net.WebConnection.CreateStream (System.Net.WebOperation operation, System.Boolean reused, System.Threading.CancellationToken cancellationToken) [0x0021a] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at System.Net.WebConnection.InitConnection (System.Net.WebOperation operation, System.Threading.CancellationToken cancellationToken) [0x00141] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at System.Net.WebOperation.Run () [0x0009a] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at System.Net.WebCompletionSource`1[T].WaitForCompletion () [0x00094] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at System.Net.HttpWebRequest.RunWithTimeoutWorker[T] (System.Threading.Tasks.Task`1[TResult] workerTask, System.Int32 timeout, System.Action abort, System.Func`1[TResult] aborted, System.Threading.CancellationTokenSource cts) [0x000f8] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at System.Net.HttpWebRequest.GetResponse () [0x00016] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at NzbDrone.Common.Http.Dispatchers.ManagedHttpDispatcher.GetResponse (NzbDrone.Common.Http.HttpRequest request, System.Net.CookieContainer cookies) [0x0012f] in <a1d4cd371e3f48118cccea718b1ace8d>:0
  at NzbDrone.Common.Http.Dispatchers.FallbackHttpDispatcher.GetResponse (NzbDrone.Common.Http.HttpRequest request, System.Net.CookieContainer cookies) [0x0009d] in <a1d4cd371e3f48118cccea718b1ace8d>:0
  at NzbDrone.Common.Http.HttpClient.ExecuteRequest (NzbDrone.Common.Http.HttpRequest request, System.Net.CookieContainer cookieContainer) [0x0007e] in <a1d4cd371e3f48118cccea718b1ace8d>:0
  at NzbDrone.Common.Http.HttpClient.Execute (NzbDrone.Common.Http.HttpRequest request) [0x00008] in <a1d4cd371e3f48118cccea718b1ace8d>:0
  at NzbDrone.Common.Http.HttpClient.Get (NzbDrone.Common.Http.HttpRequest request) [0x00007] in <a1d4cd371e3f48118cccea718b1ace8d>:0
  at NzbDrone.Core.Indexers.Newznab.NewznabCapabilitiesProvider.FetchCapabilities (NzbDrone.Core.Indexers.Newznab.NewznabSettings indexerSettings) [0x00052] in <b938542dd9a14cfc824f9cd70d8df65b>:0
m4tt075 commented 5 years ago

@silv3r23 You are on aarch64 as well, right?

m4tt075 commented 5 years ago

@kaso17 May I please ask you to look at the above? Can you make sense out of this or do you know where this is coming from? Any advice appreciated...

kaso17 commented 5 years ago

I never had time or any aarch64 device to track this down further.

I've never seen this on any other platform than aarch64.

https://github.com/mono/mono/issues/8648 indicates some problems with older acc versions. If you used a new toolchain for the mono 5.18 release you might want to try the previous one first.

might be a gcc regression.

if that doesn't make the source of the problem clear, I would build boringssl (used by mono for TLS) and use the included command line tools to try to reproduce this without mono to find out if it's a mono or boringssl bug.

m4tt075 commented 5 years ago

Many thanks, @kaso17. Good to know (though not good) that the issue is apparently known. I've just cross-checked,the toolchains: The one we've used to build 5.18 is the same that we used for 5.8 at the time. No change in that regard. Looking through the thread you have referenced and references therein, the problem really appears to be a bit random, i.e. occurring with some mono version but not with others. I'm considering to build a couple of aarch64 builds of different mono versions to see whether we can at least "bisect" to some extent.

@bjorn1981 @silv3r23 What happens if you manually downgrade your mono installation to our previous 5.8 version? You can get it from here: https://synocommunity.com/package/mono Does it work then?

CraigInBrisbane commented 5 years ago

I have the same issue. As stated in the stack trace above. I'm using a Synology DS418J. It looks like the only way to get things working again, would be a downgrade. I'll try the link above - but it's happening on the Synology DS418J. Unfortunately, it looks like you need to uninstall Radarr and Sonarr (The two apps that use Mono) before you can downgrade. Actually, downgrade is forbidden. You need to uninstall Mono, and then do the manual install.

Edit: I'm unable to do this now, as when I try reinstalled Radarr (Had to uninstall to remove mono), it forces me to update to the latest mono version (after downgrading).

m4tt075 commented 5 years ago

@CraigInBrisbane Right. Unfortunately, some of the newer *arr packages require newer mono versions, so just reverting the mono update is no option either. Anyways, I think we have sufficient evidence that the aarch64 version of mono is broken for now. @ymartin59 For that reason, I've deactiveted it (just aarch64) on our repository.

For aarch64 users (@CraigInBrisbane et. al.), who updated already, downgrading mono is the only workaround for now. That requires to downgrade Radarr, too. On https://synocommunity.com/packages you can click on each package and get access to older package versions, which you can manually download and install. Sorry for the hassle.

My debugging capabilities are limited, but I'll see whether I can build other, newer mono versions for aarch64 that do not exhibit this problem. I'll post them here so that you can try. I don't have an aarch64 test platform myself.

bjorn1981 commented 5 years ago

Thanks for looking into it. Downgrading was my first idea as well, but I did not have time to backup and downgrade Sonarr and Radarr.

I can test new releases when available.

silv3r23 commented 5 years ago

The CPU architecture of my synology is rtd1296. Unfortunately I cannot downgrade, because I had to uninstall Sonarr and Radarr at first and dont have time to back it up too.

CraigInBrisbane commented 5 years ago

Thanks @m4tt075 - I downgraded Sonarr and Radarr and Mono as suggested. Setting it up took 20mins so not an issue. All working fine again. Happy to test new versions once they come up. Thanks for the help and efforts.

Likkie commented 5 years ago

I have this issue too CPU is Realtek RTD1293 (DS-418j). :(

Going to attempt manual downgrade. Can someone tell me how to identify the correct build please? The only "aarch64" build I see is the latest one at the tip of the page.

Kilay commented 5 years ago

In addition, I have the same problem on DS413j (so armv5) with Jackett (see log below). Just for information, I previously had another error that affect armv5 but was able to fix it by adding MONO_ENV_OPTIONS='-O=-aot,-float32' in service-setup.sh script (see issue and fix reported in mono repo : https://github.com/mono/mono/issues/12537#issuecomment-459362182)

03-27 13:23:29 Error Jackett.Common.IndexerException: Exception (yggtorrent): /volume1/@appstore/mono/lib/../lib/libmono-btls-shared.so ---> System.Net.Http.HttpRequestException: An error occurred while sending the request ---> System.Net.WebException: Error: SecureChannelFailure (Authentication failed, see inner exception.) ---> System.Security.Authentication.AuthenticationException: Authentication failed, see inner exception. ---> System.DllNotFoundException: /volume1/@appstore/mono/lib/../lib/libmono-btls-shared.so
  at (wrapper managed-to-native) Mono.Btls.MonoBtlsSslCtx.mono_btls_ssl_ctx_new()
  at Mono.Btls.MonoBtlsSslCtx..ctor () [0x00000] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at Mono.Btls.MonoBtlsContext.InitializeConnection () [0x00000] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at Mono.Btls.MonoBtlsContext.StartHandshake () [0x00000] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at Mono.Net.Security.MobileAuthenticatedStream.ProcessHandshake (Mono.Net.Security.AsyncOperationStatus status, System.Boolean renegotiate) [0x0007e] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at (wrapper remoting-invoke-with-check) Mono.Net.Security.MobileAuthenticatedStream.ProcessHandshake(Mono.Net.Security.AsyncOperationStatus,bool)
  at Mono.Net.Security.AsyncHandshakeRequest.Run (Mono.Net.Security.AsyncOperationStatus status) [0x00006] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at Mono.Net.Security.AsyncProtocolRequest.ProcessOperation (System.Threading.CancellationToken cancellationToken) [0x000ff] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at Mono.Net.Security.AsyncProtocolRequest.StartOperation (System.Threading.CancellationToken cancellationToken) [0x0008b] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
   --- End of inner exception stack trace ---
  at Mono.Net.Security.MobileAuthenticatedStream.ProcessAuthentication (System.Boolean runSynchronously, Mono.Net.Security.MonoSslAuthenticationOptions options, System.Threading.CancellationToken cancellationToken) [0x00252] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at Mono.Net.Security.MonoTlsStream.CreateStream (System.Net.WebConnectionTunnel tunnel, System.Threading.CancellationToken cancellationToken) [0x00126] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at System.Net.WebConnection.CreateStream (System.Net.WebOperation operation, System.Boolean reused, System.Threading.CancellationToken cancellationToken) [0x001ba] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
   --- End of inner exception stack trace ---
  at System.Net.WebConnection.CreateStream (System.Net.WebOperation operation, System.Boolean reused, System.Threading.CancellationToken cancellationToken) [0x0021a] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at System.Net.WebConnection.InitConnection (System.Net.WebOperation operation, System.Threading.CancellationToken cancellationToken) [0x00141] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at System.Net.WebOperation.Run () [0x0009a] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at System.Net.WebCompletionSource`1[T].WaitForCompletion () [0x00094] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at System.Net.HttpWebRequest.RunWithTimeoutWorker[T] (System.Threading.Tasks.Task`1[TResult] workerTask, System.Int32 timeout, System.Action abort, System.Func`1[TResult] aborted, System.Threading.CancellationTokenSource cts) [0x000f8] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at System.Net.HttpWebRequest.EndGetResponse (System.IAsyncResult asyncResult) [0x00020] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at System.Threading.Tasks.TaskFactory`1[TResult].FromAsyncCoreLogic (System.IAsyncResult iar, System.Func`2[T,TResult] endFunction, System.Action`1[T] endAction, System.Threading.Tasks.Task`1[TResult] promise, System.Boolean requiresSynchronization) [0x0000f] in <30c1a991558c4064acefa7cee0fc6779>:0
--- End of stack trace from previous location where exception was thrown ---

  at System.Net.Http.HttpClientHandler.SendAsync (System.Net.Http.HttpRequestMessage request, System.Threading.CancellationToken cancellationToken) [0x0041d] in <d79bb9faee264b669b8825270136bfaa>:0
   --- End of inner exception stack trace ---
  at System.Net.Http.HttpClientHandler.SendAsync (System.Net.Http.HttpRequestMessage request, System.Threading.CancellationToken cancellationToken) [0x00478] in <d79bb9faee264b669b8825270136bfaa>:0
  at CloudFlareUtilities.ClearanceHandler.SendAsync (System.Net.Http.HttpRequestMessage request, System.Threading.CancellationToken cancellationToken) [0x0010c] in <532686a2771c4b3eb8f0bcce022e4e0b>:0
  at System.Net.Http.HttpClient.SendAsyncWorker (System.Net.Http.HttpRequestMessage request, System.Net.Http.HttpCompletionOption completionOption, System.Threading.CancellationToken cancellationToken) [0x000ca] in <d79bb9faee264b669b8825270136bfaa>:0
  at Jackett.Common.Utils.Clients.HttpWebClient.Run (Jackett.Common.Utils.Clients.WebRequest webRequest) [0x00456] in <3f4864bea7054cd2b7e83a28c06c8c3f>:0
  at Jackett.Common.Utils.Clients.WebClient.GetString (Jackett.Common.Utils.Clients.WebRequest request) [0x0010b] in <3f4864bea7054cd2b7e83a28c06c8c3f>:0
  at Jackett.Common.Indexers.BaseWebIndexer.RequestStringWithCookies (System.String url, System.String cookieOverride, System.String referer, System.Collections.Generic.Dictionary`2[TKey,TValue] headers) [0x000cb] in <3f4864bea7054cd2b7e83a28c06c8c3f>:0
  at Jackett.Common.Indexers.CardigannIndexer.PerformQuery (Jackett.Common.Models.TorznabQuery query) [0x0085e] in <3f4864bea7054cd2b7e83a28c06c8c3f>:0
  at Jackett.Common.Indexers.BaseIndexer.ResultsForQuery (Jackett.Common.Models.TorznabQuery query) [0x00091] in <3f4864bea7054cd2b7e83a28c06c8c3f>:0
   --- End of inner exception stack trace ---
  at Jackett.Common.Indexers.BaseIndexer.ResultsForQuery (Jackett.Common.Models.TorznabQuery query) [0x000ee] in <3f4864bea7054cd2b7e83a28c06c8c3f>:0
  at Jackett.Common.Indexers.BaseWebIndexer.ResultsForQuery (Jackett.Common.Models.TorznabQuery query) [0x0006b] in <3f4864bea7054cd2b7e83a28c06c8c3f>:0
  at Jackett.Common.Services.IndexerManagerService.TestIndexer (System.String name) [0x000a3] in <3f4864bea7054cd2b7e83a28c06c8c3f>:0
  at Jackett.Server.Controllers.IndexerApiController.Test () [0x000e1] in <d9cb217c33fa4cc9a9b8489469fe5189>:0
  at Microsoft.AspNetCore.Mvc.Internal.ActionMethodExecutor+TaskOfIActionResultExecutor.Execute (Microsoft.AspNetCore.Mvc.Infrastructure.IActionResultTypeMapper mapper, Microsoft.Extensions.Internal.ObjectMethodExecutor executor, System.Object controller, System.Object[] arguments) [0x00071] in <b4ef600f4a594fe2865a8f97f915fb9d>:0
  at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.InvokeActionMethodAsync () [0x00131] in <b4ef600f4a594fe2865a8f97f915fb9d>:0
  at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.InvokeNextActionFilterAsync () [0x0009e] in <b4ef600f4a594fe2865a8f97f915fb9d>:0
  at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.Rethrow (Microsoft.AspNetCore.Mvc.Filters.ActionExecutedContext context) [0x0001b] in <b4ef600f4a594fe2865a8f97f915fb9d>:0
  at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.Next (Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker+State& next, Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker+Scope& scope, System.Object& state, System.Boolean& isCompleted) [0x00382] in <b4ef600f4a594fe2865a8f97f915fb9d>:0
  at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.InvokeInnerFilterAsync () [0x0002f] in <b4ef600f4a594fe2865a8f97f915fb9d>:0
  at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeNextResourceFilter () [0x0009f] in <b4ef600f4a594fe2865a8f97f915fb9d>:0
  at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.Rethrow (Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext context) [0x0001b] in <b4ef600f4a594fe2865a8f97f915fb9d>:0
  at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.Next (Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker+State& next, Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker+Scope& scope, System.Object& state, System.Boolean& isCompleted) [0x00840] in <b4ef600f4a594fe2865a8f97f915fb9d>:0
  at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeFilterPipelineAsync () [0x0002f] in <b4ef600f4a594fe2865a8f97f915fb9d>:0
  at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeAsync () [0x0012e] in <b4ef600f4a594fe2865a8f97f915fb9d>:0
  at Microsoft.AspNetCore.Builder.RouterMiddleware.Invoke (Microsoft.AspNetCore.Http.HttpContext httpContext) [0x001cb] in <6092a16d93814eba828b517a2b132f80>:0
  at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke (Microsoft.AspNetCore.Http.HttpContext context) [0x00384] in <427697fe42b7459ba5302fb76d339d3b>:0
  at Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware.Invoke (Microsoft.AspNetCore.Http.HttpContext context) [0x0043e] in <f352e566abf6421e87eafbcf57a0b237>:0
  at Jackett.Server.Middleware.CustomExceptionHandler.Invoke (Microsoft.AspNetCore.Http.HttpContext httpContext) [0x0008a] in <d9cb217c33fa4cc9a9b8489469fe5189>:0  Jackett.Common.IndexerException: Exception (yggtorrent): /volume1/@appstore/mono/lib/../lib/libmono-btls-shared.so ---> System.Net.Http.HttpRequestException: An error occurred while sending the request ---> System.Net.WebException: Error: SecureChannelFailure (Authentication failed, see inner exception.) ---> System.Security.Authentication.AuthenticationException: Authentication failed, see inner exception. ---> System.DllNotFoundException: /volume1/@appstore/mono/lib/../lib/libmono-btls-shared.so
  at (wrapper managed-to-native) Mono.Btls.MonoBtlsSslCtx.mono_btls_ssl_ctx_new()
  at Mono.Btls.MonoBtlsSslCtx..ctor () [0x00000] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at Mono.Btls.MonoBtlsContext.InitializeConnection () [0x00000] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at Mono.Btls.MonoBtlsContext.StartHandshake () [0x00000] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at Mono.Net.Security.MobileAuthenticatedStream.ProcessHandshake (Mono.Net.Security.AsyncOperationStatus status, System.Boolean renegotiate) [0x0007e] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at (wrapper remoting-invoke-with-check) Mono.Net.Security.MobileAuthenticatedStream.ProcessHandshake(Mono.Net.Security.AsyncOperationStatus,bool)
  at Mono.Net.Security.AsyncHandshakeRequest.Run (Mono.Net.Security.AsyncOperationStatus status) [0x00006] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at Mono.Net.Security.AsyncProtocolRequest.ProcessOperation (System.Threading.CancellationToken cancellationToken) [0x000ff] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at Mono.Net.Security.AsyncProtocolRequest.StartOperation (System.Threading.CancellationToken cancellationToken) [0x0008b] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
   --- End of inner exception stack trace ---
  at Mono.Net.Security.MobileAuthenticatedStream.ProcessAuthentication (System.Boolean runSynchronously, Mono.Net.Security.MonoSslAuthenticationOptions options, System.Threading.CancellationToken cancellationToken) [0x00252] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at Mono.Net.Security.MonoTlsStream.CreateStream (System.Net.WebConnectionTunnel tunnel, System.Threading.CancellationToken cancellationToken) [0x00126] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at System.Net.WebConnection.CreateStream (System.Net.WebOperation operation, System.Boolean reused, System.Threading.CancellationToken cancellationToken) [0x001ba] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
   --- End of inner exception stack trace ---
  at System.Net.WebConnection.CreateStream (System.Net.WebOperation operation, System.Boolean reused, System.Threading.CancellationToken cancellationToken) [0x0021a] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at System.Net.WebConnection.InitConnection (System.Net.WebOperation operation, System.Threading.CancellationToken cancellationToken) [0x00141] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at System.Net.WebOperation.Run () [0x0009a] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at System.Net.WebCompletionSource`1[T].WaitForCompletion () [0x00094] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at System.Net.HttpWebRequest.RunWithTimeoutWorker[T] (System.Threading.Tasks.Task`1[TResult] workerTask, System.Int32 timeout, System.Action abort, System.Func`1[TResult] aborted, System.Threading.CancellationTokenSource cts) [0x000f8] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at System.Net.HttpWebRequest.EndGetResponse (System.IAsyncResult asyncResult) [0x00020] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0
  at System.Threading.Tasks.TaskFactory`1[TResult].FromAsyncCoreLogic (System.IAsyncResult iar, System.Func`2[T,TResult] endFunction, System.Action`1[T] endAction, System.Threading.Tasks.Task`1[TResult] promise, System.Boolean requiresSynchronization) [0x0000f] in <30c1a991558c4064acefa7cee0fc6779>:0
--- End of stack trace from previous location where exception was thrown ---

  at System.Net.Http.HttpClientHandler.SendAsync (System.Net.Http.HttpRequestMessage request, System.Threading.CancellationToken cancellationToken) [0x0041d] in <d79bb9faee264b669b8825270136bfaa>:0
   --- End of inner exception stack trace ---
  at System.Net.Http.HttpClientHandler.SendAsync (System.Net.Http.HttpRequestMessage request, System.Threading.CancellationToken cancellationToken) [0x00478] in <d79bb9faee264b669b8825270136bfaa>:0
  at CloudFlareUtilities.ClearanceHandler.SendAsync (System.Net.Http.HttpRequestMessage request, System.Threading.CancellationToken cancellationToken) [0x0010c] in <532686a2771c4b3eb8f0bcce022e4e0b>:0
  at System.Net.Http.HttpClient.SendAsyncWorker (System.Net.Http.HttpRequestMessage request, System.Net.Http.HttpCompletionOption completionOption, System.Threading.CancellationToken cancellationToken) [0x000ca] in <d79bb9faee264b669b8825270136bfaa>:0
  at Jackett.Common.Utils.Clients.HttpWebClient.Run (Jackett.Common.Utils.Clients.WebRequest webRequest) [0x00456] in <3f4864bea7054cd2b7e83a28c06c8c3f>:0
  at Jackett.Common.Utils.Clients.WebClient.GetString (Jackett.Common.Utils.Clients.WebRequest request) [0x0010b] in <3f4864bea7054cd2b7e83a28c06c8c3f>:0
  at Jackett.Common.Indexers.BaseWebIndexer.RequestStringWithCookies (System.String url, System.String cookieOverride, System.String referer, System.Collections.Generic.Dictionary`2[TKey,TValue] headers) [0x000cb] in <3f4864bea7054cd2b7e83a28c06c8c3f>:0
  at Jackett.Common.Indexers.CardigannIndexer.PerformQuery (Jackett.Common.Models.TorznabQuery query) [0x0085e] in <3f4864bea7054cd2b7e83a28c06c8c3f>:0
  at Jackett.Common.Indexers.BaseIndexer.ResultsForQuery (Jackett.Common.Models.TorznabQuery query) [0x00091] in <3f4864bea7054cd2b7e83a28c06c8c3f>:0
   --- End of inner exception stack trace ---
  at Jackett.Common.Indexers.BaseIndexer.ResultsForQuery (Jackett.Common.Models.TorznabQuery query) [0x000ee] in <3f4864bea7054cd2b7e83a28c06c8c3f>:0
  at Jackett.Common.Indexers.BaseWebIndexer.ResultsForQuery (Jackett.Common.Models.TorznabQuery query) [0x0006b] in <3f4864bea7054cd2b7e83a28c06c8c3f>:0
  at Jackett.Common.Services.IndexerManagerService.TestIndexer (System.String name) [0x000a3] in <3f4864bea7054cd2b7e83a28c06c8c3f>:0
  at Jackett.Server.Controllers.IndexerApiController.Test () [0x000e1] in <d9cb217c33fa4cc9a9b8489469fe5189>:0
  at Microsoft.AspNetCore.Mvc.Internal.ActionMethodExecutor+TaskOfIActionResultExecutor.Execute (Microsoft.AspNetCore.Mvc.Infrastructure.IActionResultTypeMapper mapper, Microsoft.Extensions.Internal.ObjectMethodExecutor executor, System.Object controller, System.Object[] arguments) [0x00071] in <b4ef600f4a594fe2865a8f97f915fb9d>:0
  at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.InvokeActionMethodAsync () [0x00131] in <b4ef600f4a594fe2865a8f97f915fb9d>:0
  at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.InvokeNextActionFilterAsync () [0x0009e] in <b4ef600f4a594fe2865a8f97f915fb9d>:0
  at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.Rethrow (Microsoft.AspNetCore.Mvc.Filters.ActionExecutedContext context) [0x0001b] in <b4ef600f4a594fe2865a8f97f915fb9d>:0
  at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.Next (Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker+State& next, Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker+Scope& scope, System.Object& state, System.Boolean& isCompleted) [0x00382] in <b4ef600f4a594fe2865a8f97f915fb9d>:0
  at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.InvokeInnerFilterAsync () [0x0002f] in <b4ef600f4a594fe2865a8f97f915fb9d>:0
  at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeNextResourceFilter () [0x0009f] in <b4ef600f4a594fe2865a8f97f915fb9d>:0
  at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.Rethrow (Microsoft.AspNetCore.Mvc.Filters.ResourceExecutedContext context) [0x0001b] in <b4ef600f4a594fe2865a8f97f915fb9d>:0
  at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.Next (Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker+State& next, Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker+Scope& scope, System.Object& state, System.Boolean& isCompleted) [0x00840] in <b4ef600f4a594fe2865a8f97f915fb9d>:0
  at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeFilterPipelineAsync () [0x0002f] in <b4ef600f4a594fe2865a8f97f915fb9d>:0
  at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeAsync () [0x0012e] in <b4ef600f4a594fe2865a8f97f915fb9d>:0
  at Microsoft.AspNetCore.Builder.RouterMiddleware.Invoke (Microsoft.AspNetCore.Http.HttpContext httpContext) [0x001cb] in <6092a16d93814eba828b517a2b132f80>:0
  at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke (Microsoft.AspNetCore.Http.HttpContext context) [0x00384] in <427697fe42b7459ba5302fb76d339d3b>:0
  at Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware.Invoke (Microsoft.AspNetCore.Http.HttpContext context) [0x0043e] in <f352e566abf6421e87eafbcf57a0b237>:0
  at Jackett.Server.Middleware.CustomExceptionHandler.Invoke (Microsoft.AspNetCore.Http.HttpContext httpContext) [0x0008a] in <d9cb217c33fa4cc9a9b8489469fe5189>:0
MartinRothschink commented 5 years ago

I see the same issue on a DS118 as @bjorn1981 with Lights-Out:

Error: SecureChannelFailure (Authentication failed, see inner exception.)

while trying to get data via HttpClient.

Version 5.8 was working without issues.

MartinRothschink commented 5 years ago

I can also offer to test new releases when available.

carnigg commented 5 years ago

+1 to the list DS418. Only seems to be affecting Radarr for me. Haven't tried uninstalling and downgrading everything as yet, major pain....

m4tt075 commented 5 years ago

OK, guys, first attempt to fix the issue: (1) Upgrading mono to latest stable (5.18.1.0): [Edit: Link removed, as it did not work] Any change?

MartinRothschink commented 5 years ago

Still the same issue on my DS118,.

carnigg commented 5 years ago

+1 same

ghost commented 5 years ago

What worked for me:

After some restarts and updating Radarr and Sonarr to the newest Version, everything works again without backup and restore.

kaso17 commented 5 years ago

@Kilay your mono version seems to be be simply incomplete System.DllNotFoundException: /volume1/@appstore/mono/lib/../lib/libmono-btls-shared.so

As far as jackett is concerned you might want to try the new ARM32/ARM64/AMD64 releases. They use .NETcore making mono obsolete. Many users also reported reduced memory usage compared to the mono version. But someone probably has to package it for Syno first.

m4tt075 commented 5 years ago

OK, thanks for testing and reporting. Second attempt, enforcing msc C# compiler instead of Roslyn. Inspired by some links @kaso17 kindly provided, here another aarch64 test build: https://github.com/m4tt075/spksrc/releases/tag/mono-vars-2b

carnigg commented 5 years ago

Version number is causing a problem, last fix was 5.18.1.0-12, so cant over right. Sorry to noobish to attempt to change version numbers.

Haunter000 commented 5 years ago

Hi m4tt075, I tried your latest test build at https://github.com/m4tt075/spksrc/releases/tag/mono-vars-2b, but I still get the same error message: Error: SecureChannelFailure (Authentication failed, see inner exception.)

If you need more data/logging, please let me know if I can support you with information.

--

System.Net.WebException: Error: SecureChannelFailure (Authentication failed, see inner exception.): 'https://api.nzbgeek.info/api?t=caps&apikey=(Removed:-))' ---> System.Net.WebException: Error: SecureChannelFailure (Authentication failed, see inner exception.) ---> System.Security.Authentication.AuthenticationException: Authentication failed, see inner exception. ---> Mono.Btls.MonoBtlsException: Ssl error:0f000078:elliptic curve routines:OPENSSL_internal:POINT_IS_NOT_ON_CURVE at /spksrc/spk/mono/work-aarch64-6.1/mono-5.18.0.240/external/boringssl/crypto/ec/ec.c:835 at Mono.Btls.MonoBtlsContext.ProcessHandshake () [0x00038] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0 at Mono.Net.Security.MobileAuthenticatedStream.ProcessHandshake (Mono.Net.Security.AsyncOperationStatus status, System.Boolean renegotiate) [0x000a1] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0 at (wrapper remoting-invoke-with-check) Mono.Net.Security.MobileAuthenticatedStream.ProcessHandshake(Mono.Net.Security.AsyncOperationStatus,bool) at Mono.Net.Security.AsyncHandshakeRequest.Run (Mono.Net.Security.AsyncOperationStatus status) [0x00006] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0 at Mono.Net.Security.AsyncProtocolRequest.ProcessOperation (System.Threading.CancellationToken cancellationToken) [0x000ff] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0 at Mono.Net.Security.AsyncProtocolRequest.StartOperation (System.Threading.CancellationToken cancellationToken) [0x0008b] in <63552ca6ec3f4cb28de3f8c0aa59b164>:0 --- End of inner exception stack trace ---

Kilay commented 5 years ago

@Kilay your mono version seems to be be simply incomplete System.DllNotFoundException: /volume1/@appstore/mono/lib/../lib/libmono-btls-shared.so

As far as jackett is concerned you might want to try the new ARM32/ARM64/AMD64 releases. They use .NETcore making mono obsolete. Many users also reported reduced memory usage compared to the mono version. But someone probably has to package it for Syno first.

Thank you @kaso17, I will try to uninstall/install Mono v5.18.0.240-12 again and see if I still have the issue. If yes, I will revert to previous version. Hope someone will work on a .NETcore Jackett package for Syno as I am not able to do it myself.

Komagain commented 5 years ago

Same problem here, ds 211+88f628x

m4tt075 commented 5 years ago

@Kilay @Komagain OK. I've pulled the ARM5 mono version from the repository as well. Right now, the only option is to downgrade mono again (see further above).

I'm actually not sure whether the aarch64 and the ARM5problems are related. Is there anybody here with either ARM platform (ARM5, ARM7 or ARM8), for whom the upgrades actually work?

For information, I'm currently setting up a new build system. I turned increasingly insane trying to debug mono on my old laptop. Hope to be more productive soon...

CraigInBrisbane commented 5 years ago

Thanks for the efforts. Very much appreciated.

BenjV commented 5 years ago

I have installed the latest versions of Mono en Sonarr on my test Nas (DS116 with an ARM7 cpu) and it is running without any problems.

m4tt075 commented 5 years ago

@CraigInBrisbane Thanks. I just hope it will eventually pay off... @BenjV Thanks. So not all ARMs are broken. Good, so maybe the problems are fixable.

A new test build for aarch64 is available here: https://github.com/m4tt075/spksrc/releases/tag/mono-vars-2c

m4tt075 commented 5 years ago

And another one (disabling the boehm garbage collector in the cross build): https://github.com/m4tt075/spksrc/releases/tag/mono-vars-2d

BenjV commented 5 years ago

@m4tt075 I suggest you stop putting effort in this issue. The Mono developers "resolved" this by stopping the support for ARM64 platform.

Mono is in my opinion "dead in the water" because Microsoft released ".net core" to the public domain and has bought Xamarin ( the Mono developers) so my money is on ".net core"

See: https://github.com/mono/mono/issues/8648

m4tt075 commented 5 years ago

@BenjV Wow. I wasn't aware Mono was sold. Hmh, in light of that, you might be right. From what @kaso17 wrote, an alternative for Jackett already exists. I just don't know about Radarr, Sonarr and Lidarr. Do you (or anybody) know about non-mono-dependent versions? Having said that, from some reports above, it seems they can be "tricked" into working with our old mono 5.8 version. I have not yet had the time to look into the ARM5 issues, but those could well be related to the outdated toolchain. @ymartin59 Not sure how familiar you are with mono and/or the issues here, but any perspectives / advice on this from your side?

BenjV commented 5 years ago

I think the problem is in the ARM64 architecture and not in the ArmV7 architecture. The armv7 is the 32 bits version and they should be compatible with eachother.

So I should suggest to just use the ArmV7 package for both.

MartinRothschink commented 5 years ago

@BenjV I see it the other way around. Since Microsoft bought Xamarin, Mono development got a big push and the developers can now access and use Microsoft .Net code in Mono.

Your link above does only explain that gcc is broken.

Just my 2 cent Martin

BenjV commented 5 years ago

There is of course no .net code in mono. .net is part of Windows and not multiplatform and Microsoft will for sure not put .net core in mono. And nobody can see in the future, but Microsoft is heavealy pushing .net core and they have a track record on buying things and let it bleed out.

bjorn1981 commented 5 years ago

No luck with the 2d build

Op di 2 apr. 2019 16:26 schreef m4tt075 notifications@github.com:

And another one (disabling the boehm garbage collector in the cross build): https://github.com/m4tt075/spksrc/releases/tag/mono-vars-2d

m4tt075 commented 5 years ago

@BenjV wrote:

So I should suggest to just use the ArmV7 package for both.

Do you mean to tweak the spk file of the ARM7 package so that it runs on ARM64 platforms, too?

BenjV commented 5 years ago

Correct, but it is possible that then also Sonarr (and Radarr) for the ArmV7 must be used, but that has to be tested by someone with this architecture.

There is no need for need for creating new packages. One can download the armada38x .spk, unpack it and add the architecture by changing the INFO file and packing it back into a .spk

In the INFO file change the line: arch="armada38x " into arch="armada38x rtd1296 armada37xx "

m4tt075 commented 5 years ago

Has anybody tried @BenjV 's advice above? If you haven't, please do...

CraigInBrisbane commented 5 years ago

I haven’t. So. Download the latest version of mono from somewhere. Right version? (Need to find right version to download) Unzip Edit an INFO file as above. Rezip and then rename .zip to .spk Install update using the spk file.

Does that sound right?

carnigg commented 5 years ago

yeah nah, turns out I have NFI how to repack a spk. If you can provide the spk I will give it a whirl

BenjV commented 5 years ago

Download the package from: https://synocommunity.com/package/mono (Choose 6.1 armada38x)

An .spk is not a zipfile but a tar so you need a program that can handle that . Best to us 7zip.

Edit the INFO file as I already explained. Best to do this with Notepad++ because the file has Unix style line-endings (LF) and not windows style line-endings(CRLF) Pack the changed files into a new .spk and do a manual install on your Nas.

CraigInBrisbane commented 5 years ago

I followed instructions. During manual install, I get “The package file is corrupt. .... Are you sure you want to continue”.

Note that I used Notepad++.

Is that expected? Maybe some checksum is wrong now due to the edit?

carnigg commented 5 years ago

Same, except 'invalid file format'

BenjV commented 5 years ago

Yes checksum is wrong. Remove the checksum from the INFO file (last line) to get around this.

CraigInBrisbane commented 5 years ago

Removed checksum. Same issue. NAS manual install reports corrupt file.