diff options
Diffstat (limited to 'client.h')
| -rw-r--r-- | client.h | 18 |
1 files changed, 4 insertions, 14 deletions
@@ -3,7 +3,7 @@ /** \file client.h Common client functions and exported symbols from client_common.c. */ /** The different states of a connection from the view of the client. */ -enum { +enum client_status { /** TCP connection is established. */ CL_CONNECTED, /** Server sends the welcome message. */ @@ -25,25 +25,13 @@ enum { /** Data specific to a client task. */ struct client_task { /** The state of the connection. */ - int status; - /** The file descriptor and the session keys. */ - struct stream_cipher_context scc; - /** The sideband contexts for receiving/sending. */ - struct sb_context *sbc[2]; + enum client_status status; /** The buffer tree nodes for receiving/sending. */ struct btr_node *btrn[2]; - /** The hash value of the decrypted challenge. */ - unsigned char *challenge_hash; /** The parsed command line (including the command). */ struct lls_parse_result *lpr; - /** The RSA private key. */ - char *key_file; - /** Paraslash user name. */ - char *user; /** The client task structure. */ struct task *task; - /** List of features supported by the server. */ - char **features; }; #define CLIENT_CMD_PTR (lls_cmd(0, client_suite)) @@ -56,6 +44,7 @@ struct client_task { #define CLIENT_OPT_STRING_VAL(_name, _lpr) \ (lls_string_val(0, CLIENT_OPT_RESULT(_name, _lpr))) +struct sched; /* avoid gcc warning */ void client_close(struct client_task *ct); int client_parse_config(int argc, char *argv[], struct client_task **ct_ptr); int client_connect(struct client_task *ct, struct sched *s, @@ -63,3 +52,4 @@ int client_connect(struct client_task *ct, struct sched *s, int client_open(int argc, char *argv[], struct client_task **ct_ptr, struct btr_node *parent, struct btr_node *child, struct sched *sched); +int client_run(int argc, char *argv[], char **result); |
