summaryrefslogtreecommitdiff
path: root/meta-openbmc-mods/meta-common/recipes-network/network/phosphor-network/0003-Adding-channel-specific-privilege-to-network.patch
diff options
context:
space:
mode:
authorJason M. Bills <jason.m.bills@linux.intel.com>2020-12-08 00:45:20 +0300
committerJason M. Bills <jason.m.bills@linux.intel.com>2020-12-10 01:15:05 +0300
commit82dbc15a05125a812c140a3c8cff81c366482229 (patch)
tree9c8f1ad262a2e281f20340cf8646aca6f8596044 /meta-openbmc-mods/meta-common/recipes-network/network/phosphor-network/0003-Adding-channel-specific-privilege-to-network.patch
parent8d6ae7f2a817751fad151168fa10ce28ee0869d8 (diff)
downloadopenbmc-82dbc15a05125a812c140a3c8cff81c366482229.tar.xz
Update to internal 0.26
Signed-off-by: Jason M. Bills <jason.m.bills@linux.intel.com>
Diffstat (limited to 'meta-openbmc-mods/meta-common/recipes-network/network/phosphor-network/0003-Adding-channel-specific-privilege-to-network.patch')
-rw-r--r--meta-openbmc-mods/meta-common/recipes-network/network/phosphor-network/0003-Adding-channel-specific-privilege-to-network.patch75
1 files changed, 40 insertions, 35 deletions
diff --git a/meta-openbmc-mods/meta-common/recipes-network/network/phosphor-network/0003-Adding-channel-specific-privilege-to-network.patch b/meta-openbmc-mods/meta-common/recipes-network/network/phosphor-network/0003-Adding-channel-specific-privilege-to-network.patch
index f361c3d07..bcdad9c21 100644
--- a/meta-openbmc-mods/meta-common/recipes-network/network/phosphor-network/0003-Adding-channel-specific-privilege-to-network.patch
+++ b/meta-openbmc-mods/meta-common/recipes-network/network/phosphor-network/0003-Adding-channel-specific-privilege-to-network.patch
@@ -1,4 +1,4 @@
-From 5dfcd6c81a9f26c6c9c867a7a49f5259c3512be2 Mon Sep 17 00:00:00 2001
+From 9b0fcfc02c9ba33c02e210b8d253fa64eeb69060 Mon Sep 17 00:00:00 2001
From: AppaRao Puli <apparao.puli@linux.intel.com>
Date: Thu, 2 Apr 2020 17:06:07 +0530
Subject: [PATCH 1/2] Adding channel specific privilege to network
@@ -17,20 +17,22 @@ access command
Change-Id: I3b592a19363eef684e31d5f7c34dad8f2f9211df
Signed-off-by: AppaRao Puli <apparao.puli@linux.intel.com>
Signed-off-by: Yong Li <yong.b.li@linux.intel.com>
+
+%% original patch: 0003-Adding-channel-specific-privilege-to-network.patch
---
- ethernet_interface.cpp | 123 +++++++++++++++++++++++++++++++++++++++++++++++++
- ethernet_interface.hpp | 39 +++++++++++++++-
- network_manager.cpp | 104 +++++++++++++++++++++++++++++++++++++++++
- network_manager.hpp | 9 ++++
- 4 files changed, 274 insertions(+), 1 deletion(-)
+ ethernet_interface.cpp | 123 +++++++++++++++++++++++++++++++++++++++++
+ ethernet_interface.hpp | 38 ++++++++++++-
+ network_manager.cpp | 104 ++++++++++++++++++++++++++++++++++
+ network_manager.hpp | 9 +++
+ 4 files changed, 273 insertions(+), 1 deletion(-)
diff --git a/ethernet_interface.cpp b/ethernet_interface.cpp
-index ed1e1ba..fca86bd 100644
+index 76d7f92..318b94b 100644
--- a/ethernet_interface.cpp
+++ b/ethernet_interface.cpp
-@@ -37,6 +37,10 @@ using namespace phosphor::logging;
- using namespace sdbusplus::xyz::openbmc_project::Common::Error;
- using Argument = xyz::openbmc_project::Common::InvalidArgument;
+@@ -44,6 +44,10 @@ constexpr auto PROPERTY_INTERFACE = "org.freedesktop.DBus.Properties";
+ constexpr auto RESOLVED_SERVICE_PATH = "/org/freedesktop/resolve1/link/";
+ constexpr auto METHOD_GET = "Get";
+static constexpr const char* networkChannelCfgFile =
+ "/var/channel_intf_data.json";
@@ -39,15 +41,15 @@ index ed1e1ba..fca86bd 100644
struct EthernetIntfSocket
{
EthernetIntfSocket(int domain, int type, int protocol)
-@@ -86,6 +90,7 @@ EthernetInterface::EthernetInterface(sdbusplus::bus::bus& bus,
+@@ -101,6 +105,7 @@ EthernetInterface::EthernetInterface(sdbusplus::bus::bus& bus,
+ EthernetInterfaceIntf::autoNeg(std::get<2>(ifInfo));
EthernetInterfaceIntf::speed(std::get<0>(ifInfo));
- EthernetInterfaceIntf::linkUp(std::get<3>(ifInfo));
#endif
+ getChannelPrivilege(intfName);
// Emit deferred signal.
if (emitSignal)
-@@ -869,5 +874,123 @@ void EthernetInterface::deleteAll()
+@@ -1076,5 +1081,123 @@ void EthernetInterface::deleteAll()
manager.writeToConfigurationFile();
}
@@ -172,7 +174,7 @@ index ed1e1ba..fca86bd 100644
} // namespace network
} // namespace phosphor
diff --git a/ethernet_interface.hpp b/ethernet_interface.hpp
-index 68668d6..058d328 100644
+index abaf43e..fb538a7 100644
--- a/ethernet_interface.hpp
+++ b/ethernet_interface.hpp
@@ -2,11 +2,14 @@
@@ -183,7 +185,7 @@ index 68668d6..058d328 100644
#include "xyz/openbmc_project/Network/IP/Create/server.hpp"
#include "xyz/openbmc_project/Network/Neighbor/CreateStatic/server.hpp"
- #include <experimental/filesystem>
+ #include <filesystem>
+#include <nlohmann/json.hpp>
#include <sdbusplus/bus.hpp>
+#include <sdbusplus/bus/match.hpp>
@@ -200,7 +202,7 @@ index 68668d6..058d328 100644
using IP = sdbusplus::xyz::openbmc_project::Network::server::IP;
-@@ -31,10 +35,14 @@ using EthernetInterfaceIntf =
+@@ -31,11 +35,15 @@ using EthernetInterfaceIntf =
sdbusplus::xyz::openbmc_project::Network::server::EthernetInterface;
using MacAddressIntf =
sdbusplus::xyz::openbmc_project::Network::server::MACAddress;
@@ -210,12 +212,13 @@ index 68668d6..058d328 100644
using ServerList = std::vector<std::string>;
using ObjectPath = sdbusplus::message::object_path;
-+using DbusVariant = std::variant<std::string, std::vector<std::string>>;
-+
- namespace fs = std::experimental::filesystem;
+ namespace fs = std::filesystem;
++using DbusVariant =
++ sdbusplus::message::variant<std::string, std::vector<std::string>>;
class Manager; // forward declaration of network manager.
-@@ -199,6 +208,14 @@ class EthernetInterface : public Ifaces
+
+@@ -223,6 +231,14 @@ class EthernetInterface : public Ifaces
*/
void deleteAll();
@@ -230,10 +233,10 @@ index 68668d6..058d328 100644
using EthernetInterfaceIntf::dHCPEnabled;
using EthernetInterfaceIntf::interfaceName;
using EthernetInterfaceIntf::linkUp;
-@@ -296,6 +313,26 @@ class EthernetInterface : public Ifaces
- std::string objPath;
-
- friend class TestEthernetInterface;
+@@ -344,6 +360,26 @@ class EthernetInterface : public Ifaces
+ * @returns true/false value if the address is static
+ */
+ bool originIsManuallyAssigned(IP::AddressOrigin origin);
+
+ /** @brief gets the channel privilege.
+ * @param[in] interfaceName - Network interface name.
@@ -258,10 +261,10 @@ index 68668d6..058d328 100644
} // namespace network
diff --git a/network_manager.cpp b/network_manager.cpp
-index 043d7a2..75f4e5f 100644
+index c55c9bb..b5ff278 100644
--- a/network_manager.cpp
+++ b/network_manager.cpp
-@@ -34,6 +34,13 @@ extern std::unique_ptr<Timer> restartTimer;
+@@ -36,6 +36,13 @@ extern std::unique_ptr<Timer> restartTimer;
using namespace phosphor::logging;
using namespace sdbusplus::xyz::openbmc_project::Common::Error;
@@ -275,7 +278,7 @@ index 043d7a2..75f4e5f 100644
Manager::Manager(sdbusplus::bus::bus& bus, const char* objPath,
const std::string& path) :
details::VLANCreateIface(bus, objPath, true),
-@@ -41,6 +48,101 @@ Manager::Manager(sdbusplus::bus::bus& bus, const char* objPath,
+@@ -43,6 +50,103 @@ Manager::Manager(sdbusplus::bus::bus& bus, const char* objPath,
{
fs::path confDir(path);
setConfDir(confDir);
@@ -344,10 +347,12 @@ index 043d7a2..75f4e5f 100644
+ return;
+ }
+
-+ std::variant<std::vector<std::string>> result;
++ sdbusplus::message::variant<std::vector<std::string>> result;
+ reply.read(result);
+
-+ supportedPrivList = std::get<std::vector<std::string>>(result);
++ supportedPrivList =
++ sdbusplus::message::variant_ns::get<std::vector<std::string>>(
++ result);
+ }
+
+ // Resgister the signal
@@ -367,8 +372,8 @@ index 043d7a2..75f4e5f 100644
+ {
+ if (t.first == propNameAllPrivileges)
+ {
-+ supportedPrivList =
-+ std::get<std::vector<std::string>>(t.second);
++ supportedPrivList = sdbusplus::message::variant_ns::get<
++ std::vector<std::string>>(t.second);
+ }
+ }
+ });
@@ -378,10 +383,10 @@ index 043d7a2..75f4e5f 100644
bool Manager::createDefaultNetworkFiles(bool force)
diff --git a/network_manager.hpp b/network_manager.hpp
-index edb341f..5fb9fe8 100644
+index 6815d3f..96e20a6 100644
--- a/network_manager.hpp
+++ b/network_manager.hpp
-@@ -137,6 +137,12 @@ class Manager : public details::VLANCreateIface
+@@ -151,6 +151,12 @@ class Manager : public details::VLANCreateIface
return (interfaces.find(intf) != interfaces.end());
}
@@ -394,7 +399,7 @@ index edb341f..5fb9fe8 100644
protected:
/** @brief Persistent sdbusplus DBus bus connection. */
sdbusplus::bus::bus& bus;
-@@ -159,6 +165,9 @@ class Manager : public details::VLANCreateIface
+@@ -173,6 +179,9 @@ class Manager : public details::VLANCreateIface
/** @brief Network Configuration directory. */
fs::path confDir;
@@ -405,5 +410,5 @@ index edb341f..5fb9fe8 100644
} // namespace network
--
-2.7.4
+2.26.2