OpenSDN source code
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
IcmpErrorProto Class Reference

#include <icmp_error_proto.h>

Inheritance diagram for IcmpErrorProto:
Collaboration diagram for IcmpErrorProto:

Classes

struct  Stats
 

Public Types

typedef boost::function< bool(uint32_t,
FlowKey *, bool *)> 
FlowIndexToKeyFn
 
- Public Types inherited from Proto
typedef WorkQueue
< boost::shared_ptr< PktInfo > > 
ProtoWorkQueue
 

Public Member Functions

 IcmpErrorProto (Agent *agent, boost::asio::io_context &io)
 
virtual ~IcmpErrorProto ()
 
void Shutdown ()
 
void Register (FlowIndexToKeyFn fn)
 
bool FlowIndexToKey (uint32_t index, FlowKey *key, bool *is_nat_flow)
 
ProtoHandlerAllocProtoHandler (boost::shared_ptr< PktInfo > info, boost::asio::io_context &io)
 
void incrememt_df_msgs ()
 
void increment_drops ()
 
void increment_interface_errors ()
 
void increment_invalid_flow_index ()
 
const StatsGetStats () const
 
void ClearStats ()
 
- Public Member Functions inherited from Proto
 Proto (Agent *agent, const char *task_name, PktHandler::PktModuleName mod, boost::asio::io_context &io)
 
virtual ~Proto ()
 
virtual bool Validate (PktInfo *msg)
 
virtual bool Enqueue (boost::shared_ptr< PktInfo > msg)
 
virtual void ProcessStats (PktStatsType::Type type)
 
void FreeBuffer (PktInfo *msg)
 
bool ProcessProto (boost::shared_ptr< PktInfo > msg_info)
 
bool RunProtoHandler (ProtoHandler *handler)
 
void set_trace (bool val)
 
void set_free_buffer (bool val)
 
boost::asio::io_context & get_io_service () const
 
Agentagent () const
 
const ProtoWorkQueuework_queue () const
 
virtual void TokenAvailable (TokenPool *pool)
 

Private Member Functions

 DISALLOW_COPY_AND_ASSIGN (IcmpErrorProto)
 

Private Attributes

Stats stats_
 
FlowIndexToKeyFn flow_index_to_key_fn_
 

Additional Inherited Members

- Protected Attributes inherited from Proto
Agentagent_
 
PktHandler::PktModuleName module_
 
bool trace_
 
bool free_buffer_
 
boost::asio::io_context & io_
 
ProtoWorkQueue work_queue_
 

Detailed Description

Definition at line 12 of file icmp_error_proto.h.

Member Typedef Documentation

typedef boost::function<bool(uint32_t, FlowKey *, bool *)> IcmpErrorProto::FlowIndexToKeyFn

Definition at line 29 of file icmp_error_proto.h.

Constructor & Destructor Documentation

IcmpErrorProto::IcmpErrorProto ( Agent agent,
boost::asio::io_context &  io 
)

Definition at line 10 of file icmp_error_proto.cc.

Here is the call graph for this function:

IcmpErrorProto::~IcmpErrorProto ( )
virtual

Definition at line 17 of file icmp_error_proto.cc.

Member Function Documentation

ProtoHandler * IcmpErrorProto::AllocProtoHandler ( boost::shared_ptr< PktInfo info,
boost::asio::io_context &  io 
)
virtual

Implements Proto.

Definition at line 20 of file icmp_error_proto.cc.

Here is the call graph for this function:

void IcmpErrorProto::ClearStats ( )
inline

Definition at line 45 of file icmp_error_proto.h.

Here is the call graph for this function:

IcmpErrorProto::DISALLOW_COPY_AND_ASSIGN ( IcmpErrorProto  )
private
bool IcmpErrorProto::FlowIndexToKey ( uint32_t  index,
FlowKey key,
bool *  is_nat_flow 
)

Definition at line 25 of file icmp_error_proto.cc.

const Stats& IcmpErrorProto::GetStats ( ) const
inline

Definition at line 44 of file icmp_error_proto.h.

void IcmpErrorProto::incrememt_df_msgs ( )
inline

Definition at line 40 of file icmp_error_proto.h.

void IcmpErrorProto::increment_drops ( )
inline

Definition at line 41 of file icmp_error_proto.h.

void IcmpErrorProto::increment_interface_errors ( )
inline

Definition at line 42 of file icmp_error_proto.h.

void IcmpErrorProto::increment_invalid_flow_index ( )
inline

Definition at line 43 of file icmp_error_proto.h.

void IcmpErrorProto::Register ( FlowIndexToKeyFn  fn)
inline

Definition at line 35 of file icmp_error_proto.h.

void IcmpErrorProto::Shutdown ( )
inline

Definition at line 34 of file icmp_error_proto.h.

Member Data Documentation

FlowIndexToKeyFn IcmpErrorProto::flow_index_to_key_fn_
private

Definition at line 49 of file icmp_error_proto.h.

Stats IcmpErrorProto::stats_
private

Definition at line 48 of file icmp_error_proto.h.


The documentation for this class was generated from the following files: