• npes87184's avatar
    Prevent setting zero over than bound · 312466aa
    npes87184 authored
    The &cmd will return a pointer which point to a pointer of cmdline.
    It is a memory address which is usually 8 bytes in 64 bits machine.
    
    However, the struct cmdline is 4 bytes. This will cause setting zero
    beyond the bound.
    
    Below is a simple example to show the differentiation:
    
    struct cmdline {
            char skip_initramfs;
            char slot[3];
    };
    
    static void parse_cmdline(struct cmdline *cmd)
    {
            printf("%lu\n", sizeof(*cmd)); /* 4 */
            printf("%lu\n", sizeof(&cmd)); /* 8 */
    }
    
    int main()
    {
            struct cmdline cmd;
            parse_cmdline(&cmd);
            return 0;
    }
    
    This patch prevents this.
    Signed-off-by: 's avatarnpes87184 <npes87184@gmail.com>
    312466aa
Name
Last commit
Last update
app @ 4ff39f88 Loading commit data...
chromeos Loading commit data...
docs Loading commit data...
gradle/wrapper Loading commit data...
native Loading commit data...
scripts Loading commit data...
snet Loading commit data...
utils Loading commit data...
.gitattributes Loading commit data...
.gitignore Loading commit data...
.gitmodules Loading commit data...
LICENSE Loading commit data...
README.MD Loading commit data...
build.gradle Loading commit data...
build.py Loading commit data...
config.prop.sample Loading commit data...
gradle.properties Loading commit data...
gradlew Loading commit data...
gradlew.bat Loading commit data...
settings.gradle Loading commit data...