Hi, I noticed that kbd(8) lets you list all available keyboard encodings with the -l flag. However, we get no error and no list unless we're running this as root. I apologize if this is intended and I fail to understand why. If not intended, the patch below will check if we're root or otherwise error out.
Jesper Wallin Index: sbin/kbd/main.c =================================================================== RCS file: /cvs/src/sbin/kbd/main.c,v retrieving revision 1.8 diff -u -p -r1.8 main.c --- sbin/kbd/main.c 30 Dec 2007 13:50:43 -0000 1.8 +++ sbin/kbd/main.c 29 Aug 2017 18:40:27 -0000 @@ -32,6 +32,7 @@ * SUCH DAMAGE. */ +#include <err.h> #include <unistd.h> #include <stdio.h> #include <stdlib.h> @@ -68,6 +69,9 @@ main(int argc, char *argv[]) } if (argc != optind + list_tables ? 0 : 1) usage(); + + if (geteuid() != 0) + errx(1, "need root privileges"); if (list_tables) kbd_list();