From f7548d6d28c313cf80e6f3ef89aed16a19815df1 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 28 Apr 2024 11:51:24 +0200 Subject: Adding upstream version 1:2.3.19.1+dfsg1. Signed-off-by: Daniel Baumann --- src/director/director-connection.h | 47 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 src/director/director-connection.h (limited to 'src/director/director-connection.h') diff --git a/src/director/director-connection.h b/src/director/director-connection.h new file mode 100644 index 0000000..2b8bf0f --- /dev/null +++ b/src/director/director-connection.h @@ -0,0 +1,47 @@ +#ifndef DIRECTOR_CONNECTION_H +#define DIRECTOR_CONNECTION_H + +struct director_connection_status { + uoff_t bytes_read, bytes_sent; + size_t bytes_buffered, peak_bytes_buffered; + struct timeval last_input, last_output; + unsigned int last_ping_msecs; + + unsigned int handshake_users_received; + unsigned int handshake_users_sent; +}; + +struct director_host; +struct director; + +struct director_connection * +director_connection_init_in(struct director *dir, int fd, + const struct ip_addr *ip); +struct director_connection * +director_connection_init_out(struct director *dir, int fd, + struct director_host *host); +void director_connection_deinit(struct director_connection **conn, + const char *remote_reason); + +void director_connection_send(struct director_connection *conn, + const char *data); +void director_connection_set_synced(struct director_connection *conn, + bool synced); +void director_connection_ping(struct director_connection *conn); + +const char *director_connection_get_name(struct director_connection *conn); +struct director_host * +director_connection_get_host(struct director_connection *conn); +bool director_connection_is_handshaked(struct director_connection *conn); +bool director_connection_is_synced(struct director_connection *conn); +bool director_connection_is_incoming(struct director_connection *conn); +unsigned int +director_connection_get_minor_version(struct director_connection *conn); + +void director_connection_cork(struct director_connection *conn); +void director_connection_uncork(struct director_connection *conn); + +void director_connection_get_status(struct director_connection *conn, + struct director_connection_status *status_r); + +#endif -- cgit v1.2.3