diff options
| author | Andre Noll <maan@tuebingen.mpg.de> | 2026-10-24 00:16:39 +0200 |
|---|---|---|
| committer | Andre Noll <maan@tuebingen.mpg.de> | 2026-10-24 00:16:39 +0200 |
| commit | 50cfa44d1542c34ac452068e947cac4df68ef203 (patch) | |
| tree | ec45575ea305913f391e98db3372bcdf240f6412 /client.h | |
| parent | 73e12406cc690005a4c907e84b1b7d883670bc9f (diff) | |
| parent | 532eca24d41745ade0c1538f768883132c0c85e2 (diff) | |
Merge topic branch t/mixer into pupu
para_mixer improvements
-----------------------
Link para_mixer with audioc_common.o to make it single threaded.
* t/mixer:
Make para_mixer single-threaded.
mixer: Introduce die().
crypt: use {con,de}structor to init/shutdown the library.
client: Use a named enumeration for the client status.
Introduce struct client_config to hide context from public API.
mixer: Link with audioc_common.o
Move recv_buffer() and recv_bin_buffer() from net.c to fd.c.
mixer: Rename client_cmd() -> run_client_cmd().
mixer: Rename audioc_cmd() -> run_audioc_cmd().
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); |
