| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The dbus call to the main ipmid queue was up to this point synchronous,
which means it blocks all other networking and execution until the main
queue returns (which may be on the order of seconds for some commands).
This is an unacceptable delay, especially when this queue is responsible
for timely updates of SOL traffic.
This turns the call into an asynchronous one by leveraging shared
pointers and an optional action on destruction. So as long as a
reference to the Handler object exists, it will live on, waiting to send
its response. Once the async dbus call has returned and set the reply in
the Handler, it will drop the reference to the shared pointer and the
destructor will send out the response over the channel.
Tested-by: Run multiple sessions at the same time while monitoring dbus
traffic. See that the requests and responses may be
interleaved instead of serial.
Change-Id: I16fca8dc3d13624eeb1592ec36d1a9af6575f115
Signed-off-by: Vernon Mauery <vernon.mauery@linux.intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
All ipmi processing is now done in the main ipmi queue
(phosphor-host-ipmid) and messages are passed via dbus. This removes the
handler registration for providers and just passes the message along to
the main queue instead of executing the provider in-situ. This makes the
net-ipmid more like the bt-bridge or kcs-bridge that are simple channel
handlers that move messages from a medium to the queue.
Change-Id: Icc9d580fd5546505c95acf0bea47c70e09809b7d
Signed-off-by: Vernon Mauery <vernon.mauery@linux.intel.com>
|
|
|
|
|
|
|
|
| |
This is part of a cleanup and standardization effort of code to get
existing code up to date.
Change-Id: I0c982ef8d7afa2f56a9cd204bb8ac3112769641c
Signed-off-by: Vernon Mauery <vernon.mauery@linux.intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Restrict IPMI command execution based on privilege of
the user session.
Unit test:
1. Verified the command execution as per the privilege
2. Executing higher privilege IPMI command fails
Change-Id: I5901f2b18f4f7ecb6311882de558f75b61836109
Signed-off-by: Richard Marian Thomaiyar <richard.marian.thomaiyar@linux.intel.com>
|
|
|
|
|
|
|
|
| |
For external header files, us the system path include style to fit with
the standard coding style of the project.
Change-Id: Iba08b6b5adf20ebf7cebdb2d39aaad84463e3ff3
Signed-off-by: Vernon Mauery <vernon.mauery@linux.intel.com>
|
|
|
|
|
|
|
|
| |
Lots of whitespace change. Let clang-format do its job and keep the code
looking nice.
Change-Id: Idfcad1a99cab8170d55a06163de8ad3f420b68b7
Signed-off-by: Vernon Mauery <vernon.mauery@linux.intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Any unhandled exception in the IPMI command handler
crashes the ipmi stack. IPMI command handler also becomes
bulky to catch all exceptions which must return unspecified
errors. This fix adds a catch in the ipmi router command handler
functions, and returns IPMI_CC_UNSPECIFIED_ERROR for all the
unhandled exceptions. With this fix, exceptions which has to
throw IPMI_CC_UNSPECIFIED_ERROR, doesn't needs to be handled in the
command handlers.
Change-Id: Icf8741925d857170b2f748906edbaf6cf1e55cdc
Signed-off-by: Richard Marian Thomaiyar <richard.marian.thomaiyar@linux.intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The error msg:"E> Table:: Command Not found: 0xb03e" is getting dumped
into journal for every IPMI request to BMC. Here the command:b03e - is
a group extensions command to query about HPM compatibility. This is
not a standard command ,issued by ipmitool to gather information, can
be ignored.
Resolves openbmc/openbmc#3100
Change-Id: I5d89ad61144f11e80afa3bba39835119f5d96eb6
Signed-off-by: Nagaraju Goruganti <ngorugan@in.ibm.com>
|
|
|
|
|
|
|
|
|
|
| |
net-ipmid is noisy in terms of journal logging. A small step towards
cleaning that up.
Partially Resolves openbmc/openbmc#2507
Change-Id: I78e0286fb37086373c86dca276c0948f4595cb0a
Signed-off-by: Nagaraju Goruganti <ngorugan@in.ibm.com>
|
|
|
|
|
|
|
|
|
|
| |
Host ipmid handler will not re-register commands,
so make the net handler follow this by skipping later registrations.
Also pass size of command to handlers for length checks to work.
Host ipmi handler passes this parameter correctly.
Change-Id: I8eb1d645eff405b91e471433085025b6835f0bd2
Signed-off-by: Feist, James <james.feist@linux.intel.com>
|
|
|
|
|
| |
Change-Id: Ib943cd6487beb7232d5e1ead521febd992c83ce1
Signed-off-by: Tom Joseph <tomjoseph@in.ibm.com>
|
|
|
|
|
|
|
|
| |
This patch defines an entry for hooking IPMI provider commands in
the command table and to execute the commands.
Change-Id: I8a8fb7c06ccc1a3c4397540419b983556b9da6c3
Signed-off-by: Tom Joseph <tomjoseph@in.ibm.com>
|
|
This class encapsulates the details regarding the execution of the
command and has routines for registering and execution of
the command.
Change-Id: Idf26e1f60f9f89aa5261fde89577ec7ddc26c096
Signed-off-by: Tom Joseph <tomjoseph@in.ibm.com>
|