diff options
Diffstat (limited to 'src')
| -rwxr-xr-x | src/server/worldserver/RemoteAccess/RASocket.cpp | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/src/server/worldserver/RemoteAccess/RASocket.cpp b/src/server/worldserver/RemoteAccess/RASocket.cpp index c813c2497f1..3268428d5de 100755 --- a/src/server/worldserver/RemoteAccess/RASocket.cpp +++ b/src/server/worldserver/RemoteAccess/RASocket.cpp @@ -276,8 +276,9 @@ int RASocket::subnegotiate() const size_t recv_size = message_block.space(); + // Wait a maximum of 1000ms for negotiation packet - not all telnet clients may send it const ssize_t n = peer().recv(message_block.wr_ptr(), - recv_size); + recv_size, &ACE_Time_Value(1)); if (n <= 0) return int(n); @@ -331,11 +332,8 @@ int RASocket::subnegotiate() int RASocket::svc(void) { - if (subnegotiate() == -1) - { - sLog->outRemote("Subnegotiation failed!"); - return -1; - } + //! Subnegotiation may differ per client - do not react on it + subnegotiate(); if (send("Authentication required\r\n") == -1) return -1; |
