X-Git-Url: https://tinc-vpn.org/git/browse?a=blobdiff_plain;f=src%2Fconnection.h;h=600c9542b7769460c10ed4bcb55d4e71a132f18c;hb=0f8e3c9f6f2ed4052387397756cd6e05cd28cd00;hp=98177448a513b297a9bf239bebae19ddebcce308;hpb=90cde91141ec61be4354d8deab21edb8fdf01022;p=tinc diff --git a/src/connection.h b/src/connection.h index 98177448..600c9542 100644 --- a/src/connection.h +++ b/src/connection.h @@ -27,6 +27,7 @@ #include "rsa.h" #include "list.h" #include "sptps.h" +#include "logger.h" #define OPTION_INDIRECT 0x0001 #define OPTION_TCPONLY 0x0002 @@ -48,6 +49,7 @@ typedef union connection_status_t { bool control: 1; /* 1 if this is a control connection */ bool pcap: 1; /* 1 if this is a control connection requesting packet capture */ bool log: 1; /* 1 if this is a control connection requesting log dump */ + bool log_color: 1; /* 1 if this connection supports ANSI escape codes */ bool invitation: 1; /* 1 if this is an invitation */ bool invitation_used: 1; /* 1 if the invitation has been consumed */ bool tarpit: 1; /* 1 if the connection should be added to the tarpit */ @@ -77,7 +79,7 @@ typedef struct legacy_ctx_t { legacy_crypto_t out; /* cipher/digest we will use to send data to him */ } legacy_ctx_t; -legacy_ctx_t *new_legacy_ctx(rsa_t *rsa) ATTR_MALLOC; +legacy_ctx_t *new_legacy_ctx(rsa_t *rsa); void free_legacy_ctx(legacy_ctx_t *ctx); #endif @@ -107,7 +109,7 @@ typedef struct connection_t { sptps_t sptps; int outmaclength; - int outcompression; /* compression level from compression_level_t */ + debug_t log_level; /* used for REQ_LOG */ uint8_t *hischallenge; /* The challenge we sent to him */ uint8_t *mychallenge; /* The challenge we received */ @@ -115,8 +117,8 @@ typedef struct connection_t { struct buffer_t inbuf; struct buffer_t outbuf; io_t io; /* input/output event on this metadata connection */ - int tcplen; /* length of incoming TCPpacket */ - int sptpslen; /* length of incoming SPTPS packet */ + uint32_t tcplen; /* length of incoming TCPpacket */ + uint32_t sptpslen; /* length of incoming SPTPS packet */ int allow_request; /* defined if there's only one request possible */ time_t last_ping_time; /* last time we saw some activity from the other end or pinged them */ @@ -129,8 +131,8 @@ extern connection_t *everyone; extern void init_connections(void); extern void exit_connections(void); -extern connection_t *new_connection(void) ATTR_MALLOC; extern void free_connection(connection_t *c); +extern connection_t *new_connection(void) ATTR_MALLOC ATTR_DEALLOCATOR(free_connection); extern void connection_add(connection_t *c); extern void connection_del(connection_t *c); extern bool dump_connections(struct connection_t *c);