API de socket estilo BSD en el espacio del kernel para redes TCP/IP. El ksocket original para v2.6 se publicó en http://ksocket.sourceforge.net/. Este repositorio contiene cambios para hacerlo compatible con nuevas versiones del kernel. La API de ksocket se ha actualizado para incorporar los cambios relacionados con la interfaz iov_iter introducida en el kernel v3.19+.
$ git clone https://github.com/hbagdi/ksocket.git
$ cd ksocket/src
$ make # make sure you have the kernel headers/tree installed
$ sudo insmod ksocket.ko
#now you can use the exported symbols from this kernel module
Mire el subdirectorio sample
para ver ejemplos de código.
$ cd ksocket/sample/tcp/
$ make
# two kernel modules are ksocket_tcp_cli_demo.ko(TCP client) and ksocket_tcp_srv_demo.ko(TCP server)
$ sudo ksocket_tcp_srv_demo.ko
$ sudo ksocket_tcp_cli_demo.ko
$ dmesg
El trabajo original de ksocket era soportar Linux 2.6, sin embargo, se incluyó soporte para v5.4.0.
La compatibilidad con v5.4.0 es un trabajo en Linux ubuntu 5.4.0-66 x86-64, por lo tanto, no hay garantía de que funcione bien en las versiones > 2.6 && < 5.3.x
Para mantener estable la versión 2.6 se dejó sin trabajo la 5.4.0, en su lugar ahora tenemos dos ramas: v2.6 (master) y v5.4.0
https://github.com/hbagdi/ksocket
https://github.com/hbagdi/ksocket/tree/linux-5.4.0
Envíe un correo electrónico a [email protected] para obtener más ayuda.