diff --git a/cmd/synergyc/synergyc.cpp b/cmd/synergyc/synergyc.cpp index c214034c..2b548be8 100644 --- a/cmd/synergyc/synergyc.cpp +++ b/cmd/synergyc/synergyc.cpp @@ -694,11 +694,18 @@ parse(int argc, const char* const* argv) // save server address try { *ARG->m_serverAddress = CNetworkAddress(argv[i], kDefaultPort); + ARG->m_serverAddress->resolve(); } catch (XSocketAddress& e) { - LOG((CLOG_PRINT "%s: %s" BYE, + // allow an address that we can't look up if we're restartable. + // we'll try to resolve the address each time we connect to the + // server. a bad port will never get better. patch by Brent + // Priddy. + if (!ARG->m_restartable || e.getError() == XSocketAddress::kBadPort) { + LOG((CLOG_PRINT "%s: %s" BYE, ARG->m_pname, e.what(), ARG->m_pname)); - bye(kExitFailed); + bye(kExitFailed); + } } // increase default filter level for daemon. the user must diff --git a/cmd/synergys/synergys.cpp b/cmd/synergys/synergys.cpp index 7f40264f..a8530dec 100644 --- a/cmd/synergys/synergys.cpp +++ b/cmd/synergys/synergys.cpp @@ -744,6 +744,7 @@ parse(int argc, const char* const* argv) try { *ARG->m_synergyAddress = CNetworkAddress(argv[i + 1], kDefaultPort); + ARG->m_synergyAddress->resolve(); } catch (XSocketAddress& e) { LOG((CLOG_PRINT "%s: %s" BYE, diff --git a/doc/authors.html b/doc/authors.html index f96dfcfd..f908c0bf 100644 --- a/doc/authors.html +++ b/doc/authors.html @@ -28,6 +28,10 @@