diff --git a/common/eq_stream_ident.cpp b/common/eq_stream_ident.cpp index cbe8ce80a..7a7ed71dc 100644 --- a/common/eq_stream_ident.cpp +++ b/common/eq_stream_ident.cpp @@ -45,13 +45,12 @@ void EQStreamIdentifier::Process() { Record &r = *cur; //first see if this stream has expired - //if(r.expire.Check(false)) { - // //this stream has failed to match any pattern in our timeframe. - // Log.Out(Logs::General, Logs::Netcode, "[IDENTIFY] Unable to identify stream from %s:%d before timeout.", long2ip(r.stream->GetRemoteIP()).c_str(), ntohs(r.stream->GetRemotePort())); - // r.stream->ReleaseFromUse(); - // cur = m_streams.erase(cur); - // continue; - //} + if(r.expire.Check(false)) { + Log.Out(Logs::General, Logs::Netcode, "[IDENTIFY] Unable to identify stream from %s:%d before timeout.", r.stream->GetRemoteAddr().c_str(), ntohs(r.stream->GetRemotePort())); + r.stream->Close(); + cur = m_streams.erase(cur); + continue; + } //then make sure the stream is still active //if stream hasn't finished initializing then continue; diff --git a/common/net/daybreak_connection.cpp b/common/net/daybreak_connection.cpp index c61fd8a6c..28241d9cd 100644 --- a/common/net/daybreak_connection.cpp +++ b/common/net/daybreak_connection.cpp @@ -57,6 +57,7 @@ void EQ::Net::DaybreakConnectionManager::Attach(uv_loop_t *loop) rc = uv_udp_recv_start(&m_socket, [](uv_handle_t* handle, size_t suggested_size, uv_buf_t* buf) { buf->base = new char[suggested_size]; + memset(buf->base, 0, suggested_size); buf->len = suggested_size; }, [](uv_udp_t* handle, ssize_t nread, const uv_buf_t* buf, const struct sockaddr* addr, unsigned flags) { diff --git a/common/net/eqstream.cpp b/common/net/eqstream.cpp index 0825d1ce7..f3765039a 100644 --- a/common/net/eqstream.cpp +++ b/common/net/eqstream.cpp @@ -42,14 +42,12 @@ void EQ::Net::EQStreamManager::DaybreakPacketRecv(std::shared_ptrsecond; - if (stream->m_opcode_manager && stream->m_opcode_manager) { - std::unique_ptr t(new EQ::Net::WritablePacket()); - t->PutPacket(0, p); - stream->m_packet_queue.push_back(std::move(t)); + std::unique_ptr t(new EQ::Net::WritablePacket()); + t->PutPacket(0, p); + stream->m_packet_queue.push_back(std::move(t)); - if (m_on_data_avail) { - m_on_data_avail(stream); - } + if (m_on_data_avail) { + m_on_data_avail(stream); } } }