Changeset 46c20c8 in mainline for uspace/app/bdsh/cmds
- Timestamp:
- 2010-11-26T20:08:10Z (15 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 45df59a
- Parents:
- fb150d78 (diff), ffdd2b9 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)links above to see all the changes relative to each parent. - Location:
- uspace/app/bdsh/cmds
- Files:
-
- 22 edited
-
builtin_cmds.c (modified) (1 diff)
-
builtins/builtins.h (modified) (1 diff)
-
builtins/cd/cd.c (modified) (2 diffs)
-
builtins/cd/cd_def.h (modified) (1 diff)
-
builtins/exit/exit_def.h (modified) (1 diff)
-
cmds.h (modified) (4 diffs)
-
mod_cmds.c (modified) (1 diff)
-
modules/bdd/bdd.c (modified) (3 diffs)
-
modules/cat/cat.c (modified) (3 diffs)
-
modules/cp/cp.c (modified) (6 diffs)
-
modules/help/help.c (modified) (5 diffs)
-
modules/kcon/kcon.c (modified) (1 diff)
-
modules/ls/ls.c (modified) (2 diffs)
-
modules/mkdir/mkdir.c (modified) (2 diffs)
-
modules/mkfile/mkfile.c (modified) (4 diffs)
-
modules/module_aliases.h (modified) (1 diff)
-
modules/mount/mount.c (modified) (1 diff)
-
modules/pwd/pwd.c (modified) (1 diff)
-
modules/rm/rm.c (modified) (2 diffs)
-
modules/sleep/sleep.c (modified) (1 diff)
-
modules/touch/touch.c (modified) (2 diffs)
-
modules/unmount/unmount.c (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
uspace/app/bdsh/cmds/builtin_cmds.c
rfb150d78 r46c20c8 34 34 #include <stdio.h> 35 35 #include <stdlib.h> 36 #include <str ing.h>36 #include <str.h> 37 37 #include "errors.h" 38 38 #include "cmds.h" -
uspace/app/bdsh/cmds/builtins/builtins.h
rfb150d78 r46c20c8 10 10 #include "cd/cd_def.h" 11 11 #include "exit/exit_def.h" 12 {NULL, NULL, NULL, NULL }12 {NULL, NULL, NULL, NULL, 0} 13 13 }; 14 14 -
uspace/app/bdsh/cmds/builtins/cd/cd.c
rfb150d78 r46c20c8 32 32 #include <stdlib.h> 33 33 #include <unistd.h> 34 #include <str ing.h>34 #include <str.h> 35 35 #include <errno.h> 36 36 … … 41 41 #include "cd.h" 42 42 43 static c har *cmdname = "cd";43 static const char *cmdname = "cd"; 44 44 45 45 void help_cmd_cd(unsigned int level) -
uspace/app/bdsh/cmds/builtins/cd/cd_def.h
rfb150d78 r46c20c8 4 4 &cmd_cd, 5 5 &help_cmd_cd, 6 0 6 7 }, -
uspace/app/bdsh/cmds/builtins/exit/exit_def.h
rfb150d78 r46c20c8 4 4 &cmd_exit, 5 5 &help_cmd_exit, 6 0 6 7 }, -
uspace/app/bdsh/cmds/cmds.h
rfb150d78 r46c20c8 33 33 /* Module structure */ 34 34 typedef struct { 35 c har *name;/* Name of the command */36 c har *desc;/* Description of the command */35 const char *name; /* Name of the command */ 36 const char *desc; /* Description of the command */ 37 37 mod_entry_t entry; /* Command (exec) entry function */ 38 38 mod_help_t help; /* Command (help) entry function */ … … 41 41 /* Builtin structure, same as modules except different types of entry points */ 42 42 typedef struct { 43 c har *name;44 c har *desc;43 const char *name; 44 const char *desc; 45 45 builtin_entry_t entry; 46 46 builtin_help_t help; … … 57 57 extern int is_module(const char *); 58 58 extern int is_module_alias(const char *); 59 extern char * alias_for_module(const char *);59 extern char *alias_for_module(const char *); 60 60 extern int help_module(int, unsigned int); 61 61 extern int run_module(int, char *[]); … … 65 65 extern int is_builtin(const char *); 66 66 extern int is_builtin_alias(const char *); 67 extern char * alias_for_builtin(const char *);67 extern char *alias_for_builtin(const char *); 68 68 extern int help_builtin(int, unsigned int); 69 69 extern int run_builtin(int, char *[], cliuser_t *); -
uspace/app/bdsh/cmds/mod_cmds.c
rfb150d78 r46c20c8 47 47 #include <stdio.h> 48 48 #include <stdlib.h> 49 #include <str ing.h>49 #include <str.h> 50 50 #include "errors.h" 51 51 #include "cmds.h" -
uspace/app/bdsh/cmds/modules/bdd/bdd.c
rfb150d78 r46c20c8 29 29 #include <stdio.h> 30 30 #include <stdlib.h> 31 #include <string.h> 31 #include <str.h> 32 #include <sys/typefmt.h> 32 33 #include "config.h" 33 34 #include "util.h" … … 68 69 unsigned int argc; 69 70 unsigned int i, j; 70 dev _handle_t handle;71 devmap_handle_t handle; 71 72 uint8_t *blk; 72 73 size_t size, bytes, rows; 73 74 size_t block_size; 74 75 int rc; 75 bn_t ba;76 aoff64_t ba; 76 77 uint8_t b; 77 78 … … 122 123 rc = block_read_direct(handle, ba, 1, blk); 123 124 if (rc != EOK) { 124 printf("%s: Error reading block % llu\n", cmdname, ba);125 printf("%s: Error reading block %" PRIuOFF64 "\n", cmdname, ba); 125 126 free(blk); 126 127 block_fini(handle); -
uspace/app/bdsh/cmds/modules/cat/cat.c
rfb150d78 r46c20c8 33 33 #include <unistd.h> 34 34 #include <getopt.h> 35 #include <str ing.h>35 #include <str.h> 36 36 #include <fcntl.h> 37 37 … … 43 43 #include "cmds.h" 44 44 45 static c har *cmdname = "cat";45 static const char *cmdname = "cat"; 46 46 #define CAT_VERSION "0.0.1" 47 47 #define CAT_DEFAULT_BUFLEN 1024 48 48 49 static c har *cat_oops = "That option is not yet supported\n";49 static const char *cat_oops = "That option is not yet supported\n"; 50 50 51 51 static struct option const long_options[] = { … … 85 85 { 86 86 int fd, bytes = 0, count = 0, reads = 0; 87 off _t total = 0;87 off64_t total = 0; 88 88 char *buff = NULL; 89 89 -
uspace/app/bdsh/cmds/modules/cp/cp.c
rfb150d78 r46c20c8 33 33 #include <unistd.h> 34 34 #include <getopt.h> 35 #include <str ing.h>35 #include <str.h> 36 36 #include <fcntl.h> 37 37 #include "config.h" … … 74 74 { 75 75 int fd1, fd2, bytes = 0; 76 off _t total = 0;76 off64_t total = 0; 77 77 int64_t copied = 0; 78 78 char *buff = NULL; … … 95 95 96 96 if (vb) 97 printf("% dbytes to copy\n", total);97 printf("%" PRIu64 " bytes to copy\n", total); 98 98 99 99 lseek(fd1, 0, SEEK_SET); … … 130 130 */ 131 131 if (res != 0) { 132 printf("\n% d more bytes than actually exist were copied\n", res);132 printf("\n%zd more bytes than actually exist were copied\n", res); 133 133 goto err; 134 134 } … … 187 187 return CMD_SUCCESS; 188 188 case 'v': 189 printf("% d\n", CP_VERSION);189 printf("%s\n", CP_VERSION); 190 190 return CMD_SUCCESS; 191 191 case 'V': … … 223 223 224 224 if (verbose) 225 printf("% dbytes copied\n", ret);225 printf("%" PRId64 " bytes copied\n", ret); 226 226 227 227 if (ret >= 0) -
uspace/app/bdsh/cmds/modules/help/help.c
rfb150d78 r46c20c8 31 31 #include <stdio.h> 32 32 #include <stdlib.h> 33 #include <str ing.h>33 #include <str.h> 34 34 35 35 #include "config.h" … … 42 42 #include "util.h" 43 43 44 static c har *cmdname = "help";44 static const char *cmdname = "help"; 45 45 extern const char *progname; 46 46 47 #define HELP_IS_MODULE 1 48 #define HELP_IS_BUILTIN 0 49 #define HELP_IS_RUBBISH -1 47 #define HELP_IS_COMMANDS 2 48 #define HELP_IS_MODULE 1 49 #define HELP_IS_BUILTIN 0 50 #define HELP_IS_RUBBISH -1 50 51 51 52 volatile int mod_switch = -1; … … 55 56 { 56 57 int rc = HELP_IS_RUBBISH; 58 59 if (str_cmp(cmd, "commands") == 0) 60 return HELP_IS_COMMANDS; 57 61 58 62 rc = is_builtin(cmd); … … 90 94 } 91 95 92 int cmd_help(char *argv[])96 static void help_commands(void) 93 97 { 98 builtin_t *cmd; 94 99 module_t *mod; 95 builtin_t *cmd; 96 unsigned int i = 0; 97 int rc = 0; 98 int argc; 99 int level = HELP_SHORT; 100 unsigned int i; 100 101 101 argc = cli_count_args(argv); 102 103 if (argc > 3) { 104 printf("\nToo many arguments to `%s', try:\n", cmdname); 105 help_cmd_help(HELP_SHORT); 106 return CMD_FAILURE; 107 } 108 109 if (argc == 3) { 110 if (!str_cmp("extended", argv[2])) 111 level = HELP_LONG; 112 else 113 level = HELP_SHORT; 114 } 115 116 if (argc > 1) { 117 rc = is_mod_or_builtin(argv[1]); 118 switch (rc) { 119 case HELP_IS_RUBBISH: 120 printf("Invalid command %s\n", argv[1]); 121 return CMD_FAILURE; 122 case HELP_IS_MODULE: 123 help_module(mod_switch, level); 124 return CMD_SUCCESS; 125 case HELP_IS_BUILTIN: 126 help_builtin(mod_switch, level); 127 return CMD_SUCCESS; 128 } 129 } 130 131 printf("\n Available commands are:\n"); 102 printf("\n Bdsh built-in commands:\n"); 132 103 printf(" ------------------------------------------------------------\n"); 133 104 … … 154 125 printf("\n Try %s %s for more information on how `%s' works.\n\n", 155 126 cmdname, cmdname, cmdname); 127 } 128 129 /** Display survival tips. ('help' without arguments) */ 130 static void help_survival(void) 131 { 132 printf("Don't panic!\n\n"); 133 134 printf("This is Bdsh, the Brain dead shell, currently " 135 "the primary user interface to HelenOS. Bdsh allows you to enter " 136 "commands and supports history (Up, Down arrow keys), " 137 "line editing (Left Arrow, Right Arrow, Home, End, Backspace), " 138 "selection (Shift + movement keys), copy and paste (Ctrl-C, " 139 "Ctrl-V), similar to common desktop environments.\n\n"); 140 141 printf("The most basic filesystem commands are Bdsh builtins. Type " 142 "'help commands' [Enter] to see the list of Bdsh builtin commands. " 143 "Other commands are external executables located in the /app and " 144 "/srv directories. Type 'ls /app' [Enter] and 'ls /srv' [Enter] " 145 "to see their list. You can execute an external command simply " 146 "by entering its name (e.g. type 'tetris' [Enter]).\n\n"); 147 148 printf("HelenOS has virtual consoles (VCs). You can switch between " 149 "these using the F1-F11 keys.\n\n"); 150 151 printf("This is but a small glimpse of what you can do with HelenOS. " 152 "To learn more please point your browser to the HelenOS User's " 153 "Guide: http://trac.helenos.org/trac.fcgi/wiki/UsersGuide\n\n"); 154 } 155 156 int cmd_help(char *argv[]) 157 { 158 int rc = 0; 159 int argc; 160 int level = HELP_SHORT; 161 162 argc = cli_count_args(argv); 163 164 if (argc > 3) { 165 printf("\nToo many arguments to `%s', try:\n", cmdname); 166 help_cmd_help(HELP_SHORT); 167 return CMD_FAILURE; 168 } 169 170 if (argc == 3) { 171 if (!str_cmp("extended", argv[2])) 172 level = HELP_LONG; 173 else 174 level = HELP_SHORT; 175 } 176 177 if (argc > 1) { 178 rc = is_mod_or_builtin(argv[1]); 179 switch (rc) { 180 case HELP_IS_RUBBISH: 181 printf("Invalid topic %s\n", argv[1]); 182 return CMD_FAILURE; 183 case HELP_IS_COMMANDS: 184 help_commands(); 185 return CMD_SUCCESS; 186 case HELP_IS_MODULE: 187 help_module(mod_switch, level); 188 return CMD_SUCCESS; 189 case HELP_IS_BUILTIN: 190 help_builtin(mod_switch, level); 191 return CMD_SUCCESS; 192 } 193 } 194 195 help_survival(); 156 196 157 197 return CMD_SUCCESS; -
uspace/app/bdsh/cmds/modules/kcon/kcon.c
rfb150d78 r46c20c8 40 40 #include "cmds.h" 41 41 42 static c har *cmdname = "kcon";42 static const char *cmdname = "kcon"; 43 43 44 44 /* Dispays help for kcon in various levels */ -
uspace/app/bdsh/cmds/modules/ls/ls.c
rfb150d78 r46c20c8 40 40 #include <sys/types.h> 41 41 #include <sys/stat.h> 42 #include <str ing.h>42 #include <str.h> 43 43 44 44 #include "errors.h" … … 49 49 #include "cmds.h" 50 50 51 static c har *cmdname = "ls";51 static const char *cmdname = "ls"; 52 52 53 53 static void ls_scan_dir(const char *d, DIR *dirp) -
uspace/app/bdsh/cmds/modules/mkdir/mkdir.c
rfb150d78 r46c20c8 38 38 #include <getopt.h> 39 39 #include <stdarg.h> 40 #include <str ing.h>40 #include <str.h> 41 41 42 42 #include "config.h" … … 49 49 #define MKDIR_VERSION "0.0.1" 50 50 51 static c har *cmdname = "mkdir";51 static const char *cmdname = "mkdir"; 52 52 53 53 static struct option const long_options[] = { -
uspace/app/bdsh/cmds/modules/mkfile/mkfile.c
rfb150d78 r46c20c8 38 38 #include <getopt.h> 39 39 #include <stdarg.h> 40 #include <str ing.h>40 #include <str.h> 41 41 #include <ctype.h> 42 42 … … 51 51 #define BUFFER_SIZE 16384 52 52 53 static c har *cmdname = "mkfile";53 static const char *cmdname = "mkfile"; 54 54 55 55 static struct option const long_options[] = { … … 168 168 rc = write(fd, buffer, to_write); 169 169 if (rc <= 0) { 170 printf("%s: Error writing file (% d).\n", cmdname, rc);170 printf("%s: Error writing file (%zd).\n", cmdname, rc); 171 171 close(fd); 172 172 return CMD_FAILURE; … … 177 177 rc = close(fd); 178 178 if (rc != 0) { 179 printf("%s: Error writing file (% d).\n", cmdname, rc);179 printf("%s: Error writing file (%zd).\n", cmdname, rc); 180 180 return CMD_FAILURE; 181 181 } -
uspace/app/bdsh/cmds/modules/module_aliases.h
rfb150d78 r46c20c8 12 12 * the entry point being reached. */ 13 13 14 c har *mod_aliases[] = {14 const char *mod_aliases[] = { 15 15 "ren", "mv", 16 16 "umount", "unmount", -
uspace/app/bdsh/cmds/modules/mount/mount.c
rfb150d78 r46c20c8 58 58 { 59 59 unsigned int argc; 60 c har *mopts = "";60 const char *mopts = ""; 61 61 int rc; 62 62 -
uspace/app/bdsh/cmds/modules/pwd/pwd.c
rfb150d78 r46c20c8 39 39 #include "pwd.h" 40 40 41 static c har *cmdname = "pwd";41 static const char *cmdname = "pwd"; 42 42 43 43 void help_cmd_pwd(unsigned int level) -
uspace/app/bdsh/cmds/modules/rm/rm.c
rfb150d78 r46c20c8 36 36 #include <getopt.h> 37 37 #include <mem.h> 38 #include <str ing.h>38 #include <str.h> 39 39 40 40 #include "config.h" … … 45 45 #include "cmds.h" 46 46 47 static c har *cmdname = "rm";47 static const char *cmdname = "rm"; 48 48 #define RM_VERSION "0.0.1" 49 49 -
uspace/app/bdsh/cmds/modules/sleep/sleep.c
rfb150d78 r46c20c8 38 38 #include "cmds.h" 39 39 40 static c har *cmdname = "sleep";40 static const char *cmdname = "sleep"; 41 41 42 42 /* Dispays help for sleep in various levels */ -
uspace/app/bdsh/cmds/modules/touch/touch.c
rfb150d78 r46c20c8 38 38 #include <dirent.h> 39 39 #include <sys/types.h> 40 #include <str ing.h>40 #include <str.h> 41 41 42 42 #include "config.h" … … 47 47 #include "cmds.h" 48 48 49 static c har *cmdname = "touch";49 static const char *cmdname = "touch"; 50 50 51 51 /* Dispays help for touch in various levels */ -
uspace/app/bdsh/cmds/modules/unmount/unmount.c
rfb150d78 r46c20c8 47 47 } else { 48 48 help_cmd_unmount(HELP_SHORT); 49 printf("Usage: %s <mp>\n", cmdname);49 printf("Usage: %s <mp>\n", cmdname); 50 50 } 51 51 return; … … 68 68 rc = unmount(argv[1]); 69 69 if (rc != EOK) { 70 printf("Unable to unmount %s (rc=%d)\n", argv[1] );70 printf("Unable to unmount %s (rc=%d)\n", argv[1], rc); 71 71 return CMD_FAILURE; 72 72 }
Note:
See TracChangeset
for help on using the changeset viewer.
