20template <
class PacketType>
 
   22  return util::rlp_dec<PacketType>(packet_rlp);
 
 
   25template <
class PacketType>
 
   36                std::shared_ptr<TimePeriodPacketsStats> packets_stats, 
const addr_t& node_addr,
 
   37                const std::string& log_channel_name);
 
   57                               bool set_peer_as_malicious = 
false);
 
 
Definition FixedHash.h:35
 
Base Packet handler base class that consists processPacket function.
Definition base_packet_handler.hpp:13
 
Packet handler base class that consists of shared state and some commonly used functions.
Definition packet_handler.hpp:33
 
PacketHandler(PacketHandler &&)=default
 
const FullNodeConfig & kConf
Definition packet_handler.hpp:70
 
std::shared_ptr< TimePeriodPacketsStats > packets_stats_
Definition packet_handler.hpp:75
 
void disconnect(const dev::p2p::NodeID &node_id, dev::p2p::DisconnectReason reason)
Definition packet_handler.cpp:115
 
PacketHandler(const PacketHandler &)=default
 
void handle_caught_exception(std::string_view exception_msg, const threadpool::PacketData &packet_data, const dev::p2p::NodeID &peer, dev::p2p::DisconnectReason disconnect_reason=dev::p2p::DisconnectReason::UserReason, bool set_peer_as_malicious=false)
Definition packet_handler.cpp:67
 
bool sealAndSend(const dev::p2p::NodeID &node_id, SubprotocolPacketType packet_type, dev::bytes &&rlp_bytes)
Definition packet_handler.cpp:81
 
std::shared_ptr< PeersState > peers_state_
Definition packet_handler.hpp:72
 
virtual ~PacketHandler()=default
 
void processPacket(const threadpool::PacketData &packet_data) override
Packet processing function wrapper that logs packet stats and calls process function.
Definition packet_handler.cpp:14
 
virtual void process(const threadpool::PacketData &packet_data, const std::shared_ptr< TaraxaPeer > &peer)=0
Main packet processing function.
 
PacketHandler & operator=(const PacketHandler &)=delete
 
PacketHandler & operator=(PacketHandler &&)=delete
 
Definition packet_data.hpp:12
 
#define LOG_OBJECTS_DEFINE
Definition logger.hpp:60
 
DisconnectReason
Definition Common.h:85
 
@ UserReason
Definition Common.h:98
 
std::vector<::byte > bytes
Definition Common.h:46
 
Definition vote_manager.hpp:23
 
dev::bytes encodePacketRlp(PacketType packet)
Definition packet_handler.hpp:26
 
PacketType decodePacketRlp(const dev::RLP &packet_rlp)
Definition packet_handler.hpp:21
 
SubprotocolPacketType
SubprotocolPacketType is used in networking layer to differentiate packet types.
Definition packet_types.hpp:12
 
dev::bytes const & rlp_enc(RLPEncoderRef encoder_to_reuse, T const &obj)
Definition encoding_rlp.hpp:193