summaryrefslogtreecommitdiffstats
path: root/api
Commit message (Collapse)AuthorAgeFilesLines
* Make sure that argv[] argument pointers are not modified.Wolfgang Denk2010-07-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The hush shell dynamically allocates (and re-allocates) memory for the argument strings in the "char *argv[]" argument vector passed to commands. Any code that modifies these pointers will cause serious corruption of the malloc data structures and crash U-Boot, so make sure the compiler can check that no such modifications are being done by changing the code into "char * const argv[]". This modification is the result of debugging a strange crash caused after adding a new command, which used the following argument processing code which has been working perfectly fine in all Unix systems since version 6 - but not so in U-Boot: int main (int argc, char **argv) { while (--argc > 0 && **++argv == '-') { /* ====> */ while (*++*argv) { switch (**argv) { case 'd': debug++; break; ... default: usage (); } } } ... } The line marked "====>" will corrupt the malloc data structures and usually cause U-Boot to crash when the next command gets executed by the shell. With the modification, the compiler will prevent this with an error: increment of read-only location '*argv' N.B.: The code above can be trivially rewritten like this: while (--argc > 0 && **++argv == '-') { char *arg = *argv; while (*++arg) { switch (*arg) { ... Signed-off-by: Wolfgang Denk <wd@denx.de> Acked-by: Mike Frysinger <vapier@gentoo.org>
* Move arch/ppc to arch/powerpcStefan Roese2010-04-211-0/+0
| | | | | | | | | | | | | | | | | As discussed on the list, move "arch/ppc" to "arch/powerpc" to better match the Linux directory structure. Please note that this patch also changes the "ppc" target in MAKEALL to "powerpc" to match this new infrastructure. But "ppc" is kept as an alias for now, to not break compatibility with scripts using this name. Signed-off-by: Stefan Roese <sr@denx.de> Acked-by: Wolfgang Denk <wd@denx.de> Acked-by: Detlev Zundel <dzu@denx.de> Acked-by: Kim Phillips <kim.phillips@freescale.com> Cc: Peter Tyser <ptyser@xes-inc.com> Cc: Anatolij Gustschin <agust@denx.de>
* api: Fix broken build on ARM.Piotr Ziecik2009-07-231-2/+0
| | | | | | | | This patch fixes broken build introduced by commit 84bf7ca522e94ec402a1264b01971b924b7e268f (api: remove un-needed ifdef CONFIG_API already handle by the Makefile). Signed-off-by: Piotr Ziecik <kosmo@semihalf.com>
* 83xx: Replace CONFIG_MPC83XX with CONFIG_MPC83xxPeter Tyser2009-06-121-1/+1
| | | | | | | | Use the standard lowercase "xx" capitalization that other Freescale architectures use for CPU defines to prevent confusion and errors Signed-off-by: Peter Tyser <ptyser@xes-inc.com> Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
* api: remove un-needed ifdef CONFIG_API already handle by the MakefileJean-Christophe PLAGNIOL-VILLARD2009-05-155-23/+0
| | | | Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
* rename CFG_ macros to CONFIG_SYSJean-Christophe PLAGNIOL-VILLARD2008-10-181-4/+4
| | | | Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
* api: fix type mismatchMatthias Fuchs2008-10-141-1/+1
| | | | | | | This patch fixes a type mismatch and thus removes a compiler warning when compiling with CONFIG_API on powerpc. Signed-off-by: Matthias Fuchs <matthias.fuchs@esd-electronics.com>
* api: Fix building with CONFIG_APIMatthias Fuchs2008-10-141-0/+4
| | | | | | | | | This patch fixes building with CONFIG_API and CONFIG_USB_STORAGE. USB_MAX_STOR_DEV is defined in include/usb.h, but needed in api/api_storage.c. Signed-off-by: Matthias Fuchs <matthias.fuchs@esd-electronics.com>
* rename CFG_ENV macros to CONFIG_ENVJean-Christophe PLAGNIOL-VILLARD2008-09-101-1/+1
| | | | Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
* Fix merge problemsStefan Roese2008-08-061-12/+33
| | | | Signed-off-by: Stefan Roese <sr@denx.de>
* environment: cleanup prototype declarations of env functions.Wolfgang Denk2008-05-141-2/+1
| | | | Signed-off-by: Wolfgang Denk <wd@denx.de>
* Revert "Change env_get_char from a global function ptr to a function."Wolfgang Denk2008-05-121-0/+1
| | | | | This reverts commit c0559be371b2a64b1a817088c3308688e2182f93 which is known to break booting from dataflash and NAND.
* API: remove duplicate syscall checkJean-Christophe PLAGNIOL-VILLARD2008-05-121-1/+1
| | | | Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
* Change env_get_char from a global function ptr to a function.Joakim Tjernlund2008-04-171-1/+0
| | | | | | This avoids an early global data reference. Signed-off-by: Joakim Tjernlund <Joakim.Tjernlund@transmode.se>
* Fix remaining CONFIG_COMMANDSJean-Christophe PLAGNIOL-VILLARD2008-02-141-3/+3
| | | | | | | update comments Fix coding style Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
* API: Convert conditional building to the new scheme.Rafal Jaworowski2008-01-291-3/+2
| | | | | | | This fixes a build breakage with CONFIG_API enabled, which appeared after the recent changes in the U-Boot build system. Signed-off-by: Rafal Jaworowski <raj@semihalf.com>
* Coding Style cleanup; update CHANGELOGWolfgang Denk2008-01-103-8/+8
| | | | Signed-off-by: Wolfgang Denk <wd@denx.de>
* API for external applications.Rafal Jaworowski2008-01-098-0/+1435
This is an API for external (standalone) applications running on top of U-Boot, and is meant to be more extensible and robust than the existing jumptable mechanism. It is similar to UNIX syscall approach. See api/README for more details. Included is the demo application using this new framework (api_examples). Please note this is still an experimental feature, and is turned off by default. Signed-off-by: Rafal Jaworowski <raj@semihalf.com>