aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/src/messages.h
diff options
context:
space:
mode:
authorJason A. Donenfeld <Jason@zx2c4.com>2016-11-16 04:13:16 +0100
committerJason A. Donenfeld <Jason@zx2c4.com>2016-11-16 04:25:05 +0100
commit464dc025b8d1c435eaca9d1bd26b3585a1c19d3a (patch)
treee432090eb6a5da9f0558f01eb91094299ef20257 /src/messages.h
parentvarious: nits from willy (diff)
downloadwireguard-monolithic-historical-464dc025b8d1c435eaca9d1bd26b3585a1c19d3a.tar.xz
wireguard-monolithic-historical-464dc025b8d1c435eaca9d1bd26b3585a1c19d3a.zip
packets: consolidate constants
Diffstat (limited to 'src/messages.h')
-rw-r--r--src/messages.h12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/messages.h b/src/messages.h
index 0a799eb..7a4b14e 100644
--- a/src/messages.h
+++ b/src/messages.h
@@ -46,7 +46,10 @@ enum limits {
INITIATIONS_PER_SECOND = HZ / 50,
MAX_PEERS_PER_DEVICE = U16_MAX,
KEEPALIVE_TIMEOUT = 10 * HZ,
- MAX_TIMER_HANDSHAKES = (90 * HZ) / REKEY_TIMEOUT
+ MAX_TIMER_HANDSHAKES = (90 * HZ) / REKEY_TIMEOUT,
+ MAX_QUEUED_INCOMING_HANDSHAKES = 4096,
+ MAX_BURST_INCOMING_HANDSHAKES = 16,
+ MAX_QUEUED_OUTGOING_PACKETS = 1024
};
enum message_type {
@@ -108,6 +111,13 @@ enum message_alignments {
MESSAGE_MINIMUM_LENGTH = message_data_len(0)
};
+#define SKB_HEADER_LEN (max(sizeof(struct iphdr), sizeof(struct ipv6hdr)) + sizeof(struct udphdr) + NET_SKB_PAD)
+#define DATA_PACKET_HEAD_ROOM ALIGN(sizeof(struct message_data) + SKB_HEADER_LEN, 4)
+
+enum {
+ HANDSHAKE_DSCP = 0b10001000 /* AF41, plus 00 ECN */
+};
+
static inline enum message_type message_determine_type(void *src, size_t src_len)
{
struct message_header *header = src;