Page MenuHomeFreeBSD

rpcsec_tls/server: API refactoring between kernel and rpc.tlsservd(8)
ClosedPublic

Authored by glebius on Mon, Jan 20, 9:06 PM.
Tags
None
Referenced Files
Unknown Object (File)
Sat, Feb 1, 3:01 PM
Unknown Object (File)
Fri, Jan 31, 8:33 PM
Unknown Object (File)
Sun, Jan 26, 7:40 PM
Unknown Object (File)
Sat, Jan 25, 9:08 AM
Unknown Object (File)
Sat, Jan 25, 9:08 AM
Unknown Object (File)
Sat, Jan 25, 8:36 AM
Unknown Object (File)
Thu, Jan 23, 5:40 PM
Unknown Object (File)
Wed, Jan 22, 2:22 PM
Subscribers

Details

Summary

Now that the conversion of rpcsec_tls/client + rpc.tlsclntd(8) to the
netlink(4) socket as RPC transport started using kernel socket pointer as
a reliable cookie, we can shave off quite a lot of complexity. We will
utilize the same kernel-generated cookie in all RPCs. And the need for
the daemon generated cookie in the form of timestamp+sequence vanishes.

We also stop passing notion of 'process position' from userland to
kernel. The TLS handshake parallelism to be reimplemented in the daemon
without any awareness about that in the kernel.

This time bump the RPC version.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 61839
Build 58723: arc lint + arc unit

Event Timeline

sys/rpc/rpcsec_tls/rpctls_impl.c
334

Minor nit, but wouldn't the cast be (uint64_t) and
not (uintptr_t)?

This shows up a few places in this patch.

Consistently use uint64_t for the cookie.

This revision is now accepted and ready to land.Sat, Feb 1, 12:02 AM