summaryrefslogtreecommitdiffstats
path: root/main.cpp
Commit message (Collapse)AuthorAgeFilesLines
* process: add IPMI error return mechanism and update errorsPatrick Venture2018-11-131-3/+5
| | | | | | | | | | | The IPMI packet validation code must return specific IPMI errors corresponding to what error has occurred instead of the invalid command error. Update all IPMI handler pieces to return more specific errors. Change-Id: I8d21e92015d84cc0880e3b83991aed7288e19eab Signed-off-by: Patrick Venture <venture@google.com>
* main: s/blobs-ipmid/blob-ipmid/ for library pathPatrick Venture2018-11-081-1/+1
| | | | | | | | | Fixup a typo in the library path. The library path will be specified in a later patchset from the configure.ac by default, but that typo would have just lived there instead. Change-Id: Ia9f95fc46e3835781e4dbe3b3fdb2d9d36b7e565 Signed-off-by: Patrick Venture <venture@google.com>
* main: catch exceptions when loading blob handlersBenjamin Fair2018-10-231-1/+12
| | | | | | | | | | If an error occurs while attempting to load the blob handlers (such as a filesystem error), the uncaught exception will crash the entire IPMI daemon. Instead, catch the exception and print an error message. Tested: ipmid doesn't crash when /usr/lib/blobs-ipmid is missing Signed-off-by: Benjamin Fair <benjaminfair@google.com> Change-Id: Ic316f6e5aa3c4bc6eba4fa2e561b338f4b20f606
* manager: return abstract base typePatrick Venture2018-10-041-3/+2
| | | | | | | | Unit-tests later required knowing the vtable for a BlobManager, and this should avoid that needless complication. Change-Id: I7a208d08c2065b7383fd5095e00d17c1ab3b0cf5 Signed-off-by: Patrick Venture <venture@google.com>
* main: now seeks out shared library handlers are load-timePatrick Venture2018-10-011-8/+6
| | | | | | | | | phosphor-ipmi-blobs now detects blob handlers compiled into shared libraries on the BMC and loads them at start-up when it's loaded by phosphor-host-ipmid. Change-Id: Ib1b6b8f75aa544a263d37f71e133a9a188704de3 Signed-off-by: Patrick Venture <venture@google.com>
* manager: add getBlobManager as an exported methodPatrick Venture2018-09-271-5/+3
| | | | | | | | getBlobManager will allow a library to get ahold of the BlobManager for registration purposes. Change-Id: I75f41601d10d59293c7752da8307507cc2c88434 Signed-off-by: Patrick Venture <venture@google.com>
* add example handlerPatrick Venture2018-09-201-0/+8
| | | | | | | | This adds an example handler to demonstrate how one can add a specific type of BLOB handler. Change-Id: Ib5421f1b945b45998b40d3939a4dab9cdf39aaa9 Signed-off-by: Patrick Venture <venture@google.com>
* initial drop of phosphor-ipmi-blobsPatrick Venture2018-09-151-0/+77
This implements a majority of the OEM IPMI BLOBS protocol. The only piece missing from this is the timed expiration of sessions. Change-Id: I82c9d17b625c94fc3340edcfabbbf1ffeb5ad7ac Signed-off-by: Patrick Venture <venture@google.com>
OpenPOWER on IntegriCloud