philippe44 / AirConnect

Use AirPlay to stream to UPnP/Sonos & Chromecast devices
Other
3.43k stars 216 forks source link

airupnp 1.0 failed #433

Closed lprimak closed 1 year ago

lprimak commented 1 year ago

Hi,

Just tried to run the new version, but t failed (previous version succeeded)

software@nova bin % ./airupnp-macos-x86_64-1.0
[02:29:02.763752] main:1357 Starting airupnp version: v1.0.0 (Oct 25 2022 @ 23:29:40)
[02:29:02.764672] main:1365 no config file, using defaults
[02:29:02.765414] Start:1082 UPnP init failed: -205
[02:29:02.765428] main:1397 Cannot start
philippe44 commented 1 year ago

Which macOS version?

lprimak commented 1 year ago

Ventura. The brand new one.

philippe44 commented 1 year ago

This error means the UPnP stack was not able to open a network socket. So you're 100% sure previous version on same is worked and without any firewall / runtime right set ? I'm asking that especially because name of the app has changed

lprimak commented 1 year ago

100%.

Old:

software@nova bin % ./airupnp-osx-multi
[16:20:20.094020] main:1420 Starting airupnp version: v0.2.51.2 (Nov  1 2021 @ 23:33:23)
[16:20:20.094928] main:1428 no config file, using defaults
[16:20:20.095630] Start:1130 Binding to 10.0.1.210:49153
[16:20:20.596821] AddMRDevice:1008 [0x7ff288008000]: adding renderer (Living Room)

New

software@nova bin % new/airupnp-osx-multi 
[16:20:36.136252] main:1357 Starting airupnp version: v1.0.0 (Oct 25 2022 @ 23:29:40)
[16:20:36.136756] main:1365 no config file, using defaults
[16:20:36.137273] Start:1082 UPnP init failed: -205
[16:20:36.137282] main:1397 Cannot start
software@nova bin % 
philippe44 commented 1 year ago

I pushed an updated version (not tagged, need to get it directly) that might tell me a bit more of what's happening

lprimak commented 1 year ago

Here's the output of the new version:

admin@nova new % ./airupnp-macos-x86_64 
[22:34:45.607397] main:1357 Starting airupnp version: v1.0.0 (Oct 26 2022 @ 16:26:15)
[22:34:45.608316] main:1365 no config file, using defaults
[22:34:45.609126] Start:1082 UPnP init in 10.0.1.210 () failed: -205
[22:34:45.609139] main:1397 Cannot start
pheiduck commented 1 year ago

My Install Script works now again: https://github.com/pheiduck/rpi_configs/blob/main/airconnect_installer.sh Feel free to improve it and try it out on your Raspberry Pis ✌️

dpo commented 1 year ago

Same error as @lprimak but on macOS Monterey 12.6.

philippe44 commented 1 year ago

Did you try the -static version, out of curiosity? I don't think it will work, though

lprimak commented 1 year ago

I can try

lprimak commented 1 year ago

No luck. Sorry

philippe44 commented 1 year ago

Can you try updated version? I've disabled IPv6 which might have been the issue

philippe44 commented 1 year ago

My Install Script works now again: https://github.com/pheiduck/rpi_configs/blob/main/airconnect_installer.sh Feel free to improve it and try it out on your Raspberry Pis ✌️

Sorry for the difficulties caused by the changes I've made, including in application names, but I really needed more consistent logic

lprimak commented 1 year ago
% ./airupnp-macos-arm64
[01:43:14.173999] main:1355 Starting airupnp version: v1.0.6 (Nov  2 2022 @ 16:53:56)
[01:43:14.174290] main:1363 no config file, using defaults
[01:43:14.174717] Start:1087 Binding to 10.0.1.210:0
WARNING: /Users/software/apps/audiobridge/bin/new/airupnp-macos-arm64 is loading libcrypto in an unsafe way
zsh: abort      ./airupnp-macos-arm64
% ./airupnp-macos-arm64-static 
[01:43:54.639746] main:1355 Starting airupnp version: v1.0.6 (Nov  2 2022 @ 16:53:56)
[01:43:54.640117] main:1363 no config file, using defaults
[01:43:54.640601] Start:1087 Binding to 10.0.1.210:0

