[U-Boot] fs/fs.c - error handling needed?

Wolfgang Denk wd at denx.de
Mon Oct 7 15:55:55 CEST 2013


Dear Tom,

In message <20131007121252.GS15917 at bill-the-cat> you wrote:
> 
> > 331         filename = argv[3];
> > 332         addr = simple_strtoul(argv[4], NULL, cmdline_base);
> > 333         bytes = simple_strtoul(argv[5], NULL, cmdline_base);
> > 334         if (argc >= 7)
> > 335                 pos = simple_strtoul(argv[6], NULL, cmdline_base);
> > 336         else
> > 337                 pos = 0;
> > 
> > 
> > Should we not perform at least minimal error checking, i. e. verify
> > that no garbage arguments have been passed to that function?
>
> Yes, we ought to.  If you don't pass fatwrite the right number of
> arguments we get data aborts, for example.

Well, this is not a problem here, in do_save():

...
325         if (argc < 6 || argc > 7)
326                 return CMD_RET_USAGE;
...

And are you sure of "fatwrite"?  This calls do_fat_fswrite(). and here
I also see some test:

...
 98         if (argc < 5)
 99                 return cmd_usage(cmdtp);
...

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Men don't talk peace unless they're ready to back it up with war.
	-- Col. Green, "The Savage Curtain", stardate 5906.4


More information about the U-Boot mailing list