diff --git a/src/broker/Manager.cc b/src/broker/Manager.cc index cd4d0c8788..5b3d463485 100644 --- a/src/broker/Manager.cc +++ b/src/broker/Manager.cc @@ -2132,9 +2132,9 @@ void Manager::PrepareForwarding(const std::string& name) { DBG_LOG(DBG_BROKER, "Resolved table forward for data store %s", name.c_str()); } -broker::hub Manager::MakeHub(broker::filter_type ft) { +broker::hub Manager::MakeHub() { ++hub_count; - return bstate->endpoint.make_hub(std::move(ft)); + return bstate->endpoint.make_hub({}); } void Manager::DestroyHub(broker::hub&& hub) { --hub_count; } diff --git a/src/broker/Manager.h b/src/broker/Manager.h index 58bdadf0e0..212ca45801 100644 --- a/src/broker/Manager.h +++ b/src/broker/Manager.h @@ -455,7 +455,7 @@ private: friend class WebSocketState; // Create a hub for WebSocket clients. - broker::hub MakeHub(broker::filter_type ft); + broker::hub MakeHub(); // This hub is to be destroyed. void DestroyHub(broker::hub&& hub); diff --git a/src/broker/WebSocketShim.cc b/src/broker/WebSocketShim.cc index 20a911a754..f3ceef99e0 100644 --- a/src/broker/WebSocketShim.cc +++ b/src/broker/WebSocketShim.cc @@ -22,7 +22,7 @@ namespace zeek::Broker { class WebSocketState { public: - WebSocketState() : hub(broker_mgr->MakeHub({broker::topic::errors()})) {} + WebSocketState() : hub(broker_mgr->MakeHub()) {} ~WebSocketState() { // Let the manager know we're done with this hook. broker_mgr->DestroyHub(std::move(hub)); @@ -154,16 +154,7 @@ void WebSocketShim::Process() { BROKER_WS_DEBUG("Shim: Process() got %zu messages (%s)", messages.size(), NodeId().c_str()); for ( auto& message : messages ) { auto&& topic = broker::get_topic(message); - if ( broker::is_prefix(topic, broker::topic::errors_str) ) { - std::string err_msg = broker::to_string(message); - ProcessError("broker_error", broker::to_string(err_msg)); - } - else if ( broker::is_prefix(topic, broker::topic::statuses_str) ) { - // Ignore status messages for WebSocket clients - } - else { - broker::zeek::visit_as_message([this, topic](auto& msg) { ProcessMessage(topic, msg); }, message); - } + broker::zeek::visit_as_message([this, topic](auto& msg) { ProcessMessage(topic, msg); }, message); } } diff --git a/testing/btest/Baseline/cluster.websocket.broker.spurious-peer-error/client.out b/testing/btest/Baseline/cluster.websocket.broker.spurious-peer-error/client.out index 7539245508..2e9a67f532 100644 --- a/testing/btest/Baseline/cluster.websocket.broker.spurious-peer-error/client.out +++ b/testing/btest/Baseline/cluster.websocket.broker.spurious-peer-error/client.out @@ -1,7 +1,5 @@ ### BTest baseline data generated by btest-diff. Do not edit. Use "btest -U/-u" to update. Requires BTest >= 0.63. Connected! -{"client": "ws1", "error": "KeyError('data')", "data": {"type": "error", "code": "broker_error", "context": "data(<$>/local/data/errors, (error, peer_unavailable, ((nil, 127.0.0.1, 21/tcp, 1), unable to connect to remote peer)))"}} -{"client": "ws1", "error": "KeyError('data')", "data": {"type": "error", "code": "broker_error", "context": "data(<$>/local/data/errors, (error, peer_unavailable, ((nil, 127.0.0.1, 21/tcp, 1), unable to connect to remote peer)))"}} {"client": "ws1", "topic": "/test/pings/reply", "event_name": "ping", "event_args": [{"@data-type": "string", "data": "ws1-1"}, {"@data-type": "count", "data": 101}]} {"client": "ws1", "topic": "/test/pings/reply", "event_name": "ping", "event_args": [{"@data-type": "string", "data": "ws1-2"}, {"@data-type": "count", "data": 102}]} {"client": "ws1", "topic": "/test/pings/reply", "event_name": "ping", "event_args": [{"@data-type": "string", "data": "ws1-3"}, {"@data-type": "count", "data": 103}]}