diff options
Diffstat (limited to 'fish')
-rw-r--r-- | fish/destpaths.c | 116 | ||||
-rw-r--r-- | fish/fish.c | 460 | ||||
-rw-r--r-- | fish/fish.h | 2 | ||||
-rw-r--r-- | fish/glob.c | 54 | ||||
-rw-r--r-- | fish/rc.c | 80 | ||||
-rw-r--r-- | fish/tilde.c | 6 | ||||
-rw-r--r-- | fish/time.c | 4 |
7 files changed, 361 insertions, 361 deletions
diff --git a/fish/destpaths.c b/fish/destpaths.c index a9d65a51..f4f13188 100644 --- a/fish/destpaths.c +++ b/fish/destpaths.c @@ -112,24 +112,24 @@ complete_dest_paths_generator (const char *text, int state) if (strs) { \ size_t i; \ size_t n = count_strings (strs); \ - \ + \ if ( ! xalloc_oversized (nr_words + n, sizeof (struct word))) { \ - struct word *w; \ - w = realloc (words, sizeof (struct word) * (nr_words + n)); \ - \ - if (w == NULL) { \ - free_words (words, nr_words); \ - words = NULL; \ - nr_words = 0; \ - } else { \ - words = w; \ - for (i = 0; i < n; ++i) { \ - words[nr_words].name = strs[i]; \ - words[nr_words].is_dir = 0; \ - nr_words++; \ - } \ - } \ - free (strs); \ + struct word *w; \ + w = realloc (words, sizeof (struct word) * (nr_words + n)); \ + \ + if (w == NULL) { \ + free_words (words, nr_words); \ + words = NULL; \ + nr_words = 0; \ + } else { \ + words = w; \ + for (i = 0; i < n; ++i) { \ + words[nr_words].name = strs[i]; \ + words[nr_words].is_dir = 0; \ + nr_words++; \ + } \ + } \ + free (strs); \ } \ } \ } while (0) @@ -157,46 +157,46 @@ complete_dest_paths_generator (const char *text, int state) p = strrchr (text, '/'); dir = p && p > text ? strndup (text, p - text) : strdup ("/"); if (dir) { - dirents = guestfs_readdir (g, dir); - - /* Prepend directory to names before adding them to the list - * of words. - */ - if (dirents) { - size_t i; - - for (i = 0; i < dirents->len; ++i) { - int err; - - if (strcmp (dirents->val[i].name, ".") != 0 && - strcmp (dirents->val[i].name, "..") != 0) { - if (strcmp (dir, "/") == 0) - err = asprintf (&p, "/%s", dirents->val[i].name); - else - err = asprintf (&p, "%s/%s", dir, dirents->val[i].name); - if (err >= 0) { - if (!xalloc_oversized (nr_words+1, sizeof (struct word))) { - struct word *w; - - w = realloc (words, sizeof (struct word) * (nr_words+1)); - if (w == NULL) { - free_words (words, nr_words); - words = NULL; - nr_words = 0; - } - else { - words = w; - words[nr_words].name = p; - words[nr_words].is_dir = dirents->val[i].ftyp == 'd'; - nr_words++; - } - } - } - } - } - - guestfs_free_dirent_list (dirents); - } + dirents = guestfs_readdir (g, dir); + + /* Prepend directory to names before adding them to the list + * of words. + */ + if (dirents) { + size_t i; + + for (i = 0; i < dirents->len; ++i) { + int err; + + if (strcmp (dirents->val[i].name, ".") != 0 && + strcmp (dirents->val[i].name, "..") != 0) { + if (strcmp (dir, "/") == 0) + err = asprintf (&p, "/%s", dirents->val[i].name); + else + err = asprintf (&p, "%s/%s", dir, dirents->val[i].name); + if (err >= 0) { + if (!xalloc_oversized (nr_words+1, sizeof (struct word))) { + struct word *w; + + w = realloc (words, sizeof (struct word) * (nr_words+1)); + if (w == NULL) { + free_words (words, nr_words); + words = NULL; + nr_words = 0; + } + else { + words = w; + words[nr_words].name = p; + words[nr_words].is_dir = dirents->val[i].ftyp == 'd'; + nr_words++; + } + } + } + } + } + + guestfs_free_dirent_list (dirents); + } } } @@ -219,7 +219,7 @@ complete_dest_paths_generator (const char *text, int state) if (strncasecmp (word->name, text, len) == 0) { if (word->is_dir) - rl_completion_append_character = '/'; + rl_completion_append_character = '/'; return strdup (word->name); } diff --git a/fish/fish.c b/fish/fish.c index b0d123d4..f245de17 100644 --- a/fish/fish.c +++ b/fish/fish.c @@ -91,36 +91,36 @@ static void usage (void) { fprintf (stderr, - _("guestfish: guest filesystem shell\n" - "guestfish lets you edit virtual machine filesystems\n" - "Copyright (C) 2009 Red Hat Inc.\n" - "Usage:\n" - " guestfish [--options] cmd [: cmd : cmd ...]\n" - " guestfish -i libvirt-domain\n" - " guestfish -i disk-image(s)\n" - "or for interactive use:\n" - " guestfish\n" - "or from a shell script:\n" - " guestfish <<EOF\n" - " cmd\n" - " ...\n" - " EOF\n" - "Options:\n" - " -h|--cmd-help List available commands\n" - " -h|--cmd-help cmd Display detailed help on 'cmd'\n" - " -a|--add image Add image\n" - " -D|--no-dest-paths Don't tab-complete paths from guest fs\n" - " -f|--file file Read commands from file\n" - " -i|--inspector Run virt-inspector to get disk mountpoints\n" - " --listen Listen for remote commands\n" - " -m|--mount dev[:mnt] Mount dev on mnt (if omitted, /)\n" - " -n|--no-sync Don't autosync\n" - " --remote[=pid] Send commands to remote guestfish\n" - " -r|--ro Mount read-only\n" - " -v|--verbose Verbose messages\n" - " -x Echo each command before executing it\n" - " -V|--version Display version and exit\n" - "For more information, see the manpage guestfish(1).\n")); + _("guestfish: guest filesystem shell\n" + "guestfish lets you edit virtual machine filesystems\n" + "Copyright (C) 2009 Red Hat Inc.\n" + "Usage:\n" + " guestfish [--options] cmd [: cmd : cmd ...]\n" + " guestfish -i libvirt-domain\n" + " guestfish -i disk-image(s)\n" + "or for interactive use:\n" + " guestfish\n" + "or from a shell script:\n" + " guestfish <<EOF\n" + " cmd\n" + " ...\n" + " EOF\n" + "Options:\n" + " -h|--cmd-help List available commands\n" + " -h|--cmd-help cmd Display detailed help on 'cmd'\n" + " -a|--add image Add image\n" + " -D|--no-dest-paths Don't tab-complete paths from guest fs\n" + " -f|--file file Read commands from file\n" + " -i|--inspector Run virt-inspector to get disk mountpoints\n" + " --listen Listen for remote commands\n" + " -m|--mount dev[:mnt] Mount dev on mnt (if omitted, /)\n" + " -n|--no-sync Don't autosync\n" + " --remote[=pid] Send commands to remote guestfish\n" + " -r|--ro Mount read-only\n" + " -v|--verbose Verbose messages\n" + " -x Echo each command before executing it\n" + " -V|--version Display version and exit\n" + "For more information, see the manpage guestfish(1).\n")); } int @@ -191,31 +191,31 @@ main (int argc, char *argv[]) switch (c) { case 0: /* options which are long only */ if (strcmp (long_options[option_index].name, "listen") == 0) - remote_control_listen = 1; + remote_control_listen = 1; else if (strcmp (long_options[option_index].name, "remote") == 0) { - if (optarg) { - if (sscanf (optarg, "%d", &remote_control) != 1) { - fprintf (stderr, _("guestfish: --listen=PID: PID was not a number: %s\n"), optarg); - exit (1); - } - } else { - p = getenv ("GUESTFISH_PID"); - if (!p || sscanf (p, "%d", &remote_control) != 1) { - fprintf (stderr, _("guestfish: remote: $GUESTFISH_PID must be set to the PID of the remote process\n")); - exit (1); - } - } + if (optarg) { + if (sscanf (optarg, "%d", &remote_control) != 1) { + fprintf (stderr, _("guestfish: --listen=PID: PID was not a number: %s\n"), optarg); + exit (1); + } + } else { + p = getenv ("GUESTFISH_PID"); + if (!p || sscanf (p, "%d", &remote_control) != 1) { + fprintf (stderr, _("guestfish: remote: $GUESTFISH_PID must be set to the PID of the remote process\n")); + exit (1); + } + } } else { - fprintf (stderr, _("guestfish: unknown long option: %s (%d)\n"), - long_options[option_index].name, option_index); - exit (1); + fprintf (stderr, _("guestfish: unknown long option: %s (%d)\n"), + long_options[option_index].name, option_index); + exit (1); } break; case 'a': if (access (optarg, R_OK) != 0) { - perror (optarg); - exit (1); + perror (optarg); + exit (1); } drv = malloc (sizeof (struct drv)); if (!drv) { @@ -233,19 +233,19 @@ main (int argc, char *argv[]) case 'f': if (file) { - fprintf (stderr, _("guestfish: only one -f parameter can be given\n")); - exit (1); + fprintf (stderr, _("guestfish: only one -f parameter can be given\n")); + exit (1); } file = optarg; break; case 'h': if (optarg) - display_command (optarg); + display_command (optarg); else if (argv[optind] && argv[optind][0] != '-') - display_command (argv[optind++]); + display_command (argv[optind++]); else - list_commands (); + list_commands (); exit (0); case 'i': @@ -255,15 +255,15 @@ main (int argc, char *argv[]) case 'm': mp = malloc (sizeof (struct mp)); if (!mp) { - perror ("malloc"); - exit (1); + perror ("malloc"); + exit (1); } p = strchr (optarg, ':'); if (p) { - *p = '\0'; - mp->mountpoint = p+1; + *p = '\0'; + mp->mountpoint = p+1; } else - mp->mountpoint = "/"; + mp->mountpoint = "/"; mp->device = optarg; mp->next = mps; mps = mp; @@ -296,7 +296,7 @@ main (int argc, char *argv[]) default: fprintf (stderr, _("guestfish: unexpected command line option 0x%x\n"), - c); + c); exit (1); } } @@ -318,9 +318,9 @@ main (int argc, char *argv[]) strcpy (cmd, "a=`virt-inspector"); while (optind < argc) { if (strlen (cmd) + strlen (argv[optind]) + strlen (argv[0]) + 60 - >= sizeof cmd) { - fprintf (stderr, _("guestfish: virt-inspector command too long for fixed-size buffer\n")); - exit (1); + >= sizeof cmd) { + fprintf (stderr, _("guestfish: virt-inspector command too long for fixed-size buffer\n")); + exit (1); } strcat (cmd, " '"); strcat (cmd, argv[optind]); @@ -342,7 +342,7 @@ main (int argc, char *argv[]) if (verbose) fprintf (stderr, - "guestfish -i: running virt-inspector command:\n%s\n", cmd); + "guestfish -i: running virt-inspector command:\n%s\n", cmd); r = system (cmd); if (r == -1) { @@ -518,12 +518,12 @@ script (int prompt) if (prompt) printf (_("\n" - "Welcome to guestfish, the libguestfs filesystem interactive shell for\n" - "editing virtual machine filesystems.\n" - "\n" - "Type: 'help' for help with commands\n" - " 'quit' to quit the shell\n" - "\n")); + "Welcome to guestfish, the libguestfs filesystem interactive shell for\n" + "editing virtual machine filesystems.\n" + "\n" + "Type: 'help' for help with commands\n" + " 'quit' to quit the shell\n" + "\n")); while (!quit) { char *pipe = NULL; @@ -552,11 +552,11 @@ script (int prompt) r = system (buf+1); if (exit_on_error) { - if (r == -1 || - (WIFSIGNALED (r) && - (WTERMSIG (r) == SIGINT || WTERMSIG (r) == SIGQUIT)) || - WEXITSTATUS (r) != 0) - exit (1); + if (r == -1 || + (WIFSIGNALED (r) && + (WTERMSIG (r) == SIGINT || WTERMSIG (r) == SIGQUIT)) || + WEXITSTATUS (r) != 0) + exit (1); } continue; } @@ -594,88 +594,88 @@ script (int prompt) * specially. Bare parameters are delimited by whitespace. */ if (*p == '"') { - p++; - len = strcspn (p, "\""); - if (p[len] == '\0') { - fprintf (stderr, _("guestfish: unterminated double quote\n")); - if (exit_on_error) exit (1); - goto next_command; - } - if (p[len+1] && (p[len+1] != ' ' && p[len+1] != '\t')) { - fprintf (stderr, _("guestfish: command arguments not separated by whitespace\n")); - if (exit_on_error) exit (1); - goto next_command; - } - p[len] = '\0'; - pend = p[len+1] ? &p[len+2] : &p[len+1]; + p++; + len = strcspn (p, "\""); + if (p[len] == '\0') { + fprintf (stderr, _("guestfish: unterminated double quote\n")); + if (exit_on_error) exit (1); + goto next_command; + } + if (p[len+1] && (p[len+1] != ' ' && p[len+1] != '\t')) { + fprintf (stderr, _("guestfish: command arguments not separated by whitespace\n")); + if (exit_on_error) exit (1); + goto next_command; + } + p[len] = '\0'; + pend = p[len+1] ? &p[len+2] : &p[len+1]; } else if (*p == '\'') { - p++; - len = strcspn (p, "'"); - if (p[len] == '\0') { - fprintf (stderr, _("guestfish: unterminated single quote\n")); - if (exit_on_error) exit (1); - goto next_command; - } - if (p[len+1] && (p[len+1] != ' ' && p[len+1] != '\t')) { - fprintf (stderr, _("guestfish: command arguments not separated by whitespace\n")); - if (exit_on_error) exit (1); - goto next_command; - } - p[len] = '\0'; - pend = p[len+1] ? &p[len+2] : &p[len+1]; + p++; + len = strcspn (p, "'"); + if (p[len] == '\0') { + fprintf (stderr, _("guestfish: unterminated single quote\n")); + if (exit_on_error) exit (1); + goto next_command; + } + if (p[len+1] && (p[len+1] != ' ' && p[len+1] != '\t')) { + fprintf (stderr, _("guestfish: command arguments not separated by whitespace\n")); + if (exit_on_error) exit (1); + goto next_command; + } + p[len] = '\0'; + pend = p[len+1] ? &p[len+2] : &p[len+1]; } else if (*p == '|') { - *p = '\0'; - pipe = p+1; - continue; - /* + *p = '\0'; + pipe = p+1; + continue; + /* } else if (*p == '[') { - int c = 1; - p++; - pend = p; - while (*pend && c != 0) { - if (*pend == '[') c++; - else if (*pend == ']') c--; - pend++; - } - if (c != 0) { - fprintf (stderr, _("guestfish: unterminated \"[...]\" sequence\n")); - if (exit_on_error) exit (1); - goto next_command; - } - if (*pend && (*pend != ' ' && *pend != '\t')) { - fprintf (stderr, _("guestfish: command arguments not separated by whitespace\n")); - if (exit_on_error) exit (1); - goto next_command; - } - *(pend-1) = '\0'; - */ + int c = 1; + p++; + pend = p; + while (*pend && c != 0) { + if (*pend == '[') c++; + else if (*pend == ']') c--; + pend++; + } + if (c != 0) { + fprintf (stderr, _("guestfish: unterminated \"[...]\" sequence\n")); + if (exit_on_error) exit (1); + goto next_command; + } + if (*pend && (*pend != ' ' && *pend != '\t')) { + fprintf (stderr, _("guestfish: command arguments not separated by whitespace\n")); + if (exit_on_error) exit (1); + goto next_command; + } + *(pend-1) = '\0'; + */ } else if (*p != ' ' && *p != '\t') { - /* If the first character is a ~ then note that this parameter - * is a candidate for ~username expansion. NB this does not - * apply to quoted parameters. - */ - tilde_candidate = *p == '~'; - len = strcspn (p, " \t"); - if (p[len]) { - p[len] = '\0'; - pend = &p[len+1]; - } else - pend = &p[len]; + /* If the first character is a ~ then note that this parameter + * is a candidate for ~username expansion. NB this does not + * apply to quoted parameters. + */ + tilde_candidate = *p == '~'; + len = strcspn (p, " \t"); + if (p[len]) { + p[len] = '\0'; + pend = &p[len+1]; + } else + pend = &p[len]; } else { - fprintf (stderr, _("guestfish: internal error parsing string at '%s'\n"), - p); - abort (); + fprintf (stderr, _("guestfish: internal error parsing string at '%s'\n"), + p); + abort (); } if (!tilde_candidate) - argv[i] = p; + argv[i] = p; else - argv[i] = try_tilde_expansion (p); + argv[i] = try_tilde_expansion (p); i++; p = pend; if (*p) - p += strspn (p, " \t"); + p += strspn (p, " \t"); } if (i == sizeof argv / sizeof argv[0]) { @@ -759,8 +759,8 @@ issue_command (const char *cmd, char *argv[], const char *pipecmd) r = system (pipecmd); if (r == -1) { - perror (pipecmd); - _exit (1); + perror (pipecmd); + _exit (1); } _exit (WEXITSTATUS (r)); } @@ -787,26 +787,26 @@ issue_command (const char *cmd, char *argv[], const char *pipecmd) r = 0; } else if (strcasecmp (cmd, "quit") == 0 || - strcasecmp (cmd, "exit") == 0 || - strcasecmp (cmd, "q") == 0) { + strcasecmp (cmd, "exit") == 0 || + strcasecmp (cmd, "q") == 0) { quit = 1; r = 0; } else if (strcasecmp (cmd, "alloc") == 0 || - strcasecmp (cmd, "allocate") == 0) + strcasecmp (cmd, "allocate") == 0) r = do_alloc (cmd, argc, argv); else if (strcasecmp (cmd, "echo") == 0) r = do_echo (cmd, argc, argv); else if (strcasecmp (cmd, "edit") == 0 || - strcasecmp (cmd, "vi") == 0 || - strcasecmp (cmd, "emacs") == 0) + strcasecmp (cmd, "vi") == 0 || + strcasecmp (cmd, "emacs") == 0) r = do_edit (cmd, argc, argv); else if (strcasecmp (cmd, "lcd") == 0) r = do_lcd (cmd, argc, argv); else if (strcasecmp (cmd, "glob") == 0) r = do_glob (cmd, argc, argv); else if (strcasecmp (cmd, "more") == 0 || - strcasecmp (cmd, "less") == 0) + strcasecmp (cmd, "less") == 0) r = do_more (cmd, argc, argv); else if (strcasecmp (cmd, "reopen") == 0) r = do_reopen (cmd, argc, argv); @@ -835,26 +835,26 @@ list_builtin_commands (void) { /* help and quit should appear at the top */ printf ("%-20s %s\n", - "help", _("display a list of commands or help on a command")); + "help", _("display a list of commands or help on a command")); printf ("%-20s %s\n", - "quit", _("quit guestfish")); + "quit", _("quit guestfish")); printf ("%-20s %s\n", - "alloc", _("allocate an image")); + "alloc", _("allocate an image")); printf ("%-20s %s\n", - "echo", _("display a line of text")); + "echo", _("display a line of text")); printf ("%-20s %s\n", - "edit", _("edit a file in the image")); + "edit", _("edit a file in the image")); printf ("%-20s %s\n", - "lcd", _("local change directory")); + "lcd", _("local change directory")); printf ("%-20s %s\n", - "glob", _("expand wildcards in command")); + "glob", _("expand wildcards in command")); printf ("%-20s %s\n", - "more", _("view a file in the pager")); + "more", _("view a file in the pager")); printf ("%-20s %s\n", - "reopen", _("close and reopen libguestfs handle")); + "reopen", _("close and reopen libguestfs handle")); printf ("%-20s %s\n", - "time", _("measure time taken to run command")); + "time", _("measure time taken to run command")); /* actions are printed after this (see list_commands) */ } @@ -867,95 +867,95 @@ display_builtin_command (const char *cmd) if (strcasecmp (cmd, "alloc") == 0 || strcasecmp (cmd, "allocate") == 0) printf (_("alloc - allocate an image\n" - " alloc <filename> <size>\n" - "\n" - " This creates an empty (zeroed) file of the given size,\n" - " and then adds so it can be further examined.\n" - "\n" - " For more advanced image creation, see qemu-img utility.\n" - "\n" - " Size can be specified (where <nn> means a number):\n" - " <nn> number of kilobytes\n" - " eg: 1440 standard 3.5\" floppy\n" - " <nn>K or <nn>KB number of kilobytes\n" - " <nn>M or <nn>MB number of megabytes\n" - " <nn>G or <nn>GB number of gigabytes\n" - " <nn>sects number of 512 byte sectors\n")); + " alloc <filename> <size>\n" + "\n" + " This creates an empty (zeroed) file of the given size,\n" + " and then adds so it can be further examined.\n" + "\n" + " For more advanced image creation, see qemu-img utility.\n" + "\n" + " Size can be specified (where <nn> means a number):\n" + " <nn> number of kilobytes\n" + " eg: 1440 standard 3.5\" floppy\n" + " <nn>K or <nn>KB number of kilobytes\n" + " <nn>M or <nn>MB number of megabytes\n" + " <nn>G or <nn>GB number of gigabytes\n" + " <nn>sects number of 512 byte sectors\n")); else if (strcasecmp (cmd, "echo") == 0) printf (_("echo - display a line of text\n" - " echo [<params> ...]\n" - "\n" - " This echos the parameters to the terminal.\n")); + " echo [<params> ...]\n" + "\n" + " This echos the parameters to the terminal.\n")); else if (strcasecmp (cmd, "edit") == 0 || - strcasecmp (cmd, "vi") == 0 || - strcasecmp (cmd, "emacs") == 0) + strcasecmp (cmd, "vi") == 0 || + strcasecmp (cmd, "emacs") == 0) printf (_("edit - edit a file in the image\n" - " edit <filename>\n" - "\n" - " This is used to edit a file.\n" - "\n" - " It is the equivalent of (and is implemented by)\n" - " running \"cat\", editing locally, and then \"write-file\".\n" - "\n" - " Normally it uses $EDITOR, but if you use the aliases\n" - " \"vi\" or \"emacs\" you will get those editors.\n" - "\n" - " NOTE: This will not work reliably for large files\n" - " (> 2 MB) or binary files containing \\0 bytes.\n")); + " edit <filename>\n" + "\n" + " This is used to edit a file.\n" + "\n" + " It is the equivalent of (and is implemented by)\n" + " running \"cat\", editing locally, and then \"write-file\".\n" + "\n" + " Normally it uses $EDITOR, but if you use the aliases\n" + " \"vi\" or \"emacs\" you will get those editors.\n" + "\n" + " NOTE: This will not work reliably for large files\n" + " (> 2 MB) or binary files containing \\0 bytes.\n")); else if (strcasecmp (cmd, "lcd") == 0) printf (_("lcd - local change directory\n" - " lcd <directory>\n" - "\n" - " Change guestfish's current directory. This command is\n" - " useful if you want to download files to a particular\n" - " place.\n")); + " lcd <directory>\n" + "\n" + " Change guestfish's current directory. This command is\n" + " useful if you want to download files to a particular\n" + " place.\n")); else if (strcasecmp (cmd, "glob") == 0) printf (_("glob - expand wildcards in command\n" - " glob <command> [<args> ...]\n" - "\n" - " Glob runs <command> with wildcards expanded in any\n" - " command args. Note that the command is run repeatedly\n" - " once for each expanded argument.\n")); + " glob <command> [<args> ...]\n" + "\n" + " Glob runs <command> with wildcards expanded in any\n" + " command args. Note that the command is run repeatedly\n" + " once for each expanded argument.\n")); else if (strcasecmp (cmd, "help") == 0) printf (_("help - display a list of commands or help on a command\n" - " help cmd\n" - " help\n")); + " help cmd\n" + " help\n")); else if (strcasecmp (cmd, "more") == 0 || - strcasecmp (cmd, "less") == 0) + strcasecmp (cmd, "less") == 0) printf (_("more - view a file in the pager\n" - " more <filename>\n" - "\n" - " This is used to view a file in the pager.\n" - "\n" - " It is the equivalent of (and is implemented by)\n" - " running \"cat\" and using the pager.\n" - "\n" - " Normally it uses $PAGER, but if you use the alias\n" - " \"less\" then it always uses \"less\".\n" - "\n" - " NOTE: This will not work reliably for large files\n" - " (> 2 MB) or binary files containing \\0 bytes.\n")); + " more <filename>\n" + "\n" + " This is used to view a file in the pager.\n" + "\n" + " It is the equivalent of (and is implemented by)\n" + " running \"cat\" and using the pager.\n" + "\n" + " Normally it uses $PAGER, but if you use the alias\n" + " \"less\" then it always uses \"less\".\n" + "\n" + " NOTE: This will not work reliably for large files\n" + " (> 2 MB) or binary files containing \\0 bytes.\n")); else if (strcasecmp (cmd, "quit") == 0 || - strcasecmp (cmd, "exit") == 0 || - strcasecmp (cmd, "q") == 0) + strcasecmp (cmd, "exit") == 0 || + strcasecmp (cmd, "q") == 0) printf (_("quit - quit guestfish\n" - " quit\n")); + " quit\n")); else if (strcasecmp (cmd, "reopen") == 0) printf (_("reopen - close and reopen the libguestfs handle\n" - " reopen\n" - "\n" - "Close and reopen the libguestfs handle. It is not necessary to use\n" - "this normally, because the handle is closed properly when guestfish\n" - "exits. However this is occasionally useful for testing.\n")); + " reopen\n" + "\n" + "Close and reopen the libguestfs handle. It is not necessary to use\n" + "this normally, because the handle is closed properly when guestfish\n" + "exits. However this is occasionally useful for testing.\n")); else if (strcasecmp (cmd, "time") == 0) printf (_("time - measure time taken to run command\n" - " time <command> [<args> ...]\n" - "\n" - " This runs <command> as usual, and prints the elapsed\n" - " time afterwards.\n")); + " time <command> [<args> ...]\n" + "\n" + " This runs <command> as usual, and prints the elapsed\n" + " time afterwards.\n")); else fprintf (stderr, _("%s: command not known, use -h to list all commands\n"), - cmd); + cmd); } void diff --git a/fish/fish.h b/fish/fish.h index a65fe1b8..772d2001 100644 --- a/fish/fish.h +++ b/fish/fish.h @@ -80,7 +80,7 @@ extern int do_more (const char *cmd, int argc, char *argv[]); /* in rc.c (remote control) */ extern void rc_listen (void); extern int rc_remote (int pid, const char *cmd, int argc, char *argv[], - int exit_on_error); + int exit_on_error); /* in reopen.c */ extern int do_reopen (const char *cmd, int argc, char *argv[]); diff --git a/fish/glob.c b/fish/glob.c index 581bc286..2731b2f9 100644 --- a/fish/glob.c +++ b/fish/glob.c @@ -69,46 +69,46 @@ do_glob (const char *cmd, int argc, char *argv[]) if (argv[i][0] == '/') { pp = guestfs_glob_expand (g, argv[i]); if (pp == NULL) { /* real error in glob_expand */ - fprintf (stderr, _("glob: guestfs_glob_expand call failed: %s\n"), - argv[i]); - goto error0; + fprintf (stderr, _("glob: guestfs_glob_expand call failed: %s\n"), + argv[i]); + goto error0; } /* If there were no matches, then we add a single element list * containing just the original argv[i] string. */ if (pp[0] == NULL) { - char **pp2; - - pp2 = realloc (pp, sizeof (char *) * 2); - if (pp2 == NULL) { - perror ("realloc"); - free (pp); - goto error0; - } - pp = pp2; - - pp[0] = strdup (argv[i]); - if (pp[0] == NULL) { - perror ("strdup"); - free (pp); - goto error0; - } - pp[1] = NULL; + char **pp2; + + pp2 = realloc (pp, sizeof (char *) * 2); + if (pp2 == NULL) { + perror ("realloc"); + free (pp); + goto error0; + } + pp = pp2; + + pp[0] = strdup (argv[i]); + if (pp[0] == NULL) { + perror ("strdup"); + free (pp); + goto error0; + } + pp[1] = NULL; } } /* Doesn't begin with '/' */ else { pp = malloc (sizeof (char *) * 2); if (pp == NULL) { - perror ("malloc"); - goto error0; + perror ("malloc"); + goto error0; } pp[0] = strdup (argv[i]); if (pp[0] == NULL) { - perror ("strdup"); - free (pp); - goto error0; + perror ("strdup"); + free (pp); + goto error0; } pp[1] = NULL; } @@ -130,8 +130,8 @@ do_glob (const char *cmd, int argc, char *argv[]) static void glob_issue (char *cmd, int argc, - char ***globs, int *posn, int *count, - int *r) + char ***globs, int *posn, int *count, + int *r) { int i; char *argv[argc+1]; @@ -131,52 +131,52 @@ rc_listen (void) xdrstdio_create (&xdr, fp, XDR_DECODE); if (!xdr_guestfish_hello (&xdr, &hello)) { - fprintf (stderr, _("guestfish: protocol error: could not read 'hello' message\n")); - goto error; + fprintf (stderr, _("guestfish: protocol error: could not read 'hello' message\n")); + goto error; } if (strcmp (hello.vers, PACKAGE_VERSION) != 0) { - fprintf (stderr, _("guestfish: protocol error: version mismatch, server version '%s' does not match client version '%s'. The two versions must match exactly.\n"), - PACKAGE_VERSION, - hello.vers); - xdr_free ((xdrproc_t) xdr_guestfish_hello, (char *) &hello); - goto error; + fprintf (stderr, _("guestfish: protocol error: version mismatch, server version '%s' does not match client version '%s'. The two versions must match exactly.\n"), + PACKAGE_VERSION, + hello.vers); + xdr_free ((xdrproc_t) xdr_guestfish_hello, (char *) &hello); + goto error; } xdr_free ((xdrproc_t) xdr_guestfish_hello, (char *) &hello); while (xdr_guestfish_call (&xdr, &call)) { - /* We have to extend and NULL-terminate the argv array. */ - argc = call.args.args_len; - argv = realloc (call.args.args_val, (argc+1) * sizeof (char *)); - if (argv == NULL) { - perror ("realloc"); - exit (1); - } - call.args.args_val = argv; - argv[argc] = NULL; - - if (verbose) { - fprintf (stderr, "guestfish(%d): %s", pid, call.cmd); - for (i = 0; i < argc; ++i) - fprintf (stderr, " %s", argv[i]); - fprintf (stderr, "\n"); - } - - /* Run the command. */ - reply.r = issue_command (call.cmd, argv, NULL); - - xdr_free ((xdrproc_t) xdr_guestfish_call, (char *) &call); - - /* Send the reply. */ - xdrstdio_create (&xdr2, fp, XDR_ENCODE); - (void) xdr_guestfish_reply (&xdr2, &reply); - xdr_destroy (&xdr2); - - /* Exit on error? */ - if (call.exit_on_error && reply.r == -1) { - unlink (sockpath); - exit (1); - } + /* We have to extend and NULL-terminate the argv array. */ + argc = call.args.args_len; + argv = realloc (call.args.args_val, (argc+1) * sizeof (char *)); + if (argv == NULL) { + perror ("realloc"); + exit (1); + } + call.args.args_val = argv; + argv[argc] = NULL; + + if (verbose) { + fprintf (stderr, "guestfish(%d): %s", pid, call.cmd); + for (i = 0; i < argc; ++i) + fprintf (stderr, " %s", argv[i]); + fprintf (stderr, "\n"); + } + + /* Run the command. */ + reply.r = issue_command (call.cmd, argv, NULL); + + xdr_free ((xdrproc_t) xdr_guestfish_call, (char *) &call); + + /* Send the reply. */ + xdrstdio_create (&xdr2, fp, XDR_ENCODE); + (void) xdr_guestfish_reply (&xdr2, &reply); + xdr_destroy (&xdr2); + + /* Exit on error? */ + if (call.exit_on_error && reply.r == -1) { + unlink (sockpath); + exit (1); + } } error: @@ -192,7 +192,7 @@ rc_listen (void) /* Remote control client. */ int rc_remote (int pid, const char *cmd, int argc, char *argv[], - int exit_on_error) + int exit_on_error) { guestfish_hello hello; guestfish_call call; diff --git a/fish/tilde.c b/fish/tilde.c index 13e6cd8f..f0a22590 100644 --- a/fish/tilde.c +++ b/fish/tilde.c @@ -64,8 +64,8 @@ try_tilde_expansion (char *str) len = strlen (home) + strlen (rest); str = malloc (len); if (str == NULL) { - perror ("malloc"); - exit (1); + perror ("malloc"); + exit (1); } strcpy (str, home); strcat (str, rest); @@ -113,7 +113,7 @@ find_home_for_username (const char *username, int ulen) setpwent (); while ((pw = getpwent ()) != NULL) { if (strlen (pw->pw_name) == ulen && - strncmp (username, pw->pw_name, ulen) == 0) + strncmp (username, pw->pw_name, ulen) == 0) return pw->pw_dir; } diff --git a/fish/time.c b/fish/time.c index aae9afe0..ed00c18e 100644 --- a/fish/time.c +++ b/fish/time.c @@ -47,8 +47,8 @@ do_time (const char *cmd, int argc, char *argv[]) end_us = (int64_t) end_t.tv_sec * 1000000 + end_t.tv_usec; elapsed_us = end_us - start_us; printf ("elapsed time: %d.%02d seconds\n", - (int) (elapsed_us / 1000000), - (int) ((elapsed_us / 10000) % 100)); + (int) (elapsed_us / 1000000), + (int) ((elapsed_us / 10000) % 100)); return 0; } |