Revert "ircv3 STS: advertise sts= (port on plaintext, duration/preload on tls) — the modern tls-upgrade cap"

This reverts commit e0b22a34d0.
This commit is contained in:
Jean Chevronnet 2026-08-08 21:51:06 +00:00
parent 6cf9f01ff8
commit 045e7d3ee7
4 changed files with 8 additions and 55 deletions

View file

@ -76,9 +76,6 @@ pub struct Config {
pub dnsbl_reason: String, // ban reason for a DNSBL hit
pub sasl_server: String, // linked services server that handles SASL ("" = none)
pub webirc: Vec<(String, String, String)>, // web gateways: (password, name, ip-mask)
pub sts_duration: u64, // IRCv3 STS: seconds a client must keep using TLS (0 = STS off)
pub sts_port: u16, // TLS port to advertise in STS (0 = derive from bind_tls)
pub sts_preload: bool, // STS preload flag
}
impl Default for Config {
@ -107,9 +104,6 @@ impl Default for Config {
dnsbl_reason: "Your host is listed in a DNS blocklist".to_string(),
sasl_server: String::new(),
webirc: Vec::new(),
sts_duration: 0,
sts_port: 0,
sts_preload: false,
}
}
}
@ -243,9 +237,6 @@ impl Config {
"dnsbl_action" => c.dnsbl_action = v.to_ascii_lowercase(),
"dnsbl_reason" => c.dnsbl_reason = v.to_string(),
"sasl_server" | "sasl_target" => c.sasl_server = v.to_string(),
"sts_duration" => c.sts_duration = v.parse().unwrap_or(0),
"sts_port" => c.sts_port = v.parse().unwrap_or(0),
"sts_preload" => c.sts_preload = matches!(v, "on" | "yes" | "true" | "1"),
"webirc" => {
// webirc = <password> [gateway-name] [ip-mask]
let mut it = v.split_whitespace();
@ -258,16 +249,5 @@ impl Config {
_ => {}
}
}
// STS advertises a TLS port to insecure clients; default it to the TLS listener's.
if c.sts_duration > 0 && c.sts_port == 0 {
if let Some(p) = c
.bind_tls
.as_deref()
.and_then(|b| b.rsplit(':').next())
.and_then(|p| p.parse::<u16>().ok())
{
c.sts_port = p;
}
}
}
}