mgmt: Reinitialize multicast faces and partially reload config file on HUP signal
The following elements from the config file are reloaded:
- effective user/group
- log levels
- multicast faces (enable/disable)
- security
Change-Id: I6ddf124702b30610dd0404d8fbaa9a9d800f02bf
Refs: #1584
diff --git a/daemon/face/ethernet-factory.hpp b/daemon/face/ethernet-factory.hpp
index 738164a..5630141 100644
--- a/daemon/face/ethernet-factory.hpp
+++ b/daemon/face/ethernet-factory.hpp
@@ -38,11 +38,19 @@
/**
* \brief Exception of EthernetFactory
*/
- struct Error : public ProtocolFactory::Error
+ class Error : public ProtocolFactory::Error
{
- Error(const std::string& what) : ProtocolFactory::Error(what) {}
+ public:
+ explicit
+ Error(const std::string& what)
+ : ProtocolFactory::Error(what)
+ {
+ }
};
+ typedef std::map< std::pair<std::string, ethernet::Address>,
+ shared_ptr<EthernetFace> > MulticastFaceMap;
+
// from ProtocolFactory
virtual void
createFace(const FaceUri& uri,
@@ -68,6 +76,12 @@
createMulticastFace(const shared_ptr<NetworkInterfaceInfo>& interface,
const ethernet::Address& address);
+ /**
+ * \brief Get map of configured multicast faces
+ */
+ const MulticastFaceMap&
+ getMulticastFaces() const;
+
private:
void
afterFaceFailed(const std::string& interfaceName,
@@ -86,11 +100,17 @@
const ethernet::Address& address) const;
private:
- typedef std::map< std::pair<std::string, ethernet::Address>,
- shared_ptr<EthernetFace> > MulticastFacesMap;
- MulticastFacesMap m_multicastFaces;
+ MulticastFaceMap m_multicastFaces;
};
+
+inline const EthernetFactory::MulticastFaceMap&
+EthernetFactory::getMulticastFaces() const
+{
+ return m_multicastFaces;
+}
+
+
} // namespace nfd
#endif // NFD_DAEMON_FACE_ETHERNET_FACTORY_HPP