20#ifndef NETWORKINGPLUGIN_H
21#define NETWORKINGPLUGIN_H
23#include <RdkPluginBase.h>
25#include "NetworkingHelper.h"
28#include <netinet/in.h>
39 const std::shared_ptr<DobbyRdkPluginUtils> &utils,
40 const std::string &rootfsPath);
44 inline std::string
name()
const override
66 const std::string mName;
67 NetworkType mNetworkType;
69 std::shared_ptr<rt_dobby_schema> mContainerConfig;
70 const std::shared_ptr<DobbyRdkPluginUtils> mUtils;
72 const std::string mRootfsPath;
73 const rt_defs_plugins_networking_data *mPluginData;
75 std::shared_ptr<NetworkingHelper> mHelper;
76 std::shared_ptr<Netfilter> mNetfilter;
Definition NetworkingPlugin.h:36
bool postHalt() override
Dobby Hook - Run in host namespace when container terminates.
Definition NetworkingPlugin.cpp:289
bool postStop() override
OCI Hook - Run in host namespace.
Definition NetworkingPlugin.cpp:264
bool postInstallation() override
Dobby Hook - run in host namespace once when container bundle is downloaded.
Definition NetworkingPlugin.cpp:111
unsigned hookHints() const override
Set the bit flags for which hooks we're going to use.
Definition NetworkingPlugin.cpp:96
std::vector< std::string > GetAvailableExternalInterfaces() const
Gets the external interfaces that are actually available. Looks in the settings for the interfaces Do...
Definition NetworkingPlugin.cpp:443
std::vector< std::string > getDependencies() const override
Should return the names of the plugins this plugin depends on.
Definition NetworkingPlugin.cpp:419
std::string name() const override
Should return the name of the plugin.
Definition NetworkingPlugin.h:44
std::vector< std::string > GetExternalInterfacesFromSettings() const
Gets the external interfaces defined in the dobby settings file, regardless of whether they actually ...
Definition NetworkingPlugin.cpp:503
bool createRuntime() override
OCI Hook - Run in host namespace.
Definition NetworkingPlugin.cpp:143
Basic object that provides the default overrides for a plugin.
Definition RdkPluginBase.h:34