O'Reilly logo
  • Alain O'Dea thinks this is interesting:

void fatal(char *message) { char error_message[100]; strcpy(error_message, "[!!] Fatal Error "); strncat(error_message, message, 83); perror(error_message); exit(-1); }


Cover of Hacking: The Art of Exploitation, 2nd Edition


The functions should be in a separate source file and linked at compile time. The header should not have the implementations. This is not clean C code.