Line data Source code
1 : /* 2 : * Copyright (c) 2013 Juniper Networks, Inc. All rights reserved. 3 : * Copyright Contributors to the OpenSDN project 4 : */ 5 : 6 : #include <cmn/agent_cmn.h> 7 : #include <init/agent_init.h> 8 : #include <services/icmp_error_proto.h> 9 : #include <services/icmp_error_handler.h> 10 : 11 2 : IcmpErrorProto::IcmpErrorProto(Agent *agent, boost::asio::io_context &io) : 12 2 : Proto(agent, "Agent::Services", PktHandler::ICMP_ERROR, io) { 13 : // limit the number of entries in the workqueue 14 2 : work_queue_.SetSize(agent->params()->services_queue_limit()); 15 2 : work_queue_.SetBounded(true); 16 2 : } 17 : 18 4 : IcmpErrorProto::~IcmpErrorProto() { 19 4 : } 20 : 21 0 : ProtoHandler *IcmpErrorProto::AllocProtoHandler(boost::shared_ptr<PktInfo> info, 22 : boost::asio::io_context &io) { 23 0 : return new IcmpErrorHandler(agent(), this, info, &io); 24 : } 25 : 26 0 : bool IcmpErrorProto::FlowIndexToKey(uint32_t index, FlowKey *key, bool *is_nat_flow) { 27 0 : if (flow_index_to_key_fn_.empty()) 28 0 : return false; 29 0 : return flow_index_to_key_fn_(index, key, is_nat_flow); 30 : }