Hi Anatolij, > The length of configured MTDPARTS_DEFAULT string > could be greather than console printbuffer size. > Check the lenght of the string before printing > to prevent U-Boot crashes. > > Signed-off-by: Anatolij Gustschin <ag...@denx.de> > --- > common/cmd_mtdparts.c | 8 ++++++++ > 1 files changed, 8 insertions(+), 0 deletions(-) > > diff --git a/common/cmd_mtdparts.c b/common/cmd_mtdparts.c > index 230e96e..d4cb194 100644 > --- a/common/cmd_mtdparts.c > +++ b/common/cmd_mtdparts.c > @@ -1254,6 +1254,14 @@ static void list_partitions(void) > printf("\ndefaults:\n"); > printf("mtdids : %s\n", > mtdids_default ? mtdids_default : "none"); > + > + /* Check to prevent printbuffer overflows */ > + if (mtdparts_default && strlen(mtdparts_default) > CONFIG_SYS_PBSIZE) { > + puts("Warning: mtdparts too long," > + " please increase CONFIG_SYS_PBSIZE\n"); > + return; > + } > + > printf("mtdparts: %s\n", > mtdparts_default ? mtdparts_default : "none"); > }
If I understand this correctly, then the real problem is the console code crashing without a warning, correct? If so, then please put such a warning in the correct place instead of fixing the caller sites. Thanks Detlev -- Man sei weder unzufrieden mit sich selbst - denn das waere Kleinmut - noch selbstzufrieden - denn das waere Dummheit. --- Baltasar Gracian -- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-40 Fax: (+49)-8142-66989-80 Email: d...@denx.de _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot