示例#1
0
static int oem_uniqueid_handler(int argc, char **argv)
{
    int retval = -1;
    ST_RESULT result;
    uint8_t uniqueKey[SECURE_TOKEN_UNIQUE_KEY_SIZE_IN_BYTES];
    char hexuniqueKey[SECURE_TOKEN_UNIQUE_KEY_SIZE_IN_BYTES * 3 + 2];

    DX_CC_HostInit();
    result = sep_sectoken_request_token(uniqueKey);
    pr_info("sep_sectoken_request_token() == 0x%x\n", result);
    if (ST_FAIL_SEP_DRIVER_OP == result)
        pr_info("sep_sectoken_request_token() ==" "ST_FAIL_SEP_DRIVER_OP\n");
    retval = (result != ST_SUCCESSFUL);

    if (retval != 0)
        fastboot_fail("cannot get uniqueid");
    else {
        snhexdump(hexuniqueKey, sizeof(hexuniqueKey) - 1, uniqueKey,
                  SECURE_TOKEN_UNIQUE_KEY_SIZE_IN_BYTES);
        pr_info("%s\n", hexuniqueKey);
        hexdump_buffer(uniqueKey, SECURE_TOKEN_UNIQUE_KEY_SIZE_IN_BYTES, fastboot_info, 16);
    }
    fastboot_okay("");
    DX_CC_HostFinish();
    return retval;
}
static void output_data(uint8_t *data, size_t size)
{
	size_t i;

	if (output_fd != -1)
		for (i = 0 ; i < size ; i++)
			write(output_fd, data + i, sizeof(uint8_t));
	else
		hexdump_buffer(data, size, print_fun, size);
}