Skip to content

Manufacturing data "secure" attribute is empty. #342

Description

@user8174

Hello,
At least when re-provisioning a CM5, it appears that the manufacturing data "secure" field is empty. Even though the CM5 is secure boot provisioned.
Tested with rpi-sb-provisioner version 2.3.1.

It looks like this attribute is gathered here:

SECURE=$(metadata_get "secure")

Assumably by calling the fastboot GetSecure endpoint:
https://github.com/raspberrypi/rpi-fastbootd/blob/main/fastboot/device/variables.cpp#L1385

At a glance, the fastboot GetSecure might not be up to date:

bool GetSecure(FastbootDevice* /* device */, const std::vector<std::string>& /* args */,
               std::string* message) {
    pid_t pid;
    char *arg[] = {"/usr/bin/rpi-otp-private-key", "-c", NULL};
    int ret;
    int wstatus;
    ret = posix_spawnp(&pid, "/usr/bin/rpi-otp-private-key", NULL, NULL, arg, NULL);

Calling the rpi-otp-private-key may not behave as expected since keys can now be locked.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions