These are chat archives for IndySockets/Indy

17th
Oct 2017
DelphiWorlds
@DelphiWorlds
Oct 17 2017 10:55
ok.. now that I actually debugged properly, I've discovered that the second call to RecvFrom in TIdIPMCastListenerThread.Run never actually returns i.e. the thread hasn't actually frozen, or disappeared
DelphiWorlds
@DelphiWorlds
Oct 17 2017 11:03
traced it through to TIdStackWindows.RecvFrom, where the call to IdWinsock2.recvfrom never returns
DelphiWorlds
@DelphiWorlds
Oct 17 2017 11:10
ooooh... lovely. On macOS it does that on the first IP address
DelphiWorlds
@DelphiWorlds
Oct 17 2017 12:27
Good lord.. Apparently I need to create a server for each address as well?
DelphiWorlds
@DelphiWorlds
Oct 17 2017 12:36
ok.. so that idea appears to work on Windows.. but does not work on macOS :-(
DelphiWorlds
@DelphiWorlds
Oct 17 2017 12:50
this is what I ended up doing:
  1. Create a binding for each local IP address in the TIdIPMCastClient
  2. Create a separate instance of TIdIPMCastServer for each local IP address
  3. Send the same data on each instance of TIdIPMCastServer
I have 2 Windows VMs, each with bridged networking so they have their own IP address, running the same application, and all works OK
DelphiWorlds
@DelphiWorlds
Oct 17 2017 13:01
I compile the same app for macOS, and the Windows VM receives the messages from the macOS app, but the macOS app does not receive anything (RecvFrom never returns)
Remy Lebeau
@rlebeau
Oct 17 2017 17:25
@DelphiWorlds For receiving, did you try binding the client with a single Binding to 0.0.0.0, instead of multiple Bindings to each local IP specifically? For sending, you do need to bind the sender to a specific IP/interface, so it makes sense to use multiple servers if you need to send out to multiple networks.
Matthijs ter Woord
@mterwoord
Oct 17 2017 17:27
any firewall involved on the mac machine?
DelphiWorlds
@DelphiWorlds
Oct 17 2017 20:20
well this is bizarre.. I swear last night that binding to 0.0.0.0 was not working.. now it is
on macOS, that is
but it does not work on Windows
DelphiWorlds
@DelphiWorlds
Oct 17 2017 20:34
it's a shame that the server supports only one binding