Local host option for InterprocessConnectionServer


#1

I’ve started to use the InterprocessConnectionServer and I find it a bit annoying that I have to allow my app through Windows’ firewall even though I only want to use a local connection.

Would it be possible to add an option so that the InterprocessConnectionServer can be configured to only listen to the local host interface? It would be highly appreciated as there’s no need to allow an app through the firewall when local host is used.


#2

InterprocessConnection can use either a pipe or a socket, so there’d be no firewall problems with a pipe, right?


#3

Yes, but I have multiple clients attaching to a server and then it’s convenient to use the InterprocessConnectionServer to create new connections.

Ideally I’d want to be able to pass a local host address into the beginWaitingForSocket method. I did a local patch where I updated it like this:

beginWaitingForSocket (const int portNumber, const String& localHostName = String())
{
    stop();

    socket = new StreamingSocket();

    if (socket->createListener (portNumber, localHostName))
    {
        startThread();
        return true;
    }

    socket = nullptr;
    return false;
}

#4

+1 for this request

Very useful when the socket server is intended only for clients running on the same machine. Nice to get rid of the windows firewall popup.


#5

Thanks for the suggestion. I’ve added this feature on the latest develop tip.