API de soquete estilo BSD no espaço do kernel para redes TCP/IP. O ksocket original para v2.6 foi publicado em http://ksocket.sourceforge.net/. Este repositório contém alterações para torná-lo compatível com novas versões do kernel. A API ksocket foi atualizada para incorporar as mudanças relacionadas à interface iov_iter introduzida no 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
Veja o subdiretório sample
para exemplos 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
O trabalho original do ksocket era suportar Linux 2.6, porém o suporte para v5.4.0 foi incluído.
O suporte v5.4.0 é um trabalho no Linux ubuntu 5.4.0-66 x86-64, portanto não há garantia de que funcione bem nas versões> 2.6 && <5.3.x
Para manter a versão 2.6 estável ela ficou sem o trabalho da 5.4.0, em vez disso temos agora duas ramificações: v2.6 (master) e v5.4.0
https://github.com/hbagdi/ksocket
https://github.com/hbagdi/ksocket/tree/linux-5.4.0
Envie um e-mail para [email protected] para obter mais ajuda.