X-Git-Url: http://git.tuebingen.mpg.de/?a=blobdiff_plain;f=client.c;h=8caf44839919fb33c1368715c528f507ebc7a5c9;hb=d440a71683940a58747de6dc32643db452d9cf54;hp=3cb00e8b03befbf09e5b3a5ce8a783b799801e89;hpb=f90e920b43eb4035ded061bb889c8e4d819a2a97;p=paraslash.git diff --git a/client.c b/client.c index 3cb00e8b..8caf4483 100644 --- a/client.c +++ b/client.c @@ -1,8 +1,4 @@ -/* - * Copyright (C) 1997 Andre Noll - * - * Licensed under the GPL v2. For licencing details see COPYING. - */ +/* Copyright (C) 1997 Andre Noll , see file COPYING. */ /** \file client.c The client program used to connect to para_server. */ @@ -104,7 +100,7 @@ static int create_merged_lpr(const char *line) /* * The original lpr for the interactive session has no non-option * arguments. We create a fresh lpr from the words in "line" and merge - * it with the orignal lpr. + * it with the original lpr. */ ret = lls(lls_parse(argc, argv, cmd, &argv_lpr, &errctx)); free_argv(argv); @@ -247,14 +243,19 @@ I9E_DUMMY_COMPLETER(term); I9E_DUMMY_COMPLETER(stop); I9E_DUMMY_COMPLETER(addatt); I9E_DUMMY_COMPLETER(init); -I9E_DUMMY_COMPLETER(tasks); static struct i9e_completer completers[]; static void help_completer(struct i9e_completion_info *ci, - struct i9e_completion_result *result) + struct i9e_completion_result *cr) { - result->matches = i9e_complete_commands(ci->word, completers); + char *opts[] = {LSG_SERVER_CMD_HELP_OPTS, NULL}; + + if (ci->word[0] == '-') { + i9e_complete_option(opts, ci, cr); + return; + } + cr->matches = i9e_complete_commands(ci->word, completers); } static void stat_completer(struct i9e_completion_info *ci, @@ -497,7 +498,6 @@ static int client_i9e_line_handler(char *line) return 1; } -I9E_DUMMY_COMPLETER(SUPERCOMMAND_UNAVAILABLE); static struct i9e_completer completers[] = { #define LSG_SERVER_CMD_CMD(_name) {.name = #_name, \ .completer = _name ## _completer} @@ -623,7 +623,7 @@ int main(int argc, char *argv[]) { int ret; - init_random_seed_or_die(); + crypt_init(); sched.default_timeout.tv_sec = 1; ret = client_parse_config(argc, argv, &ct, &client_loglevel); @@ -669,6 +669,7 @@ int main(int argc, char *argv[]) } } sched_shutdown(&sched); + crypt_shutdown(); out: if (ret < 0) PARA_ERROR_LOG("%s\n", para_strerror(-ret));