From f5a90f3e352f19db029e69e0384196c763703afe Mon Sep 17 00:00:00 2001 From: Markus Hilger Date: Mon, 27 Jul 2026 15:00:11 +0200 Subject: [PATCH] Fail set_user_priv on a rejected privilege change Every other /data call checks the status, this one discarded the response, so an SMM that refused the user record was reported to the caller as a successful privilege change. --- confluent_server/aiohmi/ipmi/oem/lenovo/nextscale.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/confluent_server/aiohmi/ipmi/oem/lenovo/nextscale.py b/confluent_server/aiohmi/ipmi/oem/lenovo/nextscale.py index cba7ad2c..33c29762 100644 --- a/confluent_server/aiohmi/ipmi/oem/lenovo/nextscale.py +++ b/confluent_server/aiohmi/ipmi/oem/lenovo/nextscale.py @@ -735,9 +735,11 @@ class SMMClient(object): username = bytes(rsp['data']).rstrip(b'\x00') if not isinstance(username, str): username = username.decode('utf8') - await self.webrequest( + rsp, status = await self.webrequest( '/data', 'set=user({0},1,{1},511,,4,15,0)'.format( uid, username)) + if status != 200: + raise Exception(rsp) async def reseat_bay(self, bay): bay = int(bay)