High CPU usage from telnet server (utelnetd)


This is more of a FYI in case someone searches for it (because I don't see it documented), rather than a request to fix, as it's not going to affect many people and can easily be worked around. I noticed this years ago but having spotted it again recently I remembered we had the same issue with an embedded Linux system at work. That was using busybox's telnet server whereas the Humax is not but the symptoms are the same (at work we upgraded to a newer Busybox and the problem went away).
The issue is that the telnet server in the Humax is old and does not correctly support the telnet protocol "NOP" command (code 241). Some telnet clients will send it as a "keepalive" occasionally if no other client -> server traffic is detected. There's two issues here if the client is sending keepalives:
  1. The server incorrectly interprets the NOP code as user input, so the next valid user input fails with junk characters at the start, e.g.: pppp.jpg
  2. If server data is being send from a command running on the Humax, the telnet server goes into high CPU usage after receiving the NOP command, e.g.: telnet-cpu.jpg
The easy workaround is to not send a keepalive, this will be client specific (e.g. Tera Term defaults to 5 minutes, but can be altered or disabled in the Setup -> TCP/IP menu)