Ignore:
Timestamp:
2018-12-15T21:02:22Z (5 years ago)
Author:
Matthieu Riolo <matthieu.riolo@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
ab936440
Parents:
ac2caecb
Message:

adding a validation for alias naming

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/app/bdsh/cmds/modules/alias/alias.c

    rac2caecb r7f7817a9  
    8484}
    8585
     86static bool valide_name(const char *name)
     87{
     88        while (*name != '\0') {
     89                if (*name == '/')
     90                        return false;
     91                if (*name == ' ')
     92                        return false;
     93                if (*name == '\"')
     94                        return false;
     95                if (*name == '\'')
     96                        return false;
     97                if (*name == '|')
     98                        return false;
     99
     100                name++;
     101        }
     102
     103        return true;
     104}
     105
    86106/* Dispays help for alias in various levels */
    87107void help_cmd_alias(unsigned int level)
     
    115135                if ((value = str_chr(name, '=')) != NULL) {
    116136                        name[value - name] = '\0';
     137                        if (!valide_name(name)) {
     138                                cli_error(CL_EFAIL, "%s: invalid alias name given\n", cmdname);
     139                                free(name);
     140                                return CMD_FAILURE;
     141                        }
     142                       
    117143                        set_alias(name, value + 1);
    118144                } else {
Note: See TracChangeset for help on using the changeset viewer.