Authentication-Results: mail-b.sr.ht; dkim=pass header.d=hacktheplanet.fi header.i=@hacktheplanet.fi Received: from mail.hacktheplanet.fi (mail.hacktheplanet.fi [95.216.157.116]) by mail-b.sr.ht (Postfix) with ESMTPS id 688E511EE64 for <~emersion/public-inbox@lists.sr.ht>; Mon, 16 Jan 2023 09:12:47 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; s=gibson; bh=3eWFwqaugWyVn gycO1Gkc/L0RWuA8m5L0IsNliDFlzA=; h=subject:to:from:date; d=hacktheplanet.fi; b=Y8WFgLpBRgEwqdcbTow1jOQMG4SEoinfUFAWEnqgEXsLScZC pfkjKr1XbcZZzIEb6lEAgJZTWN4z9XADCwe5h5PES3H0VU36Y7tF++jzE4zDA4juxv4fwY +hkZrV7kgOL/3EiwjQX9FF33Fk0e6RyQA9cWE3qTOAI5p3S5n/7UozzGlScInNZGzG7LO4 NguJS2OWPx3Liw4W0jlZW6U60vnJ304nvXSLdwv2+iDR4LDiSKHtEgGAwk1VVeMCGYAUMc 3zm4LvAxg6Et0wr8m337Gj1D5RNc7vpBSI4ILXNwz0aWAE3qAU1cOkcrLHeA8BC4ReW3cr 5g3c+BUAwnWYEw== Received: from gutsman.lotheac.fi (1-21-49-31.east.dxpn.ucom.ne.jp [1.21.49.31]) by mail.hacktheplanet.fi (OpenSMTPD) with ESMTPSA id 4c0a53c1 (TLSv1.3:TLS_AES_256_GCM_SHA384:256:NO) for <~emersion/public-inbox@lists.sr.ht>; Mon, 16 Jan 2023 09:12:44 +0000 (UTC) Received: from localhost (gutsman.lotheac.fi [local]) by gutsman.lotheac.fi (OpenSMTPD) with ESMTPA id 2e74f8e7 for <~emersion/public-inbox@lists.sr.ht>; Mon, 16 Jan 2023 09:12:40 +0000 (UTC) Date: Mon, 16 Jan 2023 18:12:40 +0900 From: Lauri Tirkkonen To: ~emersion/public-inbox@lists.sr.ht Subject: [PATCH gamja] add TLS checkbox to network form Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline also, remove the default value for the port field; per the bouncer-networks spec, if it's missing the bouncer should automatically choose the appropriate port (6667 or 6697, depending on tls) --- components/app.js | 4 ++-- components/network-form.js | 10 +++++++++- lib/irc.js | 16 +++++++++++++--- 3 files changed, 24 insertions(+), 6 deletions(-) diff --git a/components/app.js b/components/app.js index 48dc72b..53bb946 100644 --- a/components/app.js +++ b/components/app.js @@ -1304,6 +1304,7 @@ export default class App extends Component { } let { host, port } = splitHostPort(url.host); + let tls = url.tls; let serverID; if (!url.host) { @@ -1317,7 +1318,7 @@ export default class App extends Component { return false; } - let params = { host }; + let params = { host, tls }; if (typeof port === "number") { params.port = port; } @@ -1831,7 +1832,6 @@ export default class App extends Component { params: ["CHANGENETWORK", this.state.dialogData.id, irc.formatTags(attrs)], }); } else { - attrs = { ...attrs, tls: "1" }; client.createBouncerNetwork(attrs).then((id) => { if (!autojoin) { return; diff --git a/components/network-form.js b/components/network-form.js index 1610040..d06682b 100644 --- a/components/network-form.js +++ b/components/network-form.js @@ -3,7 +3,8 @@ import { html, Component } from "../lib/index.js"; const defaultParams = { name: "", host: "", - port: 6697, + port: null, + tls: true, nickname: "", username: "", realname: "", @@ -32,6 +33,9 @@ export default class NetworkForm extends Component { this.prevParams[k] = props.params[k]; } }); + if (typeof this.state["tls"] === "string") { + this.state["tls"] = this.state["tls"] === "1" ? true : false; + } } } @@ -103,6 +107,10 @@ export default class NetworkForm extends Component { Port:
+