sasl external: request tls client cert, plumb sha256 certfp through to user, relay to services; advertise sasl=PLAIN,EXTERNAL on tls

This commit is contained in:
Jean Chevronnet 2026-08-08 19:36:48 +00:00
parent 8d31feb4e7
commit 02528df5e9
7 changed files with 75 additions and 9 deletions

View file

@ -24,8 +24,9 @@ pub enum Event {
out: OutSink,
sock: Option<TcpStream>,
secure: bool,
link: bool, // a server-to-server connection, not a client
outbound: bool, // (link) we dialed them
certfp: Option<String>, // TLS client-cert fingerprint (clients only)
link: bool, // a server-to-server connection, not a client
outbound: bool, // (link) we dialed them
},
Line {
uid: Uid,
@ -70,13 +71,14 @@ impl Ircd {
out,
sock,
secure,
certfp,
link,
outbound,
} => {
if link {
self.server.add_link(uid, addr, out, sock, outbound);
} else {
self.server.add_conn(uid, addr, out, sock, secure);
self.server.add_conn(uid, addr, out, sock, secure, certfp);
}
}
Event::Line { uid, line } => {