24 Jul, 2013

1 commit


07 Mar, 2012

1 commit


25 Jul, 2010

1 commit

  • Lots of code use this construct:

    cmd_usage(cmdtp);
    return 1;

    Change cmd_usage() let it return 1 - then we can replace all these
    ocurrances by

    return cmd_usage(cmdtp);

    This fixes a few places with incorrect return code handling, too.

    Signed-off-by: Wolfgang Denk

    Wolfgang Denk
     

05 Jul, 2010

1 commit

  • 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
    Acked-by: Mike Frysinger

    Wolfgang Denk
     

13 Jun, 2009

1 commit

  • Many of the help messages were not really helpful; for example, many
    commands that take no arguments would not print a correct synopsis
    line, but "No additional help available." which is not exactly wrong,
    but not helpful either.

    Commit ``Make "usage" messages more helpful.'' changed this
    partially. But it also became clear that lots of "Usage" and "Help"
    messages (fields "usage" and "help" in struct cmd_tbl_s respective)
    were actually redundant.

    This patch cleans this up - for example:

    Before:
    => help dtt
    dtt - Digital Thermometer and Thermostat

    Usage:
    dtt - Read temperature from digital thermometer and thermostat.

    After:
    => help dtt
    dtt - Read temperature from Digital Thermometer and Thermostat

    Usage:
    dtt

    Signed-off-by: Wolfgang Denk

    Wolfgang Denk
     

28 Jan, 2009

2 commits


11 Sep, 2008

1 commit


21 Nov, 2007

1 commit


11 Jul, 2007

1 commit


09 Jul, 2007

1 commit


04 Jul, 2007

1 commit


02 Jul, 2003

1 commit


30 Jun, 2003

1 commit


01 Jun, 2003

1 commit

  • Fixed rarp boot method for IA32 and other little-endian CPUs.

    * Patch by Marc Singer, 28 May 2003:
    Added port I/O commands.

    * Patch by Matthew McClintock, 28 May 2003
    - cpu/mpc824x/start.S: fix relocation code when booting from RAM
    - minor patches for utx8245

    * Patch by Daniel Engström, 28 May 2003:
    x86 update

    * Patch by Dave Ellis, 9 May 2003 + 27 May 2003:
    add nand flash support to SXNI855T configuration
    fix/extend nand flash support:
    - fix 'nand erase' command so does not erase bad blocks
    - fix 'nand write' command so does not write to bad blocks
    - fix nand_probe() so handles no flash detected properly
    - add doc/README.nand
    - add .jffs2 and .oob options to nand read/write
    - add 'nand bad' command to list bad blocks
    - add 'clean' option to 'nand erase' to write JFFS2 clean markers
    - make NAND read/write faster

    * Patch by Rune Torgersen, 23 May 2003:
    Update for MPC8266ADS board

    wdenk