From 047677bb4b8a9273222048cef44bbc389bece932 Mon Sep 17 00:00:00 2001 From: "Jose M. Guisado" Date: Mon, 26 Jul 2021 13:43:47 +0200 Subject: #1054 Fix og_legacy_partition code buffer size The "code" member of the og_legacy_partition is used to hold the string of the partition type *name* for legacy parameter strings. Example: par=2*cpt=LINUX-SWAP*sfi=LINUX-SWAP*tam=10000000*ope=0 Problem: Buffer size is smaller than possible values for this member. Fix: Increase buffer size up to the max length defined in the DB for the corresponding column. --- src/dbi.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/dbi.h b/src/dbi.h index 33b7afc..cffb458 100644 --- a/src/dbi.h +++ b/src/dbi.h @@ -27,6 +27,7 @@ void og_dbi_close(struct og_dbi *db); #define OG_DB_ROOM_LOC_MAXLEN 255 #define OG_DB_SERIAL_NUMBER_MAXLEN 25 #define OG_DB_IMAGE_DESCRIPTION_MAXLEN 250 +#define OG_DB_PART_NAME_MAXLEN 250 #define OG_DB_IMAGE_NAME_MAXLEN 50 #define OG_DB_FILESYSTEM_MAXLEN 16 #define OG_DB_NETDRIVER_MAXLEN 30 @@ -63,7 +64,7 @@ struct og_image { struct og_legacy_partition { char partition[OG_DB_SMALLINT_MAXLEN + 1]; - char code[OG_DB_INT8_MAXLEN + 1]; + char code[OG_DB_PART_NAME_MAXLEN + 1]; char size[OG_DB_INT_MAXLEN + 1]; char filesystem[OG_DB_FILESYSTEM_MAXLEN + 1]; char format[2]; /* Format is a boolean 0 or 1 => length is 2 */ -- cgit v1.2.3-18-g5258