# Linux Kernel Module Cheat

##### 17.7.2.1. /proc/version

Its data is shared with `uname()`, which is a POSIX C function and has a Linux syscall to back it up.

Where the data comes from and how to modify it:

- https://unix.stackexchange.com/questions/136959/where-does-uname-get-its-information-from/485962#485962

- https://stackoverflow.com/questions/23424174/how-to-customize-or-remove-extra-linux-kernel-version-details-shown-at-boot

In this repo, leaking host information, and to make builds more reproducible, we are setting:

- user and date to dummy values with `KBUILD_BUILD_USER` and `KBUILD_BUILD_TIMESTAMP`

- hostname to the kernel git commit with `KBUILD_BUILD_HOST` and `KBUILD_BUILD_VERSION`

A sample result is:

    Linux version 4.19.0-dirty (lkmc@84df9525b0c27f3ebc2ebb1864fa62a97fdedb7d) (gcc version 6.4.0 (Buildroot 2018.05-00002-gbc60382b8f)) #1 SMP Thu Jan 1 00:00:00 UTC 1970