[FL-2527] Updater: Migrating to new manifest path convention (#1213)
* Updater: Migrating to new manifest path convention * RPC: Added update preparation status to RPC * RPC: bumped protobuf submodule * Bumped protobuf_version.h * FuriCore: add missing include. Lib: make mlib smaller * Explicitly tell where we have doubles and fix random in animations * makefile: added -DLFS_NO_DEBUG * Updater: path len constant dedup * Updater: checking for hardware version match before parsing manifest * LD: moved _DRIVER_CONTEXT sections to .bss, where they belong. * LD: avoiding PROBGITS warning, moved _CONTEXT to data * Updater: Added version check on update package - refusing to install outdated Co-authored-by: あく <alleteam@gmail.com>
This commit is contained in:
@@ -16,6 +16,17 @@ typedef enum _PB_System_RebootRequest_RebootMode {
|
||||
PB_System_RebootRequest_RebootMode_UPDATE = 2
|
||||
} PB_System_RebootRequest_RebootMode;
|
||||
|
||||
typedef enum _PB_System_UpdateResponse_UpdateResultCode {
|
||||
PB_System_UpdateResponse_UpdateResultCode_OK = 0,
|
||||
PB_System_UpdateResponse_UpdateResultCode_ManifestPathInvalid = 1,
|
||||
PB_System_UpdateResponse_UpdateResultCode_ManifestFolderNotFound = 2,
|
||||
PB_System_UpdateResponse_UpdateResultCode_ManifestInvalid = 3,
|
||||
PB_System_UpdateResponse_UpdateResultCode_StageMissing = 4,
|
||||
PB_System_UpdateResponse_UpdateResultCode_StageIntegrityError = 5,
|
||||
PB_System_UpdateResponse_UpdateResultCode_ManifestPointerError = 6,
|
||||
PB_System_UpdateResponse_UpdateResultCode_TargetMismatch = 7
|
||||
} PB_System_UpdateResponse_UpdateResultCode;
|
||||
|
||||
/* Struct definitions */
|
||||
typedef struct _PB_System_DeviceInfoRequest {
|
||||
char dummy_field;
|
||||
@@ -84,6 +95,10 @@ typedef struct _PB_System_RebootRequest {
|
||||
PB_System_RebootRequest_RebootMode mode;
|
||||
} PB_System_RebootRequest;
|
||||
|
||||
typedef struct _PB_System_UpdateResponse {
|
||||
PB_System_UpdateResponse_UpdateResultCode code;
|
||||
} PB_System_UpdateResponse;
|
||||
|
||||
typedef struct _PB_System_GetDateTimeResponse {
|
||||
bool has_datetime;
|
||||
PB_System_DateTime datetime;
|
||||
@@ -100,6 +115,10 @@ typedef struct _PB_System_SetDateTimeRequest {
|
||||
#define _PB_System_RebootRequest_RebootMode_MAX PB_System_RebootRequest_RebootMode_UPDATE
|
||||
#define _PB_System_RebootRequest_RebootMode_ARRAYSIZE ((PB_System_RebootRequest_RebootMode)(PB_System_RebootRequest_RebootMode_UPDATE+1))
|
||||
|
||||
#define _PB_System_UpdateResponse_UpdateResultCode_MIN PB_System_UpdateResponse_UpdateResultCode_OK
|
||||
#define _PB_System_UpdateResponse_UpdateResultCode_MAX PB_System_UpdateResponse_UpdateResultCode_TargetMismatch
|
||||
#define _PB_System_UpdateResponse_UpdateResultCode_ARRAYSIZE ((PB_System_UpdateResponse_UpdateResultCode)(PB_System_UpdateResponse_UpdateResultCode_TargetMismatch+1))
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
@@ -120,6 +139,7 @@ extern "C" {
|
||||
#define PB_System_ProtobufVersionRequest_init_default {0}
|
||||
#define PB_System_ProtobufVersionResponse_init_default {0, 0}
|
||||
#define PB_System_UpdateRequest_init_default {NULL}
|
||||
#define PB_System_UpdateResponse_init_default {_PB_System_UpdateResponse_UpdateResultCode_MIN}
|
||||
#define PB_System_PowerInfoRequest_init_default {0}
|
||||
#define PB_System_PowerInfoResponse_init_default {NULL, NULL}
|
||||
#define PB_System_PingRequest_init_zero {NULL}
|
||||
@@ -136,6 +156,7 @@ extern "C" {
|
||||
#define PB_System_ProtobufVersionRequest_init_zero {0}
|
||||
#define PB_System_ProtobufVersionResponse_init_zero {0, 0}
|
||||
#define PB_System_UpdateRequest_init_zero {NULL}
|
||||
#define PB_System_UpdateResponse_init_zero {_PB_System_UpdateResponse_UpdateResultCode_MIN}
|
||||
#define PB_System_PowerInfoRequest_init_zero {0}
|
||||
#define PB_System_PowerInfoResponse_init_zero {NULL, NULL}
|
||||
|
||||
@@ -157,6 +178,7 @@ extern "C" {
|
||||
#define PB_System_ProtobufVersionResponse_major_tag 1
|
||||
#define PB_System_ProtobufVersionResponse_minor_tag 2
|
||||
#define PB_System_RebootRequest_mode_tag 1
|
||||
#define PB_System_UpdateResponse_code_tag 1
|
||||
#define PB_System_GetDateTimeResponse_datetime_tag 1
|
||||
#define PB_System_SetDateTimeRequest_datetime_tag 1
|
||||
|
||||
@@ -241,6 +263,11 @@ X(a, POINTER, SINGULAR, STRING, update_manifest, 1)
|
||||
#define PB_System_UpdateRequest_CALLBACK NULL
|
||||
#define PB_System_UpdateRequest_DEFAULT NULL
|
||||
|
||||
#define PB_System_UpdateResponse_FIELDLIST(X, a) \
|
||||
X(a, STATIC, SINGULAR, UENUM, code, 1)
|
||||
#define PB_System_UpdateResponse_CALLBACK NULL
|
||||
#define PB_System_UpdateResponse_DEFAULT NULL
|
||||
|
||||
#define PB_System_PowerInfoRequest_FIELDLIST(X, a) \
|
||||
|
||||
#define PB_System_PowerInfoRequest_CALLBACK NULL
|
||||
@@ -266,6 +293,7 @@ extern const pb_msgdesc_t PB_System_PlayAudiovisualAlertRequest_msg;
|
||||
extern const pb_msgdesc_t PB_System_ProtobufVersionRequest_msg;
|
||||
extern const pb_msgdesc_t PB_System_ProtobufVersionResponse_msg;
|
||||
extern const pb_msgdesc_t PB_System_UpdateRequest_msg;
|
||||
extern const pb_msgdesc_t PB_System_UpdateResponse_msg;
|
||||
extern const pb_msgdesc_t PB_System_PowerInfoRequest_msg;
|
||||
extern const pb_msgdesc_t PB_System_PowerInfoResponse_msg;
|
||||
|
||||
@@ -284,6 +312,7 @@ extern const pb_msgdesc_t PB_System_PowerInfoResponse_msg;
|
||||
#define PB_System_ProtobufVersionRequest_fields &PB_System_ProtobufVersionRequest_msg
|
||||
#define PB_System_ProtobufVersionResponse_fields &PB_System_ProtobufVersionResponse_msg
|
||||
#define PB_System_UpdateRequest_fields &PB_System_UpdateRequest_msg
|
||||
#define PB_System_UpdateResponse_fields &PB_System_UpdateResponse_msg
|
||||
#define PB_System_PowerInfoRequest_fields &PB_System_PowerInfoRequest_msg
|
||||
#define PB_System_PowerInfoResponse_fields &PB_System_PowerInfoResponse_msg
|
||||
|
||||
@@ -304,6 +333,7 @@ extern const pb_msgdesc_t PB_System_PowerInfoResponse_msg;
|
||||
#define PB_System_ProtobufVersionResponse_size 12
|
||||
#define PB_System_RebootRequest_size 2
|
||||
#define PB_System_SetDateTimeRequest_size 24
|
||||
#define PB_System_UpdateResponse_size 2
|
||||
|
||||
#ifdef __cplusplus
|
||||
} /* extern "C" */
|
||||
|
||||
Reference in New Issue
Block a user