From ed609e622351e0c0bf3bbe6d6d218e3a8c07cafc Mon Sep 17 00:00:00 2001 From: Maxim Prokhorov Date: Tue, 1 May 2018 18:45:41 +0300 Subject: [PATCH] Handle C-d in telnet --- code/espurna/telnet.ino | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/code/espurna/telnet.ino b/code/espurna/telnet.ino index fc3912c6..996da567 100644 --- a/code/espurna/telnet.ino +++ b/code/espurna/telnet.ino @@ -66,6 +66,15 @@ void _telnetData(unsigned char clientId, void *data, size_t len) { // Capture close connection char * p = (char *) data; + + // C-d is sent as two bytes + if (len == 2) { + if ((p[0] == 0xFF) && (p[1] == 0xEC)) { + _telnetClients[clientId]->close(); + return; + } + } + if ((strncmp(p, "close", 5) == 0) || (strncmp(p, "quit", 4) == 0)) { _telnetClients[clientId]->close(); return;