X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=client.h;h=f8cc5d649bb682ba497212b87a7417d911c44472;hp=82dbc03327260cb9d3810c47f0e8d972f421d70e;hb=07daa886fda65b868966c19e812c42433ffbfd5b;hpb=027f2c1237051d2d569d6be7f381c886f659bac3 diff --git a/client.h b/client.h index 82dbc033..f8cc5d64 100644 --- a/client.h +++ b/client.h @@ -1,8 +1,4 @@ -/* - * Copyright (C) 1997-2014 Andre Noll - * - * Licensed under the GPL v2. For licencing details see COPYING. - */ +/* Copyright (C) 1997 Andre Noll , see file COPYING. */ /** \file client.h Common client functions and exported symbols from client_common.c. */ @@ -38,8 +34,8 @@ struct client_task { struct btr_node *btrn[2]; /** The hash value of the decrypted challenge. */ unsigned char *challenge_hash; - /** The configuration (including the command). */ - struct client_args_info conf; + /** The parsed command line (including the command). */ + struct lls_parse_result *lpr; /** The config file for client options. */ char *config_file; /** The RSA private key. */ @@ -47,12 +43,21 @@ struct client_task { /** Paraslash user name. */ char *user; /** The client task structure. */ - struct task task; + struct task *task; /** List of features supported by the server. */ char **features; }; -void client_disconnect(struct client_task *ct); +#define CLIENT_CMD_PTR (lls_cmd(0, client_suite)) +#define CLIENT_OPT_RESULT(_name, _lpr) \ + (lls_opt_result(LSG_CLIENT_PARA_CLIENT_OPT_ ## _name, _lpr)) +#define CLIENT_OPT_GIVEN(_name, _lpr) \ + (lls_opt_given(CLIENT_OPT_RESULT(_name, _lpr))) +#define CLIENT_OPT_UINT32_VAL(_name, _lpr) \ + (lls_uint32_val(0, CLIENT_OPT_RESULT(_name, _lpr))) +#define CLIENT_OPT_STRING_VAL(_name, _lpr) \ + (lls_string_val(0, CLIENT_OPT_RESULT(_name, _lpr))) + void client_close(struct client_task *ct); int client_parse_config(int argc, char *argv[], struct client_task **ct_ptr, int *loglevel);