--- telnet/libtelnet/encrypt.c 2009-11-05 20:15:06.000000000 +0000 +++ telnet/libtelnet/encrypt.c.oden 2011-12-28 10:13:27.000000000 +0000 @@ -757,6 +757,9 @@ static void encrypt_keyid(kp, keyid, len int dir = kp->dir; register int ret = 0; + if (len > MAXKEYLEN) + len = MAXKEYLEN; + if (!(ep = (*kp->getcrypt)(*kp->modep))) { if (len == 0) return;