summaryrefslogtreecommitdiff
path: root/redfish-core/lib/redfish_sessions.hpp
diff options
context:
space:
mode:
authorEd Tanous <ed@tanous.net>2020-10-28 18:23:15 +0300
committerEd Tanous <ed@tanous.net>2020-10-29 02:10:06 +0300
commit10f0d240a56e33acf78dae93fa6f71387f2e2af2 (patch)
tree5a46bcb9489b7249f9d47bc12c10310175bcedf6 /redfish-core/lib/redfish_sessions.hpp
parentdc3fa6671cd588d5a09416da09030f82aff2e50b (diff)
downloadbmcweb-10f0d240a56e33acf78dae93fa6f71387f2e2af2.tar.xz
Revert "Redfish Session : Support ClientOriginIPAddress"
This reverts commit e436008377fbcf287be02c9e9e1b59c6627d7673. Reason for revert: This breaks several things. 1. Not all login endpoints are handled, which lead to returning blank ip addresses 2. IP addresses are not persisted. 3. This crashes occasionally on remote_endpoint, and ignores ec. Change-Id: I58c875721cf48bf02db833c9c57a9eead5e249d5
Diffstat (limited to 'redfish-core/lib/redfish_sessions.hpp')
-rw-r--r--redfish-core/lib/redfish_sessions.hpp9
1 files changed, 4 insertions, 5 deletions
diff --git a/redfish-core/lib/redfish_sessions.hpp b/redfish-core/lib/redfish_sessions.hpp
index 1797ab9803..e3259895d2 100644
--- a/redfish-core/lib/redfish_sessions.hpp
+++ b/redfish-core/lib/redfish_sessions.hpp
@@ -60,15 +60,15 @@ class Sessions : public Node
res.jsonValue["UserName"] = session->username;
res.jsonValue["@odata.id"] =
"/redfish/v1/SessionService/Sessions/" + session->uniqueId;
- res.jsonValue["@odata.type"] = "#Session.v1_3_0.Session";
+ res.jsonValue["@odata.type"] = "#Session.v1_0_2.Session";
res.jsonValue["Name"] = "User Session";
res.jsonValue["Description"] = "Manager User Session";
- res.jsonValue["ClientOriginIPAddress"] = session->clientIp;
res.jsonValue["Oem"]["OpenBMC"]["@odata.type"] =
"#OemSession.v1_0_0.Session";
#ifdef BMCWEB_ENABLE_IBM_MANAGEMENT_CONSOLE
res.jsonValue["Oem"]["OpenBMC"]["ClientID"] = session->clientId;
#endif
+ res.jsonValue["Oem"]["OpenBMC"]["ClientOriginIP"] = session->clientIp;
res.end();
}
@@ -174,6 +174,7 @@ class SessionCollection : public Node
std::string password;
std::optional<nlohmann::json> oemObject;
std::string clientId;
+ std::string clientIp;
if (!json_util::readJson(req, res, "UserName", username, "Password",
password, "Oem", oemObject))
{
@@ -225,14 +226,12 @@ class SessionCollection : public Node
}
}
#endif
- BMCWEB_LOG_DEBUG << "Session created from IPAddress: "
- << req.ipAddress.to_string();
// User is authenticated - create session
std::shared_ptr<persistent_data::UserSession> session =
persistent_data::SessionStore::getInstance().generateUserSession(
username, persistent_data::PersistenceType::TIMEOUT,
- isConfigureSelfOnly, clientId, req.ipAddress.to_string());
+ isConfigureSelfOnly, clientId, clientIp);
res.addHeader("X-Auth-Token", session->sessionToken);
res.addHeader("Location", "/redfish/v1/SessionService/Sessions/" +
session->uniqueId);