固件验签定制要求及使用指导
更新时间: 2026/04/16
在Gitcode上查看源码

1. 固件验签定制要求

定制固件验签需要配置CSR,需要在FirmwareCustomConfig对象中配置CustomVerifyEnabled和CustomVerifyLibraryName属性。属性说明见下表:

属性名属性类型取值说明
CustomVerifyEnabledBoolean客户验签流程定制使能,true:使能;false:禁用,默认值为false
CustomVerifyLibraryNameString客户验签流程定制库名称,默认值为"hpm_parser"

2. 流程

  1. 客户新增/opt/bmc/libmc/luaclib/xxx.so,作为定制hpm解析的接口库(xxx为定制so名称,下同)

  2. 客户自行实现xxx.so内容,需要提供方法parse_hpm_file供lua接口调用,入参file_path为hpm包路径;响应为状态码,通过约定返回的状态码标识,确定解析状态。当前实现返回状态码如下:

  • 正数表示解析成功,负数表示失败,返回负数则直接退出升级流程;
  • 返回状态码为1:解析验证固件成功,需要继续iBMC的验签+解析+升级;
  • 返回状态码为2:解析验证固件成功,需要继续iBMC的解析+升级;
  • 返回状态码为3:解析验证固件成功,直接结束固件解析,跳到后续升级

3. 配置示例:

json
"FirmwareCustomConfig": {
  "CustomVerifyEnabled": true, //客户签名定制使能
  "CustomVerifyLibraryName": "sign_verify" //客户签名定制库为sign_verify.so
}

4. 客户定制仓自行实现定制库内容流程图