Browse Source

Added a function to the InterprocessConnectionServer class to get the bound port number

tags/2021-05-28
tpoole 8 years ago
parent
commit
ff6d01bc25
3 changed files with 16 additions and 2 deletions
  1. +2
    -1
      modules/juce_core/network/juce_Socket.h
  2. +5
    -0
      modules/juce_events/interprocess/juce_InterprocessConnectionServer.cpp
  3. +9
    -1
      modules/juce_events/interprocess/juce_InterprocessConnectionServer.h

+ 2
- 1
modules/juce_core/network/juce_Socket.h View File

@@ -74,7 +74,8 @@ public:
This is useful if you need to know to which port the OS has actually bound your
socket when calling the constructor or bindToPort with zero as the
localPortNumber argument. Returns -1 if the function fails. */
localPortNumber argument. Returns -1 if the function fails.
*/
int getBoundPort() const noexcept;
/** Tries to connect the socket to hostname:port.


+ 5
- 0
modules/juce_events/interprocess/juce_InterprocessConnectionServer.cpp View File

@@ -58,6 +58,11 @@ void InterprocessConnectionServer::stop()
socket = nullptr;
}
int InterprocessConnectionServer::getBoundPort() const noexcept
{
return (socket == nullptr) ? -1 : socket->getBoundPort();
}
void InterprocessConnectionServer::run()
{
while ((! threadShouldExit()) && socket != nullptr)


+ 9
- 1
modules/juce_events/interprocess/juce_InterprocessConnectionServer.h View File

@@ -71,6 +71,15 @@ public:
*/
void stop();
/** Returns the local port number to which this server is currently bound.
This is useful if you need to know to which port the OS has actually bound your
socket when calling beginWaitingForSocket with a port number of zero.
Returns -1 if the function fails.
*/
int getBoundPort() const noexcept;
protected:
/** Creates a suitable connection object for a client process that wants to
connect to this one.
@@ -83,7 +92,6 @@ protected:
*/
virtual InterprocessConnection* createConnectionObject() = 0;
private:
//==============================================================================
ScopedPointer<StreamingSocket> socket;


Loading…
Cancel
Save