CycloneBOOT 2.6.6
Secure Bootloader for ARM Cortex-M MCU
Loading...
Searching...
No Matches
image_utils.h File Reference

CycloneBOOT Image Utils routines. More...

#include "image/image.h"

Go to the source code of this file.

Functions

cboot_error_t imageProcessAppHeader (ImageProcessContext *context)
 Process image application header. Once fully received it will parse the image header, check its integrity and retrieve needed data.
 
cboot_error_t imageProcessAppData (ImageProcessContext *context)
 Process receiving of the firmware data bloc by bloc. If firmware is encrypted the data will first be deciphered then depending of the user settings integrity or authentication or signature hash computation will be done one each data blocs. Finally each data bloc will write into the flash bank.
 
cboot_error_t imageProcessAppCheck (ImageProcessContext *context)
 Process receiving of the image check data. Depending of the user settings it could be the integrity or the authentication tag or signature of the image firmware data. Once fully received it will saved for further firmware validity verification.
 
void imageChangeState (Image *image, ImageState newState)
 Update Image state.
 
void imageCompareFirmwareVersions (ImageVersion *version_one, ImageVersion *version_two, ImageVersionComparisonFlag *result)
 Compare two image versions.
 

Detailed Description

CycloneBOOT Image Utils routines.

License

SPDX-License-Identifier: GPL-2.0-or-later

Copyright (C) 2021-2026 Oryx Embedded SARL. All rights reserved.

This file is part of CycloneBOOT Open.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

Author
Oryx Embedded SARL (www.oryx-embedded.com)
Version
2.6.6

Function Documentation

◆ imageChangeState()

void imageChangeState ( Image *  image,
ImageState  newState 
)

Update Image state.

Parameters
[in]contextPointer to the Image context
[in]newStateNew state to switch to

◆ imageCompareFirmwareVersions()

void imageCompareFirmwareVersions ( ImageVersion *  version_one,
ImageVersion *  version_two,
ImageVersionComparisonFlag *  result 
)

Compare two image versions.

Parameters
[in]version_onePointer to the version one to be compared
[in]version_twoPointer to the version one to be compared
[in/out]result Result of the comparison operation

◆ imageProcessAppCheck()

cboot_error_t imageProcessAppCheck ( ImageProcessContext *  context)

Process receiving of the image check data. Depending of the user settings it could be the integrity or the authentication tag or signature of the image firmware data. Once fully received it will saved for further firmware validity verification.

Parameters
[in,out]contextPointer to the ImageProcess context
Returns
Error code.

◆ imageProcessAppData()

cboot_error_t imageProcessAppData ( ImageProcessContext *  context)

Process receiving of the firmware data bloc by bloc. If firmware is encrypted the data will first be deciphered then depending of the user settings integrity or authentication or signature hash computation will be done one each data blocs. Finally each data bloc will write into the flash bank.

Parameters
[in,out]contextPointer to the ImageProcess context
Returns
Error code.

◆ imageProcessAppHeader()

cboot_error_t imageProcessAppHeader ( ImageProcessContext *  context)

Process image application header. Once fully received it will parse the image header, check its integrity and retrieve needed data.

Parameters
[in,out]contextPointer to the ImageProcess context
Returns
Error code.