Add SSIF in service config manager
Why we want to control ssifbridge:
It is a requirement to allow user enabling/disabling.
To enhance security, SSIF should be disabled before entering the OS
environment. This can be easily achieved through service configuration.
Add SSIF to map table and set it as false.
true → This service is started through a systemd socket.
false → This service is a regular systemd service.
Verification:
Validated SSIF device presence and ssifbridge DBus service behavior
under both enabled and disabled configurations using QEMU-based
evb-ast2600 simulation.
Test Steps:
[Case 1] No SSIF device present:
- Boot QEMU without SSIF
- Verified that /dev/ipmi-ssif-host does NOT exist
- Confirmed ssifbridge is NOT registered under
/xyz/openbmc_project/control/service
[Case 2] SSIF device present:
- Boot QEMU with SSIF enabled
- Verified that /dev/ipmi-ssif-host exists
- Confirmed ssifbridge registered under
/xyz/openbmc_project/control/service
- Validated ssifbridge properties: Enabled=true, Running=true
[Case 3] Disable ssifbridge service:
- Set Enabled=false and Running=false via busctl
- Verified systemctl shows ssifbridge.service is inactive (dead)
[Case 4] Re-enable ssifbridge service:
- Set Enabled=true and Running=true via busctl
- Verified systemctl shows ssifbridge.service is active and running
Result:
PASS: All expected behaviors observed in each case
PASS: DBus properties reflect correct service state
PASS: systemd service state matches DBus setting
Tested on:
- evb-ast2600 QEMU environment (with/without SSIF)
Change-Id: I7e6f642403721a020cdd33940b2d05d33a026175
Signed-off-by: Leon Huang <leonhuang@nvidia.com>
diff --git a/src/main.cpp b/src/main.cpp
index 1f1f912..ab706cb 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -41,7 +41,7 @@
managedServices = {{"phosphor-ipmi-net", false}, {"bmcweb", false},
{"phosphor-ipmi-kcs", false}, {"obmc-ikvm", false},
{"obmc-console", false}, {"dropbear", true},
- {"obmc-console-ssh", true}};
+ {"obmc-console-ssh", true}, {"ssifbridge", false}};
enum class UnitType
{