summaryrefslogtreecommitdiffstats
path: root/user_channel
diff options
context:
space:
mode:
Diffstat (limited to 'user_channel')
-rw-r--r--user_channel/channel_layer.cpp4
-rw-r--r--user_channel/channel_layer.hpp9
-rw-r--r--user_channel/channel_mgmt.hpp12
3 files changed, 25 insertions, 0 deletions
diff --git a/user_channel/channel_layer.cpp b/user_channel/channel_layer.cpp
index 34a596d..da9c613 100644
--- a/user_channel/channel_layer.cpp
+++ b/user_channel/channel_layer.cpp
@@ -142,4 +142,8 @@ std::string getChannelName(const uint8_t chNum)
return getChannelConfigObject().getChannelName(chNum);
}
+uint8_t getChannelByName(const std::string& chName)
+{
+ return getChannelConfigObject().getChannelByName(chName);
+}
} // namespace ipmi
diff --git a/user_channel/channel_layer.hpp b/user_channel/channel_layer.hpp
index 1a8d64c..4308794 100644
--- a/user_channel/channel_layer.hpp
+++ b/user_channel/channel_layer.hpp
@@ -24,6 +24,7 @@ namespace ipmi
static constexpr uint8_t maxIpmiChannels = 16;
static constexpr uint8_t currentChNum = 0xE;
+static constexpr uint8_t invalidChannel = 0xff;
/**
* @enum IPMI return codes specific to channel (refer spec se 22.22 response
@@ -367,4 +368,12 @@ ipmi_ret_t getChannelEnabledAuthType(const uint8_t chNum, const uint8_t priv,
*/
std::string getChannelName(const uint8_t chNum);
+/** @brief Retrieves the LAN channel number from the IPMI channel name
+ *
+ * @param[in] chName - IPMI channel name (i.e. eth0)
+ *
+ * @return the LAN channel number
+ */
+uint8_t getChannelByName(const std::string& chName);
+
} // namespace ipmi
diff --git a/user_channel/channel_mgmt.hpp b/user_channel/channel_mgmt.hpp
index 35bb494..baeb8c7 100644
--- a/user_channel/channel_mgmt.hpp
+++ b/user_channel/channel_mgmt.hpp
@@ -105,6 +105,18 @@ class ChannelConfig
*/
std::string getChannelName(const uint8_t chNum);
+ /** @brief function to get channel number from channel name
+ *
+ * @param[in] chName - channel name
+ *
+ * @return network channel interface number
+ */
+
+ uint8_t getChannelByName(const std::string& chName)
+ {
+ return convertToChannelNumberFromChannelName(chName);
+ }
+
/** @brief determines supported session type of a channel
*
* @param[in] chNum - channel number
OpenPOWER on IntegriCloud