X-Git-Url: https://tinc-vpn.org/git/browse?a=blobdiff_plain;f=src%2Fsptps.h;h=efca2b3eab05e0b364ec61c780183b6c2e0c22ba;hb=5217c16db4babd64580c2fd7aa36180bb9bd838c;hp=3a8e65f7a7630853dc890426b1efff8693430482;hpb=fa20cfceecee1756ecb7882b6fe9167f4db92777;p=tinc diff --git a/src/sptps.h b/src/sptps.h index 3a8e65f7..efca2b3e 100644 --- a/src/sptps.h +++ b/src/sptps.h @@ -22,8 +22,7 @@ #include "system.h" -#include "cipher.h" -#include "digest.h" +#include "chacha-poly1305/chacha-poly1305.h" #include "ecdh.h" #include "ecdsa.h" @@ -40,6 +39,9 @@ #define SPTPS_SIG 3 // Waiting for a SIGnature record #define SPTPS_ACK 4 // Waiting for an ACKnowledgement record +// Overhead for datagrams +#define SPTPS_DATAGRAM_OVERHEAD 21 + typedef bool (*send_data_t)(void *handle, uint8_t type, const char *data, size_t len); typedef bool (*receive_record_t)(void *handle, uint8_t type, const char *data, uint16_t len); @@ -53,8 +55,7 @@ typedef struct sptps { uint16_t reclen; bool instate; - cipher_t *incipher; - digest_t *indigest; + chacha_poly1305_ctx_t *incipher; uint32_t inseqno; uint32_t received; unsigned int replaywin; @@ -62,8 +63,7 @@ typedef struct sptps { char *late; bool outstate; - cipher_t *outcipher; - digest_t *outdigest; + chacha_poly1305_ctx_t *outcipher; uint32_t outseqno; ecdsa_t *mykey;