krpc: add kernel side client over netlink(4)

This shall be the official transport to connect kernel side RPC clients
to userland side RPC servers.  All current kernel side clients that
hijack unix(4) sockets will be converted to it.  Some implementation
details are available inside new clnt_nl.c.

The complementary RPC server over netlink(4) coming in next commit.

Reviewed by:		rmacklem
Differential Revision:	https://reviews.freebsd.org/D48549
This commit is contained in:
Gleb Smirnoff
2025-01-31 17:01:57 -08:00
parent 5418b1ebdf
commit fa1b961259
8 changed files with 575 additions and 1 deletions
+6
View File
@@ -1,3 +1,6 @@
.include <src.opts.mk>
.PATH: ${SRCTOP}/sys/rpc
.SUFFIXES: .x
RPCCOM= RPCGEN_CPP=${CPP:Q} rpcgen -C
@@ -11,6 +14,9 @@ HFILES= auth.h auth_unix.h clnt.h clnt_soc.h clnt_stat.h \
rpc.h rpc_msg.h rpcb_clnt.h rpcent.h rpc_com.h rpcsec_gss.h \
svc.h svc_auth.h svc_soc.h svc_dg.h xdr.h
# User visible declarations for kernel RPC modules
HFILES+= clnt_nl.h
# Secure RPC
HFILES+= auth_des.h des.h des_crypt.h