1
在linux中,從字符設備驅動程序的內核模塊中打開套接字是否可行?我試圖通過網絡模擬char設備的輸出/輸入流。但據我搜索打開從char設備的套接字是不可能的?從char設備驅動程序訪問udp/tcp端口的任何其他選項?在字符設備驅動程序中的套接字通信
在linux中,從字符設備驅動程序的內核模塊中打開套接字是否可行?我試圖通過網絡模擬char設備的輸出/輸入流。但據我搜索打開從char設備的套接字是不可能的?從char設備驅動程序訪問udp/tcp端口的任何其他選項?在字符設備驅動程序中的套接字通信
是的,您可以打開套接字並在內核代碼中與遠程主機通信,一個生動的例子是NFS
模塊,它使用sunrpc
作爲它的協議,並且它們都在內核模塊中運行。
作爲開始,請看kernel_connect
[1]開始連接,然後kernel_sock_shutdown
關閉連接。在socket.c
有完整的apis列表。
[1] http://lxr.free-electrons.com/source/net/socket.c#L3212
感謝@fluter。 – RedArrow