Server.callWithGET broken on Mac compiled plugins
-
@d-healey yep VST and AU don't call out to a server on Mac.
-
@d-healey tried using https and had the same issue on Mac across all my DAWs vst/au.
Is anybody else with a Mac machine available to test this out.
Cheers
HiseSnippet 1188.3ocsVssaZbDFdVr2VCoD0H0GfQb0hjKr333XEqpRMFmfpOfBNIUpJIZX2AXr2cF5LC1lZ4a5KPek5iReD588h1+YOSMt0AotHg1+ye+G1+Y5KEdTkRHQVkOa9TJx5KrGLmqmzYBgwQ8N.Y8X6iIJMUhiYs+7oDkh5irrV6kFFVkWGE87Ge69j.B2ilyBgdqf4QOhExz4b6296YAAGR7omwBKn81s64I3cDAhY.dVy1EMk3cAYL8DhQsR1HqOqqOSKjCzDMUA5ruve9fIhq3w5+VlhMLfZHZgF.NJlMpyDVfe+zbUgPVq2OOyWKNy+J6iY9rL94UfuLR.N2hh0.qRKBo0W.RstOHcnHv23f6AdVEf25wv6I1C7jro5bIFr8H6dbn4Lh.k8hvJVWTo+bM6NBPCttQH4B5gRfHyBmcbc2D+LW256Ush4GT9UZ7kDId.UdIUdFEH+FbpGFS0cDgSEbfvoVtJ0L1ma6QjgzfV2qcwhqkFSyulMSBHtCIHvvIlrghp2mnnu40G4TahVOU8hlMu5pqZDR8YjQLIsgmHrYhuX7.FmhGMi6oYBNVvygnAJRQfiWJN1DfZvLZ8pUtoZEL7D+eDRz3.CFwZAdHLQeA3Ibff3aBRL5M.yolldst1l3ZIwuLajSrSuIye3jDqgGjXuiom7xtm4Tq4HV.s4P4EO+mF68zc2Z1tmuy1MeESQyQbiyUBdj22LKkbTvT1L0lXIUAoghVOKL2jGQyijNFeMzBRUbuhBghgRDPaLUxfFx0+Xq2WeA4ya.wQpMecJc1xMd9HU3s02CiKadqB7+sUqbaTx+eOiXpYIsASWdH7ssyRZQoyEPmHB.ltPDPyxECmnFzhirygzsKeLLBzvSRguFiL+zgmS8zNFuN2ffHlYwOqvlOGrjFbwJjo1HlFWZpuWEnZTXd6DgldJ3rJ2Tobkaqf+mhFMZoxRx7.iKWh3jfc+F5vmENjJSGoSUDVcr3toG8v1M4E2JKnnf2iyzmNklPmu8xHKNqSk5hxR1hrxywhbiaQ2UsbV2c4HJYTyrlLQcPUczRxGmrjb+YZsfiX9QGnkMhghJPEOeB8ldGPzjTeAtEB0TpTyLELqCnWBmeEu.tr8AT0EPyGhV1HNxZi3HWMIxQiOQAdC63QIz04Arc64YD+Ns8ULe8DjkskqEBMgxFOQan9UPpYzyjOuihORbIE+pdC5hFAPb.6mKjAunMp.VreXUgb.098E.zu8g1L0whPvUDIv1pzR788lmaYbqsEzVPyMu7KVoIwmaGs5FN3+NGpAGsJ7mEPzKddq4hEIBfA8ENXyb3EWwzyKdwiOgCgcW5gvsV1b1CDtOwtOS6MY43szRvKLr8+MdStRSU6tiFAq+xA651G9Cq58W9DfxqEyzL93iIZIyLVbxrvAvs57n.R3bZfxLgTx7sbLsqg1TYFP49QD+E7jHrkg1JQXqTgnPhmT7Qu3M.lKMsQDG.S7n6KVFt3JPiak9UussaCWTHbWtO54YJEeMf8kayVqfMOcErY6UvlmsB1ryJXyyWAa18e0Fy0n+tYZQX7mI.i9ci19ZY0kSfornIRzeiQY9VE
-
Same issue with Standalone?
-
@d-healey yep same issue with standalone on a mac
-
@LeeC said in Server.callWithGET broken on Mac compiled plugins:
@d-healey yep same issue with standalone on a mac
Debug the standalone in xcode and see what the server response is (if any).
-
@d-healey will have to look into how to do this to be honest.
If anybody else get a chance to check this snippet it would be appreciated.HiseSnippet 1188.3ocsVssaZbDFdVr2VCoD0H0GfQb0hjKr333XEqpRMFmfpOfBNIUpJIZX2AXr2cF5LC1lZ4a5KPek5iReD588h1+YOSMt0AotHg1+ye+G1+Y5KEdTkRHQVkOa9TJx5KrGLmqmzYBgwQ8N.Y8X6iIJMUhiYs+7oDkh5irrV6kFFVkWGE87Ge69j.B2ilyBgdqf4QOhExz4b6296YAAGR7omwBKn81s64I3cDAhY.dVy1EMk3cAYL8DhQsR1HqOqqOSKjCzDMUA5ruve9fIhq3w5+VlhMLfZHZgF.NJlMpyDVfe+zbUgPVq2OOyWKNy+J6iY9rL94UfuLR.N2hh0.qRKBo0W.RstOHcnHv23f6AdVEf25wv6I1C7jro5bIFr8H6dbn4Lh.k8hvJVWTo+bM6NBPCttQH4B5gRfHyBmcbc2D+LW256Ush4GT9UZ7kDId.UdIUdFEH+FbpGFS0cDgSEbfvoVtJ0L1ma6QjgzfV2qcwhqkFSyulMSBHtCIHvvIlrghp2mnnu40G4TahVOU8hlMu5pqZDR8YjQLIsgmHrYhuX7.FmhGMi6oYBNVvygnAJRQfiWJN1DfZvLZ8pUtoZEL7D+eDRz3.CFwZAdHLQeA3Ibff3aBRL5M.yolldst1l3ZIwuLajSrSuIye3jDqgGjXuiom7xtm4Tq4HV.s4P4EO+mF68zc2Z1tmuy1MeESQyQbiyUBdj22LKkbTvT1L0lXIUAoghVOKL2jGQyijNFeMzBRUbuhBghgRDPaLUxfFx0+Xq2WeA4ya.wQpMecJc1xMd9HU3s02CiKadqB7+sUqbaTx+eOiXpYIsASWdH7ssyRZQoyEPmHB.ltPDPyxECmnFzhirygzsKeLLBzvSRguFiL+zgmS8zNFuN2ffHlYwOqvlOGrjFbwJjo1HlFWZpuWEnZTXd6DgldJ3rJ2Tobkaqf+mhFMZoxRx7.iKWh3jfc+F5vmENjJSGoSUDVcr3toG8v1M4E2JKnnf2iyzmNklPmu8xHKNqSk5hxR1hrxywhbiaQ2UsbV2c4HJYTyrlLQcPUczRxGmrjb+YZsfiX9QGnkMhghJPEOeB8ldGPzjTeAtEB0TpTyLELqCnWBmeEu.tr8AT0EPyGhV1HNxZi3HWMIxQiOQAdC63QIz04Arc64YD+Ns8ULe8DjkskqEBMgxFOQan9UPpYzyjOuihORbIE+pdC5hFAPb.6mKjAunMp.VreXUgb.098E.zu8g1L0whPvUDIv1pzR788lmaYbqsEzVPyMu7KVoIwmaGs5FN3+NGpAGsJ7mEPzKddq4hEIBfA8ENXyb3EWwzyKdwiOgCgcW5gvsV1b1CDtOwtOS6MY43szRvKLr8+MdStRSU6tiFAq+xA651G9Cq58W9DfxqEyzL93iIZIyLVbxrvAvs57n.R3bZfxLgTx7sbLsqg1TYFP49QD+E7jHrkg1JQXqTgnPhmT7Qu3M.lKMsQDG.S7n6KVFt3JPiak9UussaCWTHbWtO54YJEeMf8kayVqfMOcErY6UvlmsB1ryJXyyWAa18e0Fy0n+tYZQX7mI.i9ci19ZY0kSfornIRzeiQY9VE
-
Open the projucer file create by HISE, go to file >> save and open in IDE. In xcode select build >> for running. This will create a debug build and once it's finished it should automatically launch the app and the debugger.
-
@d-healey yeah works fine using the debugged build.
So is thinking that this an issue that I should raise as a bug?
I was really hoping that somebody else could check this real quick just incase there's something going on with configuration.
-
yeah works fine using the debugged build.
I wasn't expecting that... try a debug build of the VST and see if that works. If it does then something in the optimisation must be breaking it which seems weird.
-
yeah works fine using the debugged build.
I wasn't expecting that... try a debug build of the VST and see if that works. If it does then something in the optimisation must be breaking it which seems weird.
@d-healey yep same thing with the debug build of the VST/AU on mac. Really appreciate you guiding me through the troubleshooting on this... Not sure what else to try here.
-
In Projucer, try different options in the Debug section, do it one option at a time, until it breaks like the release version. It might take a while, it's a brute force method to try and find the cause.
-
@LeeC I tested in Logic Pro X, works!
Reaper v.5.9, both AUi and VST3 fails, I didn't compile any VST2 version
DSP-Quatro v.5.6, AUi worksI'm on Mac OS 10.14.6
-
@ulrik Ableton Live 10, both AUi & VST3 fails
-
@ulrik thanks for testing on your system.
It looks like we may have a problem and we might need to call Mr Hart!I know a few people are planning on adding server functionality to their released plugins for
Authentication, upgrades and other things so this seems important I think.What version of Logic Pro X did you check it on by the way?
-
Before I go into debugging this (which sounds annoying because it only happens in an optimised build if I understand this right), you might try a better test example that logs the response so you see what's happening
function logResponseCallback(status, obj) { obj.StatusCode = status; FileSystem.getFolder(FileSystem.Desktop).getChildFile("log.txt").writeObject(obj); }
-
@Christoph-Hart sure I'll give this a try but from monitoring outbound traffic on my Mac, it appears that no calls are being made from the compiled plugin.
ie. Nothing gets to the server in order to get backobj.StatusCode= status;
I'll try it out and see.
-
In this case you'll get a 404 response after the server timeout (I think it's 20 seconds by default). So just to recap:
- only macOS
- only compiled plugin - inside HISE it works
- only VST / AU plugins in any host
- only the release build
Because that's kind of the most annoying debug setup, like take the worst option from all of those and combine in into a debugging hell...
-
@Christoph-Hart yeah you're recap is spot on!
Sorry for adding this to your work load mate, I'll keep trying things my side to see if I can help get to the root cause.
Strange!
-
@LeeC I use Logic Pro X v.10.5.1
-
OK it fails here too, however it's nothing in the HISE code that's wrong - I am passing this through to the system URL calls. No idea why it works in HISE then.
If I look at the macOS system console I can see this output:
standard 10:39:01.700160 +0100 Demo Project 27366555: RECEIVED OUT-OF-SEQUENCE NOTIFICATION: 139 vs 180, 512, <private> standard 10:39:01.706930 +0100 Demo Project Task <8E5DEF9F-CA4D-4A51-8321-2C8ECE6A798D>.<0> {strength 1, tls 8, ct 0, sub 0, sig 0, ciphers 1, bundle 0, builtin 0} standard 10:39:01.707067 +0100 Demo Project TIC Enabling TLS [3:0x60000072d5c0] standard 10:39:01.707106 +0100 Demo Project TIC TCP Conn Start [3:0x60000072d5c0] standard 10:39:01.707191 +0100 Demo Project [C3 Hostname#d7b4c9cf:443 tcp, url hash: 1c409223, tls] start standard 10:39:01.707545 +0100 Demo Project nw_connection_report_state_with_handler_locked [C3] reporting state preparing standard 10:39:01.708224 +0100 Demo Project Task <8E5DEF9F-CA4D-4A51-8321-2C8ECE6A798D>.<0> setting up Connection 3 standard 10:39:01.755940 +0100 Demo Project nw_socket_handle_socket_event [C3.1:3] Socket received CONNECTED event standard 10:39:01.756014 +0100 Demo Project nw_endpoint_flow_protocol_connected [C3.1 IPv4#9956bdef:443 in_progress socket-flow (satisfied)] Transport protocol connected standard 10:39:01.757153 +0100 Demo Project TIC TLS Event [3:0x60000072d5c0]: 1, Pending(0) standard 10:39:01.792222 +0100 Demo Project TIC TLS Event [3:0x60000072d5c0]: 11, Pending(0) standard 10:39:01.792276 +0100 Demo Project TIC TLS Event [3:0x60000072d5c0]: 14, Pending(0) standard 10:39:01.803606 +0100 Demo Project System Trust Evaluation yielded status(0) standard 10:39:01.807335 +0100 Demo Project TIC TLS Trust Result [3:0x60000072d5c0]: 0 standard 10:39:01.807798 +0100 Demo Project TIC TLS Event [3:0x60000072d5c0]: 2, Pending(0) standard 10:39:01.832974 +0100 Demo Project nw_endpoint_flow_protocol_connected [C3.1 IPv4#9956bdef:443 in_progress socket-flow (satisfied)] Output protocol connected standard 10:39:01.833040 +0100 Demo Project nw_connection_report_state_with_handler_locked [C3] reporting state ready standard 10:39:01.833202 +0100 Demo Project TIC TLS Event [3:0x60000072d5c0]: 20, Pending(0) standard 10:39:01.833302 +0100 Demo Project TIC TCP Conn Connected [3:0x60000072d5c0]: Err(16) standard 10:39:01.833488 +0100 Demo Project TIC TCP Conn Event [3:0x60000072d5c0]: 1 standard 10:39:01.833504 +0100 Demo Project TIC TCP Conn Event [3:0x60000072d5c0]: 8 standard 10:39:01.833577 +0100 Demo Project TIC TLS Handshake Complete [3:0x60000072d5c0] standard 10:39:01.833684 +0100 Demo Project Task <8E5DEF9F-CA4D-4A51-8321-2C8ECE6A798D>.<0> now using Connection 3 standard 10:39:01.833853 +0100 Demo Project nw_endpoint_flow_protocol_connected [C3.1 IPv4#9956bdef:443 ready socket-flow (satisfied)] Output protocol connected standard 10:39:01.833940 +0100 Demo Project Task <8E5DEF9F-CA4D-4A51-8321-2C8ECE6A798D>.<0> sent request, body N standard 10:39:02.456669 +0100 Demo Project Task <8E5DEF9F-CA4D-4A51-8321-2C8ECE6A798D>.<0> received response, status 302 content C standard 10:39:02.457511 +0100 Demo Project Task <8E5DEF9F-CA4D-4A51-8321-2C8ECE6A798D>.<0> response ended standard 10:39:02.457551 +0100 Demo Project Task <8E5DEF9F-CA4D-4A51-8321-2C8ECE6A798D>.<0> done using Connection 3 standard 10:39:02.458344 +0100 Demo Project Task <8E5DEF9F-CA4D-4A51-8321-2C8ECE6A798D>.<0> {strength 1, tls 8, ct 0, sub 0, sig 0, ciphers 1, bundle 0, builtin 0} standard 10:39:02.458458 +0100 Demo Project TIC Enabling TLS [4:0x600000718f00] standard 10:39:02.458483 +0100 Demo Project TIC TCP Conn Start [4:0x600000718f00] standard 10:39:02.458548 +0100 Demo Project [C4 Hostname#0aed465d:443 tcp, url hash: 1d02324f, tls] start standard 10:39:02.458844 +0100 Demo Project nw_connection_report_state_with_handler_locked [C4] reporting state preparing standard 10:39:02.459336 +0100 Demo Project Task <8E5DEF9F-CA4D-4A51-8321-2C8ECE6A798D>.<0> setting up Connection 4 standard 10:39:02.605609 +0100 Demo Project nw_socket_handle_socket_event [C4.1:3] Socket received CONNECTED event standard 10:39:02.605679 +0100 Demo Project nw_endpoint_flow_protocol_connected [C4.1 IPv4#0ce3758c:443 in_progress socket-flow (satisfied)] Transport protocol connected standard 10:39:02.606580 +0100 Demo Project TIC TLS Event [4:0x600000718f00]: 1, Pending(0) fehler 10:39:02.785101 +0100 Demo Project boringssl_context_alert_callback_handler(3817) <private>[0x7fc65c5045d0] Alert level: fatal, description: handshake failure fehler 10:39:02.785165 +0100 Demo Project boringssl_session_errorlog(224) <private>[0x7fc65c5045d0] [boringssl_session_handshake_incomplete] SSL_ERROR_SSL(1): operation failed within the library fehler 10:39:02.785196 +0100 Demo Project boringssl_session_handshake_error_print(205) <private>[0x7fc65c5045d0] <private> fehler 10:39:02.785225 +0100 Demo Project boringssl_session_handshake_error_print(205) <private>[0x7fc65c5045d0] <private> fehler 10:39:02.785250 +0100 Demo Project boringssl_context_get_error_code(3638) <private>[0x7fc65c5045d0] SSL_AD_HANDSHAKE_FAILURE standard 10:39:02.786954 +0100 Demo Project nw_endpoint_flow_protocol_disconnected [C4.1 IPv4#0ce3758c:443 in_progress socket-flow (satisfied)] Output protocol disconnected standard 10:39:02.787012 +0100 Demo Project nw_socket_handle_socket_event [C4.1:3] Socket received READ_CLOSE event standard 10:39:02.787312 +0100 Demo Project nw_connection_report_state_with_handler_locked [C4] reporting state failed error handshake failure standard 10:39:02.787487 +0100 Demo Project TIC TCP Conn Event [4:0x600000718f00]: 3 fehler 10:39:02.787591 +0100 Demo Project TIC TCP Conn Failed [4:0x600000718f00]: 3:-9824 Err(-9824) standard 10:39:02.787669 +0100 Demo Project TIC TCP Conn Cancel [4:0x600000718f00] standard 10:39:02.787839 +0100 Demo Project [C4 Hostname#0aed465d:443 tcp, url hash: 1d02324f, tls] cancel standard 10:39:02.787977 +0100 Demo Project [C4 Hostname#0aed465d:443 tcp, url hash: 1d02324f, tls] cancelled standard 10:39:02.788054 +0100 Demo Project 0.000s [C4 <private> Hostname#0aed465d:443 resolver] path:start standard 10:39:02.788118 +0100 Demo Project 0.000s [C4 <private> Hostname#0aed465d:443 resolver] path:satisfied standard 10:39:02.788196 +0100 Demo Project 0.000s [C4 <private> Hostname#0aed465d:443 resolver] resolver:start_dns standard 10:39:02.788258 +0100 Demo Project 0.007s [C4 <private> Hostname#0aed465d:443 resolver] resolver:receive_dns standard 10:39:02.788341 +0100 Demo Project 0.007s [C4.1 <private> 192.168.178.16:49477<->IPv4#0ce3758c:443 socket-flow] path:start standard 10:39:02.788406 +0100 Demo Project 0.007s [C4.1 <private> 192.168.178.16:49477<->IPv4#0ce3758c:443 socket-flow] path:satisfied standard 10:39:02.788443 +0100 Demo Project 0.009s [C4.1 <private> 192.168.178.16:49477<->IPv4#0ce3758c:443 socket-flow] flow:start_connect standard 10:39:02.788484 +0100 Demo Project 0.147s [C4.1 <private> 192.168.178.16:49477<->IPv4#0ce3758c:443 socket-flow] flow:finish_transport standard 10:39:02.788536 +0100 Demo Project 0.147s [C4 <private> Hostname#0aed465d:443 resolver] flow:finish_transport standard 10:39:02.788646 +0100 Demo Project 0.328s [C4.1 <private> 192.168.178.16:49477<->IPv4#0ce3758c:443 socket-flow] flow:failed_connect handshake failure standard 10:39:02.788719 +0100 Demo Project 0.328s [C4 <private> Hostname#0aed465d:443 resolver] flow:failed_connect standard 10:39:02.788761 +0100 Demo Project 0.329s [C4] path:cancel standard 10:39:02.789105 +0100 Demo Project nw_connection_report_state_with_handler_locked [C4] reporting state cancelled error handshake failure standard 10:39:02.789208 +0100 Demo Project TIC TCP Conn Destroyed [4:0x600000718f00] standard 10:39:02.789259 +0100 Demo Project NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9824) fehler 10:39:02.789287 +0100 Demo Project Task <8E5DEF9F-CA4D-4A51-8321-2C8ECE6A798D>.<0> HTTP load failed (error code: -1200 [3:-9824]) fehler 10:39:02.789317 +0100 Demo Project NSURLConnection finished with error - code -1200 standard 10:39:32.823794 +0100 Demo Project TIC TCP Conn Cancel [3:0x60000072d5c0] standard 10:39:32.823847 +0100 Demo Project [C3 Hostname#d7b4c9cf:443 tcp, url hash: 1c409223, tls] cancel standard 10:39:32.823912 +0100 Demo Project [C3 Hostname#d7b4c9cf:443 tcp, url hash: 1c409223, tls] cancelled
There's a lot of things to check, but something that catches my eye is the HTTP status 302, and the
SSL_HANDSHAKE_FAILED
errors at the end. Have you tried another domain? I can imagine that the filehoster does a lot of redirecting and somehow this messes up with the system.