(hangs forever without connecting)

Sorry still no go :( Thanks for all your help so far!

philippe44 commented 1 year ago

Some progress (hope you have noted these are arm version 😃). Do you have the name and version of your crypto libraries (libcrypto and libssl) ?

lprimak commented 1 year ago

Some progress (hope you have noted these are arm version

Yes I have, thank you!

name and version of your crypto librarie

They are the ones that ship with MacOS I would assume. I do have Homebrew openssl installed but I don't think that's the cause

philippe44 commented 1 year ago

Indeed, the version of openssl has been identified as the cause on other project. You now must explicitly name the version you want to load, otherwise MacOS exit with that error, when you just request a generic name (it was a warning before Monterey I think)

lprimak commented 1 year ago

I am not sure I understand... I have no issue running any other programs except Airupnp without any special configuration...

philippe44 commented 1 year ago

I'm not saying there is anything wrong at all with your configuration. It's just like airupnp, like a few other applications, has an unusual (but correct) way to load openssl library (this is because such applications run on a lot of different OS). So there is a new "security" feature in MacOS that is picky about the name these apps use when the request the system to load such libraries. Other systems have link that allow devs to use generic names, but apple not anymore.

philippe44 commented 1 year ago

The static version worked for me on Monterey x86_64. What do you see when you launch with full debug: "-d all=sdebug"

lprimak commented 1 year ago

I get no additional messages:

software@nova new % ./airupnp-macos-arm64-static -d all=sdebug
[12:48:22.466923] main:1355 Starting airupnp version: v1.0.6 (Nov  2 2022 @ 16:53:56)
[12:48:22.468291] main:1363 no config file, using defaults
[12:48:22.469123] Start:1087 Binding to 10.0.1.210:0
<hanging> - Ctrl-C
^C[12:48:38.651484] Stop:1143 terminate update thread ...
[12:48:38.651627] Stop:1148 flush renderers ...
[12:48:38.651654] Stop:1151 terminate libupnp
[12:48:39.163746] Stop:1170 terminate main thread ...
philippe44 commented 1 year ago

So it's weird. I'd need to get more "Ventura" feedback

Jem706 commented 1 year ago

I get the same issues on Ventura 13.0 as well arm64-static ➔ arm64 ➔ "loading libcrypto in an unsafe way"

philippe44 commented 1 year ago

You mean the -static version complained about libcrypto loading? That would be very surprising as -static does not load libraries

Jem706 commented 1 year ago

No sorry — I received the same response as Iprimak. arm64-static ➔ [no response] arm64 ➔ "loading libcrypto in an unsafe way"

philippe44 commented 1 year ago

For curiosity, can you rename one version with the name used for the previous one (I think I used airupnp-osx

Jem706 commented 1 year ago

Still happening:

"[11:02:00.682735] main:1355 Starting airupnp version: v1.0.9 (Nov 5 2022 @ 22:48:21) [11:02:00.683219] main:1362 no config file, using defaults [11:02:00.683548] Start:1087 Binding to 10.45.19.8:0 WARNING: /Users/jmalin/Applications/airconnect/bin/airupnp-osx is loading libcrypto in an unsafe way zsh: abort /Users/jmalin/Applications/airconnect/bin/airupnp-osx

Saving session... ...copying shared history... ...saving history...truncating history files... ...completed.

[Process completed]"

philippe44 commented 1 year ago

No sorry I was thinking more about the static version. For the unsafe load, please have a look at the README, I provided a solution

emreavsar commented 1 year ago

is there any update here or will ventura just not be supported? 😢

philippe44 commented 1 year ago

is there any update here or will ventura just not be supported? 😢

I'd love to but I can't get Ventura to work in a VM (I have Monterey and it works fine)

philippe44 commented 1 year ago

Following-up on the "nothing is detected" problem: on a multi-homed configuration, you likely have to use the -b parameter and set the interface name (like the one given by ifconfig), not the IP address.

philippe44 commented 1 year ago

Closed for inactivity

lprimak commented 1 year ago

I was able to get it to work with 1.0.17 (static or non-static) with non-static, I was able to get it to work by using the following environment variable: DYLD_LIBRARY_PATH=/opt/homebrew/opt/openssl@1.1/lib and either export it or run airupnp on the same command line