On Mon, Jun 22, 2020 at 06:33:30PM -0600, Theo de Raadt wrote:
> > +character erase (^H) and line kill (^U) characters
>
> ^H is wrong
How so? It is currently hardcoded as such in engine.c:cmd_keyboard():
1188 switch (ch) {
1189 case KEY_ENTER:
1190 case 0x0a:
1191 case 0x0d:
1192 {
1193 struct command * c = command_set(NULL, NULL);
1194 c->exec(cmdbuf);
1195 break;
1196 }
1197 case KEY_BACKSPACE:
1198 case KEY_DC:
1199 case CTRL_H:
1200 if (cmd_len > 0) {
1201 cmdbuf[--cmd_len] = 0;
1202 } else
1203 beep();
1204 break;
1205 case 0x1b:
1206 case CTRL_G:
1207 if (cmd_len > 0) {
1208 cmdbuf[0] = '\0';
1209 cmd_len = 0;
1210 } else
1211 command_set(NULL, NULL);
1212 break;
1213 default:
1214 break;
1215 }
1216 }