mirror of
https://github.com/intrepidcs/libicsneo.git
synced 2026-09-28 11:52:11 +02:00
Device: Write MACsec configs by network ID
This commit is contained in:
committed by
Kyle Schwarz
parent
b54bf80c40
commit
f0b1341cdf
@@ -12,6 +12,7 @@
|
||||
#include <type_traits>
|
||||
#include <optional>
|
||||
#include <unordered_map>
|
||||
#include <map>
|
||||
#include <set>
|
||||
#include <unordered_set>
|
||||
#include <chrono>
|
||||
@@ -897,7 +898,8 @@ public:
|
||||
std::optional<GPTPStatus> getGPTPStatus(std::chrono::milliseconds timeout = std::chrono::milliseconds(100));
|
||||
|
||||
/* MACsec support */
|
||||
virtual bool writeMACsecConfig(const MACsecConfig& cfg);
|
||||
std::vector<Network> getMACsecNetworks() const;
|
||||
bool writeMACsecConfig(const MACsecConfig& cfg, Network::NetID network);
|
||||
|
||||
std::shared_ptr<DeviceExtension> getExtension(const std::string& name) const;
|
||||
|
||||
@@ -917,6 +919,13 @@ public:
|
||||
bool iso15765SetupRxFlowControl(const Network& network, const Iso15765MessageArgs& msg);
|
||||
|
||||
protected:
|
||||
using MACsecNetworkMap = std::map<Network::NetID, uint16_t>;
|
||||
|
||||
virtual const MACsecNetworkMap& getMACsecNetworkMap() const {
|
||||
static const MACsecNetworkMap networks;
|
||||
return networks;
|
||||
}
|
||||
|
||||
bool online = false;
|
||||
int messagePollingCallbackID = 0;
|
||||
int internalHandlerCallbackID = 0;
|
||||
|
||||
@@ -70,6 +70,13 @@ public:
|
||||
}
|
||||
|
||||
protected:
|
||||
const MACsecNetworkMap& getMACsecNetworkMap() const override {
|
||||
static const MACsecNetworkMap networks = {
|
||||
{Network::NetID::AE_01, 0},
|
||||
};
|
||||
return networks;
|
||||
}
|
||||
|
||||
RADComet2(neodevice_t neodevice, const driver_factory_t& makeDriver) : Device(neodevice) {
|
||||
initialize<RADComet2Settings, Disk::NeoMemoryDiskDriver, Disk::NeoMemoryDiskDriver>(makeDriver);
|
||||
}
|
||||
|
||||
@@ -77,6 +77,13 @@ public:
|
||||
}
|
||||
|
||||
protected:
|
||||
const MACsecNetworkMap& getMACsecNetworkMap() const override {
|
||||
static const MACsecNetworkMap networks = {
|
||||
{Network::NetID::AE_01, 0},
|
||||
};
|
||||
return networks;
|
||||
}
|
||||
|
||||
RADComet3(neodevice_t neodevice, const driver_factory_t& makeDriver) : Device(neodevice) {
|
||||
initialize<RADComet3Settings, Disk::NeoMemoryDiskDriver, Disk::NeoMemoryDiskDriver>(makeDriver);
|
||||
}
|
||||
|
||||
@@ -217,6 +217,14 @@ public:
|
||||
return chipVersions;
|
||||
}
|
||||
protected:
|
||||
const MACsecNetworkMap& getMACsecNetworkMap() const override {
|
||||
static const MACsecNetworkMap networks = {
|
||||
{Network::NetID::AE_01, 0},
|
||||
{Network::NetID::AE_02, 1},
|
||||
};
|
||||
return networks;
|
||||
}
|
||||
|
||||
RADGigastar2(neodevice_t neodevice, const driver_factory_t &makeDriver) : Device(neodevice)
|
||||
{
|
||||
initialize<RADGigastar2Settings, Disk::ExtExtractorDiskReadDriver, Disk::NeoMemoryDiskDriver>(makeDriver);
|
||||
|
||||
@@ -38,6 +38,13 @@ public:
|
||||
.add<ReconnectPhase>();
|
||||
}
|
||||
protected:
|
||||
const MACsecNetworkMap& getMACsecNetworkMap() const override {
|
||||
static const MACsecNetworkMap networks = {
|
||||
{Network::NetID::AE_01, 0},
|
||||
};
|
||||
return networks;
|
||||
}
|
||||
|
||||
RADMoon2ZL(neodevice_t neodevice, const driver_factory_t& makeDriver) : RADMoon2Base(neodevice) {
|
||||
initialize<RADMoon2Settings>(makeDriver);
|
||||
}
|
||||
|
||||
@@ -52,6 +52,14 @@ public:
|
||||
.add<ReconnectPhase>();
|
||||
}
|
||||
protected:
|
||||
const MACsecNetworkMap& getMACsecNetworkMap() const override {
|
||||
static const MACsecNetworkMap networks = {
|
||||
{Network::NetID::AE_01, 0},
|
||||
{Network::NetID::ETHERNET_01, 1},
|
||||
};
|
||||
return networks;
|
||||
}
|
||||
|
||||
RADMoon3(neodevice_t neodevice, const driver_factory_t& makeDriver) : Device(neodevice) {
|
||||
initialize<RADMoon3Settings>(makeDriver);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user