From 57cbb43a3bd07be32d7131f31a071754092a9c68 Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Sat, 15 Nov 2014 12:32:31 +0100 Subject: [PATCH] advertise a new DTLS session only when it is one --- src/main.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/main.c b/src/main.c index 926e0754..2c1d5dd9 100644 --- a/src/main.c +++ b/src/main.c @@ -695,10 +695,12 @@ time_t now; } /* check version */ - mslog(s, NULL, LOG_DEBUG, "new DTLS session from %s (record v%u.%u, hello v%u.%u)", - human_addr((struct sockaddr*)&cli_addr, cli_addr_size, tbuf, sizeof(tbuf)), - (unsigned int)buffer[1], (unsigned int)buffer[2], - (unsigned int)buffer[RECORD_PAYLOAD_POS], (unsigned int)buffer[RECORD_PAYLOAD_POS+1]); + if (buffer[0] == 22) { + mslog(s, NULL, LOG_DEBUG, "new DTLS session from %s (record v%u.%u, hello v%u.%u)", + human_addr((struct sockaddr*)&cli_addr, cli_addr_size, tbuf, sizeof(tbuf)), + (unsigned int)buffer[1], (unsigned int)buffer[2], + (unsigned int)buffer[RECORD_PAYLOAD_POS], (unsigned int)buffer[RECORD_PAYLOAD_POS+1]); + } if (buffer[1] != 254 && (buffer[1] != 1 && buffer[2] != 0) && buffer[RECORD_PAYLOAD_POS] != 254 && (buffer[RECORD_PAYLOAD_POS] != 0 && buffer[RECORD_PAYLOAD_POS+1] != 0)) { @@ -707,6 +709,7 @@ time_t now; (unsigned)buffer[1], (unsigned)buffer[2]); goto fail; } + if (buffer[0] != 22) { mslog(s, NULL, LOG_DEBUG, "%s: unexpected DTLS content type: %u; possibly a firewall disassociated a UDP session", human_addr((struct sockaddr*)&cli_addr, cli_addr_size, tbuf, sizeof(tbuf)),