#
42f64efc |
| 05-Feb-2024 |
George Liu <liuxiwei@ieisystem.com> |
Refactor to call the getProperty method
Uniformly use the getProperty method of utils.hpp to obtain values
Signed-off-by: George Liu <liuxiwei@ieisystem.com> Change-Id: I9eae6bba6806215b51090637a7e
Refactor to call the getProperty method
Uniformly use the getProperty method of utils.hpp to obtain values
Signed-off-by: George Liu <liuxiwei@ieisystem.com> Change-Id: I9eae6bba6806215b51090637a7e42c8c8d90be87
show more ...
|
#
fbc6c9d7 |
| 10-May-2023 |
Patrick Williams <patrick@stwcx.xyz> |
clang-format: copy latest and re-format
clang-format-16 has some backwards incompatible changes that require additional settings for best compatibility and re-running the formatter. Copy the latest
clang-format: copy latest and re-format
clang-format-16 has some backwards incompatible changes that require additional settings for best compatibility and re-running the formatter. Copy the latest .clang-format from the docs repository and reformat the repository.
Change-Id: I44441096113929ce96eb1439e2932e6ff3c87f27 Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
#
5d82f474 |
| 22-Jul-2022 |
Patrick Williams <patrick@stwcx.xyz> |
sdbusplus: use shorter type aliases
The sdbusplus headers provide shortened aliases for many types. Switch to using them to provide better code clarity and shorter lines. Possible replacements are
sdbusplus: use shorter type aliases
The sdbusplus headers provide shortened aliases for many types. Switch to using them to provide better code clarity and shorter lines. Possible replacements are for: * bus_t * exception_t * manager_t * match_t * message_t * object_t * slot_t
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: Ibd2a0b512bfb7caf65bfab64b271d194da520aac
show more ...
|
#
fd61fc3d |
| 08-Apr-2021 |
Johnathan Mantey <johnathanx.mantey@intel.com> |
Permit assignment the IPMI management channel via JSON
phosphor-ipmi-host hard codes Channel 1 as the LAN NIC responsible for managing and updating IPMI, Redfish, and web server access permissions.
Permit assignment the IPMI management channel via JSON
phosphor-ipmi-host hard codes Channel 1 as the LAN NIC responsible for managing and updating IPMI, Redfish, and web server access permissions. Systems that do not have an lan-802.3 channel type configured for IPMI Channel 1 have no way of assigning permissions that flow to phosphor-user-manager. The inability to update permissions within phosphor-user-manaager ultimaltely flows to Redfish and HTTPS access.
The changes in this commit provide flexibility in assigning the IPMI channel used to propagate permission changes to phosphor-user-manager. A new boolean keyword, is_managment_nic, is added. This entry is added to the JSON file, channel_config.json by default, to announce which lan-802.3 IPMI channel is to be used to assign IPMI permissions used by phosphor-user-manager. Only one channel can have this ability. If the keyword is missing in the JSON file, the code falls back to using Channel 1.
Tested: Fully testing this change requires using code that dynamically disables Channel 1. The SUT only has a single NIC, which is not assigned to Channel 1.
Fully reprogrammed SPI to enter a pristine state. Created a new user, channel 3, id 2, privilege=4
Confirmed LAN "ipmitool raw 6 1" succeeds Confirmed Web access to new user account Confirmed Redfish acess to new user account Confirmed BMC console "ipmitool raw 6 1" succeeds
Used BMC console ipmitool to change user permissions from 4 to 15 (i.e. no access)
Confirmed LAN "ipmitool raw 6 1" succeeds Confirmed Web access to new user account fails Confirmed Redfish acess to new user account fails Confirmed BMC console "ipmitool raw 6 1" fails
Used BMC console ipmitool to change user permissions from 15 to 4 (i.e. admin)
All of the prior tests work as expected.
Change-Id: I5f6941fefc4f80742e404de1f22ba10cbedf5d5d Signed-off-by: Johnathan Mantey <johnathanx.mantey@intel.com>
show more ...
|
#
b541a5a5 |
| 18-Jul-2019 |
NITIN SHARMA <nitin1x.sharma@intel.com> |
user_channel:Change fun ret&cmd cc as per New Std
Modified ipmi function return status code and command completion codes as per new standard.
Tested: verified using ipmitool commands. 1. create new
user_channel:Change fun ret&cmd cc as per New Std
Modified ipmi function return status code and command completion codes as per new standard.
Tested: verified using ipmitool commands. 1. create new user Command : ipmitool user set name 5 user5 Response: //user created successfully Command: ipmitool user set password 5 0penBmc\' //set password Response: Set User Password command successful (user 5)
2. Set password Command : ipmitool user set password 5 0penBmc\' Response: Set User Password command successful (user 5)
3. set channel access Command: ipmitool channel setaccess 1 5 callin=on ipmi=on link=on privilege=4 Response: Set User Access (channel 1 id 5) successful.
4. get channel access Command: ipmitool channel getaccess 1 5 Response: Maximum User IDs : 15 Enabled User IDs : 5
User ID : 5 User Name : user5 Fixed Name : No Access Available : call-in / callback Link Authentication : enabled IPMI Messaging : enabled Privilege Level : ADMINISTRATOR Enable Status : disabled
5. User list Command: ipmitool user list 1 Response: ID Name Callin Link Auth IPMI Msg Channel Priv Limit 1 root false true true ADMINISTRATOR 2 putty_operator true true true OPERATOR 3 ipmi_admin true true true ADMINISTRATOR 4 user2 false true true OPERATOR 5 user5 true true true ADMINISTRATOR 6 true false false NO ACCESS 7 true false false NO ACCESS 8 true false false NO ACCESS 9 true false false NO ACCESS 10 true false false NO ACCESS 11 true false false NO ACCESS 12 true false false NO ACCESS 13 true false false NO ACCESS 14 true false false NO ACCESS 15 true false false NO ACCESS
Signed-off-by: jayaprakash Mutyala <mutyalax.jayaprakash@intel.com> Signed-off-by: NITIN SHARMA <nitin1x.sharma@intel.com> Change-Id: I5f2c32f50edc2de204ac361364e21a61a4bcf237
show more ...
|
#
0b979b61 |
| 15-May-2019 |
Vernon Mauery <vernon.mauery@linux.intel.com> |
Remove unused function convertCurrentChannelNum(uint8_t)
convertCurrentChannelNum(uint8_t) was deprecated in favor of an actual working implementation. It was stubbed out for a while to provide a br
Remove unused function convertCurrentChannelNum(uint8_t)
convertCurrentChannelNum(uint8_t) was deprecated in favor of an actual working implementation. It was stubbed out for a while to provide a broken, backwards-compatible interface, but now that all of those have been removed in favor of the new interface that actually works: convertCurrentChannelNum(uint8_t, uint8_t), the old function can be removed.
Tested: Builds without any errors (means the old interface was removed)
Signed-off-by: Vernon Mauery <vernon.mauery@linux.intel.com> Change-Id: I3796e890c7cc34333116b71a97db268abf5f0e89
show more ...
|
#
16b8693d |
| 01-May-2019 |
Vernon Mauery <vernon.mauery@linux.intel.com> |
remove usage of sdbusplus::message::variant
sdbusplus has had its alias of std::variant in place for long enough. This changes all ipmid references to use std::variant directly instead of the sdbusp
remove usage of sdbusplus::message::variant
sdbusplus has had its alias of std::variant in place for long enough. This changes all ipmid references to use std::variant directly instead of the sdbusplus alias.
Tested-by: building and running ipmid
Change-Id: Id5b4136d4589aa598815edd3ef4202e64a7698e2 Signed-off-by: Vernon Mauery <vernon.mauery@linux.intel.com>
show more ...
|
#
735ee953 |
| 15-Feb-2019 |
Vernon Mauery <vernon.mauery@linux.intel.com> |
look up channel from D-Bus connection
With a single IPMI execution queue and multiple bridges, it is important for the queue to be able to map the incoming D-Bus message to a channel. Each bridge sh
look up channel from D-Bus connection
With a single IPMI execution queue and multiple bridges, it is important for the queue to be able to map the incoming D-Bus message to a channel. Each bridge should request a well-known name of the form "xyz.openbmc_project.Ipmi.Channel.<name>" where name is the name field in the /usr/share/ipmi-providers/channel_config.json file.
The mapping is done by registering a name change listener on D-Bus and then doing some name lookups via the D-Bus interface to match well-known names to unique names. Then, each incoming messages comes from a unique-named sender and can be resolved to which channel it came from.
For now, any unmapped channels will show up as INTRABMC, which is not ideal, but should not break things until the bridges can be converted to the correct name and D-Bus API.
Tested-by: run ipmid, start and stop bridges named xyz.openbmc_project.Ipmi.Channel.<NAME> and see the messages show that a new channel has been mapped. Then, with commands that use the ipmi::Context, the correct channel shows up.
Change-Id: I3e6bbfbf2e068020e07eeafe64eb09d70c03dc65 Signed-off-by: Vernon Mauery <vernon.mauery@linux.intel.com>
show more ...
|
#
55768e35 |
| 02-Mar-2019 |
Richard Marian Thomaiyar <richard.marian.thomaiyar@linux.intel.com> |
Cleanup: Get rid of duplicate getChannelName()
Get rid of duplicate getChannelName function. Use the one with uint8_t channelNum.
Tested-by: 1. Verified RMCP+ session establishement works with newl
Cleanup: Get rid of duplicate getChannelName()
Get rid of duplicate getChannelName function. Use the one with uint8_t channelNum.
Tested-by: 1. Verified RMCP+ session establishement works with newly created user
Change-Id: Iac22ec665ece97d4f9471cfb40220b472bdf01e8 Signed-off-by: Richard Marian Thomaiyar <richard.marian.thomaiyar@linux.intel.com>
show more ...
|
#
74a2102e |
| 13-Dec-2018 |
Johnathan Mantey <johnathanx.mantey@intel.com> |
IPMI channel to NIC device mapping modified within JSON config file
The IPMI to NIC channel mapping was done using a hard coded scheme. The scheme used generic channel names which were then mapped t
IPMI channel to NIC device mapping modified within JSON config file
The IPMI to NIC channel mapping was done using a hard coded scheme. The scheme used generic channel names which were then mapped to specific device names. The hard coded generic to specific naming convention is removed, and the JSON file contains the device name directly.
Change-Id: Ibc6821cae5a26f2666467aba5346d364053f2582 Signed-off-by: Johnathan Mantey <johnathanx.mantey@intel.com>
show more ...
|
#
2dfe7f8d |
| 11-Dec-2018 |
Johnathan Mantey <johnathanx.mantey@intel.com> |
Move public variables to the class private space.
Moved two variables only used by the class into it's private variable space.
Highlighted a method prototype that was buried within the variable lis
Move public variables to the class private space.
Moved two variables only used by the class into it's private variable space.
Highlighted a method prototype that was buried within the variable list.
Change-Id: Ie90d6b7db85ce1a9e445de87d612c41b4337d7fc Signed-off-by: Johnathan Mantey <johnathanx.mantey@intel.com>
show more ...
|
#
4c0435a2 |
| 11-Dec-2018 |
Johnathan Mantey <johnathanx.mantey@intel.com> |
Refactor the initialization of the channel data from the JSON
Copy the data retrieved from the JSON data files only after the contents of the two JSON configuration files have been read successfully
Refactor the initialization of the channel data from the JSON
Copy the data retrieved from the JSON data files only after the contents of the two JSON configuration files have been read successfully.
The code has also been changed to eliminate excess indentation in order to improve its readability and maintainability.
Change-Id: I2def95b854bef39a9e7b196ef340c3a06965653a Signed-off-by: Johnathan Mantey <johnathanx.mantey@intel.com>
show more ...
|
#
e5c4f1d7 |
| 10-Dec-2018 |
Johnathan Mantey <johnathanx.mantey@intel.com> |
Eliminate public function returning pointer to private class data
The getChannelDataPtr method breaks class encapsulation. Only class methods are supposed to have access to class private instance v
Eliminate public function returning pointer to private class data
The getChannelDataPtr method breaks class encapsulation. Only class methods are supposed to have access to class private instance variables.
Change-Id: I5dbfb75f0fa409b82a1e7f426b2034d39f7df9ad Signed-off-by: Johnathan Mantey <johnathanx.mantey@intel.com>
show more ...
|
#
f92261dc |
| 10-Dec-2018 |
Johnathan Mantey <johnathanx.mantey@intel.com> |
Update DBus initialization and use
The DBus instance variable is no longer a passed parameter to instance methods. Instance methods can access the private DBus variable directly.
Change-Id: Id0c98
Update DBus initialization and use
The DBus instance variable is no longer a passed parameter to instance methods. Instance methods can access the private DBus variable directly.
Change-Id: Id0c988802e5ad6c2757e7a243ee92331f447ac0d Signed-off-by: Johnathan Mantey <johnathanx.mantey@intel.com>
show more ...
|
#
73906b9c |
| 04-Jan-2019 |
Richard Marian Thomaiyar <richard.marian.thomaiyar@linux.intel.com> |
Use network interface name as channel name
Use network interface name as channel name for the LAN channels. Mapper related to convert IPMI LAN reference to network interface is not needed anymore, a
Use network interface name as channel name
Use network interface name as channel name for the LAN channels. Mapper related to convert IPMI LAN reference to network interface is not needed anymore, and the same has been removed.
Unit-test: verified ipmitool channel info for channel 1 & 2 and made sure it works fine as expected.
Change-Id: Id87e2924a2a21a846507d6378b1b615000280f06 Signed-off-by: Richard Marian Thomaiyar <richard.marian.thomaiyar@linux.intel.com>
show more ...
|
#
58317120 |
| 28-Nov-2018 |
Vernon Mauery <vernon.mauery@linux.intel.com> |
ipmid: channel: add max transfer size property
Each channel can have a different maximum transfer size. This should be exposed so that it is easier to tell how many bytes it is possible to send or r
ipmid: channel: add max transfer size property
Each channel can have a different maximum transfer size. This should be exposed so that it is easier to tell how many bytes it is possible to send or receive on a given channel.
Change-Id: Ie277eb7a802edc1deeefe201a7560d371920f519 Signed-off-by: Vernon Mauery <vernon.mauery@linux.intel.com>
show more ...
|
#
a39208e0 |
| 08-Dec-2018 |
Richard Marian Thomaiyar <richard.marian.thomaiyar@linux.intel.com> |
Add self channel number conversion function
Support for self channel number conversion added. This will be used by IPMI commands like GetUserAccess, GetChannelInfo etc. to query the details for the
Add self channel number conversion function
Support for self channel number conversion added. This will be used by IPMI commands like GetUserAccess, GetChannelInfo etc. to query the details for the channel in which the command is requested. Self channel number 0xE will be converted to proper channel number by this function
Unit-Test: Performed that commands received through ipmid channel are marked as channel 0xF and through netipmid as 0x1, when channel number 0xE is used
Change-Id: I53820558faf4439d9909d52e4e98d71c38e714b4 Signed-off-by: Richard Marian Thomaiyar <richard.marian.thomaiyar@linux.intel.com>
show more ...
|
#
6e1ba9ef |
| 28-Nov-2018 |
Richard Marian Thomaiyar <richard.marian.thomaiyar@linux.intel.com> |
Doxygen comments for enum & structure
Added doxygen comments for enums & structures for user & channel layers.
Unit-test: verified build.
Change-Id: Ie5af8d6cdd4c04cb396869b7a3dc44f84efedd19 Signe
Doxygen comments for enum & structure
Added doxygen comments for enums & structures for user & channel layers.
Unit-test: verified build.
Change-Id: Ie5af8d6cdd4c04cb396869b7a3dc44f84efedd19 Signed-off-by: Richard Marian Thomaiyar <richard.marian.thomaiyar@linux.intel.com>
show more ...
|
#
a45cb34f |
| 03-Dec-2018 |
Richard Marian Thomaiyar <richard.marian.thomaiyar@linux.intel.com> |
Update const uint8_t& to const uint8_t
Update const uint8_t& to const uint8_t usage. Passing by reference for small types are costly than passing it by value and hence the change is done
Unit-Test
Update const uint8_t& to const uint8_t
Update const uint8_t& to const uint8_t usage. Passing by reference for small types are costly than passing it by value and hence the change is done
Unit-Test 1. Performed build and verified regular user account creation and RMCP+ login
Change-Id: Ic2dd76795749148f82564677dde2a5db08520454 Signed-off-by: Richard Marian Thomaiyar <richard.marian.thomaiyar@linux.intel.com>
show more ...
|
#
9613ed76 |
| 01-Sep-2018 |
AppaRao Puli <apparao.puli@linux.intel.com> |
Synchronize channel info between network and ipmi
Synchronizing the channel privilege config between network interface(generic) and channel managament(IPMI). 1) During start-up get the network inte
Synchronize channel info between network and ipmi
Synchronizing the channel privilege config between network interface(generic) and channel managament(IPMI). 1) During start-up get the network interface privilege and update the IPMI data base(NV). 2) Catch the signal for network interface channel privilege and update the ipmi data base(Volatile and NV data). 3) During ipmi privilege update(NV), send it to network interface over DBUS.
Unit Test: Verified the changes by modifying MaxPrivilege in network interfaces and signal catching logic and vise versa as specified in description.
Change-Id: Iaa7e9e248f1cac6ab560137c8c136abdd44e190e Signed-off-by: AppaRao Puli <apparao.puli@linux.intel.com> Signed-off-by: Richard Marian Thomaiyar <richard.marian.thomaiyar@linux.intel.com>
show more ...
|
#
071f3f2f |
| 24-May-2018 |
AppaRao Puli <apparao.puli@intel.com> |
IPMI Channel commands implementation
IPMI Channel commands implemenation - squashed
commit e9a75d8dd6e89d17381f0310c7930586c6b79996 Author: AppaRao Puli <apparao.puli@intel.com> Date: Thu Jul 5 1
IPMI Channel commands implementation
IPMI Channel commands implemenation - squashed
commit e9a75d8dd6e89d17381f0310c7930586c6b79996 Author: AppaRao Puli <apparao.puli@intel.com> Date: Thu Jul 5 14:47:22 2018 +0530
Channel layer separation
De-coupling the channel management from ipmi channel commands implementation. This gives flexibility to load only needed stuff in different modules(host-ipmi or netipmid)
Change-Id: Ib334562beb9325f7768ed6a15475cae15af17b19 Signed-off-by: AppaRao Puli <apparao.puli@intel.com> Signed-off-by: Richard Marian Thomaiyar <richard.marian.thomaiyar@linux.intel.com>
commit 726ddf2af678ea6773f4b4b918fbd49be8c83e6a Author: AppaRao Puli <apparao.puli@intel.com> Date: Thu May 24 16:45:30 2018 +0530
IPMI Channel commands implementation
Following IPMI channel commands are implemented. 1) Set channel access (0x40) 2) Get channel access (0x41) 3) Get channel info (0x42)
Also added code supported for LAN configuration parameters 1) Authentication Type Support (selector #1) 2) Authentication Type Enables (selector #2)
Change-Id: Ic4156378c7756eca383dc3da52114fd119346ca6 Signed-off-by: AppaRao Puli <apparao.puli@intel.com> Signed-off-by: Richard Marian Thomaiyar <richard.marian.thomaiyar@linux.intel.com>
Change-Id: Ic4156378c7756eca383dc3da52114fd119346ca6 Signed-off-by: AppaRao Puli <apparao.puli@intel.com> Signed-off-by: Richard Marian Thomaiyar <richard.marian.thomaiyar@linux.intel.com>
show more ...
|