diff options
author | Yaroslav de la Peña Smirnov <yps@yaroslavps.com> | 2023-02-11 01:51:36 +0300 |
---|---|---|
committer | Yaroslav de la Peña Smirnov <yps@yaroslavps.com> | 2023-02-11 01:51:36 +0300 |
commit | 017598b41e59aa0bdb121020c29746cd062cdec0 (patch) | |
tree | ac4227f670146feae286fa9afb0d6dbd2f41dbea /README.md | |
download | genltest-017598b41e59aa0bdb121020c29746cd062cdec0.tar.gz genltest-017598b41e59aa0bdb121020c29746cd062cdec0.zip |
Diffstat (limited to 'README.md')
-rw-r--r-- | README.md | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/README.md b/README.md new file mode 100644 index 0000000..6b02651 --- /dev/null +++ b/README.md @@ -0,0 +1,30 @@ +# Generic Netlink example + +This repository contains an example of how to use the Generic Netlink +communication protocol of the Linux Kernel both in kernel space and user space. + +For more information read my introductory article +[here](https://www.yaroslavps.com/weblog/genl-intro/); or if you are the +adventurous kind just read the source, it's got plenty of comments :) + +## Build and run + +### Kernel module + +In order to build the kernel module you need to have installed the Linux kernel +headers in your system. + +Once you've got the requirements covered just switch to the `ks/` directory and +`make` it. + +If the build completed successfully, you should be able to load the +`genltest.ko` module using insmod. + +### User space program + +In order to build the program you need to have libnl installed. + +Once installed just switch to the `us/` directory and `make` it. + +If the build completed successfully, and once you have loaded the aforementioned +`genltest.ko` module, you should be able to run the program `./genltest`. |