X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=client.h;h=8490b72f8f598aa15798e0a4746fd9176370bebd;hp=8b0447aedecfee02b28b554d1592c89fd38ffb1d;hb=d0d27cfa56d05eaa0e5567c75adfe606eab2957e;hpb=9609fd30e0d3db45ede3ab5c6bc3a77c15b6aef8 diff --git a/client.h b/client.h index 8b0447ae..8490b72f 100644 --- a/client.h +++ b/client.h @@ -1,13 +1,11 @@ /* - * Copyright (C) 1997-2009 Andre Noll + * Copyright (C) 1997-2012 Andre Noll * * Licensed under the GPL v2. For licencing details see COPYING. */ /** \file client.h Common client functions and exported symbols from client_common.c. */ -#include - /** The different states of a connection from the view of the client. */ enum { /** TCP connection is established. */ @@ -32,8 +30,8 @@ enum { struct client_task { /** The state of the connection. */ int status; - /** The file descriptor and the rc4 keys. */ - struct rc4_context rc4c; + /** The file descriptor and the session keys. */ + struct stream_cipher_context scc; /** The configuration (including the command). */ struct client_args_info conf; /** The config file for client options. */ @@ -44,9 +42,16 @@ struct client_task { char *user; /** The client task structure. */ struct task task; + /** The buffer tree node of the client task. */ struct btr_node *btrn; }; +void client_disconnect(struct client_task *ct); void client_close(struct client_task *ct); +int client_parse_config(int argc, char *argv[], struct client_task **ct_ptr, + int *loglevel); +int client_connect(struct client_task *ct, struct sched *s, + struct btr_node *parent, struct btr_node *child); int client_open(int argc, char *argv[], struct client_task **ct_ptr, - int *loglevel, struct btr_node *parent, struct btr_node *child); + int *loglevel, struct btr_node *parent, struct btr_node *child, + struct sched *sched);