OpenSDN source code
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
mac_learning_proto_handler.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2017 Juniper Networks, Inc. All rights reserved.
3  */
4 
5 #ifndef SRC_VNSW_AGENT_MAC_LEARNING_MAC_LEARNING_PROTO_HANDLER_H_
6 #define SRC_VNSW_AGENT_MAC_LEARNING_MAC_LEARNING_PROTO_HANDLER_H_
7 
8 #include <net/if.h>
9 #include "cmn/agent.h"
10 #include "cmn/agent_cmn.h"
11 #include "base/queue_task.h"
12 #include "pkt/proto.h"
13 #include "pkt/proto_handler.h"
15 
17 public:
19  boost::shared_ptr<PktInfo> info,
20  boost::asio::io_context &io);
22  bool Run();
23 private:
24  void IngressPktHandler();
25  void EgressPktHandler();
26  void Log(std::string str);
27  const Interface *intf_;
28  const VrfEntry *vrf_;
32 };
33 #endif
DISALLOW_COPY_AND_ASSIGN(MacLearningProtoHandler)
Definition: vrf.h:86
MacLearningProtoHandler(Agent *agent, boost::shared_ptr< PktInfo > info, boost::asio::io_context &io)
Agent * agent() const
Definition: proto_handler.h:80
Definition: agent.h:358
boost::shared_ptr< MacLearningEntry > MacLearningEntryPtr