diff --git a/mud.c b/mud.c index a80400f..20dc976 100644 --- a/mud.c +++ b/mud.c @@ -161,6 +161,12 @@ struct mud { int set; struct sockaddr_storage addr; } peer; + struct { + struct { + size_t count; + uint64_t time; + } decrypt; + } bad; struct { unsigned char kiss[MUD_KISS_SIZE]; } remote, local; @@ -1194,7 +1200,8 @@ mud_recv(struct mud *mud, void *data, size_t size) if (!mud_packet) { ret = mud_decrypt(mud, data, size, packet, packet_size); if (ret == -1) { - // XXX + mud->bad.decrypt.count++; + mud->bad.decrypt.time = now; return 0; } }