From cdc5fce583392c5036a66586683688c1f3ebd0bb Mon Sep 17 00:00:00 2001 From: Jeff Becker Date: Fri, 16 Feb 2018 08:31:20 -0500 Subject: [PATCH] check port --- libi2pd_client/WebSocks.cpp | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/libi2pd_client/WebSocks.cpp b/libi2pd_client/WebSocks.cpp index f928fb5a..ce34a597 100644 --- a/libi2pd_client/WebSocks.cpp +++ b/libi2pd_client/WebSocks.cpp @@ -248,10 +248,15 @@ namespace client m_State = eWSCTryConnect; m_Parent->CreateStreamTo(m_RemoteAddr, m_RemotePort, std::bind(&WebSocksConn::ConnectResult, this, std::placeholders::_1)); } else if (state == eWSCDatagram) { - LogPrint(eLogDebug, "websocks: datagram mode initiated"); - m_State = eWSCDatagram; - BeginDatagram(); - SendResponse(""); + if (m_RemotePort >= 0 && m_RemotePort <= 65535) + { + LogPrint(eLogDebug, "websocks: datagram mode initiated"); + m_State = eWSCDatagram; + BeginDatagram(); + SendResponse(""); + } + else + SendResponse("invalid port"); } else { LogPrint(eLogWarning, "websocks: invalid state change ", m_State, " -> ", state); }