🏡 index : ~doyle/titanirc.git

author Jordan Doyle <jordan@doyle.la> 2024-01-30 2:30:26.0 +00:00:00
committer Jordan Doyle <jordan@doyle.la> 2024-01-30 2:30:26.0 +00:00:00
commit
be0537957624f51369de0062137a801ca3d94faf [patch]
tree
26981fb8ddae468dd0dace090e090bcdf4536dc1
parent
7f1df2ca5297130bf78f4c11631980dead03306d
download
be0537957624f51369de0062137a801ca3d94faf.tar.gz

Fix connection from irssi



Diff

 src/connection.rs | 20 ++++++++++++--------
 1 file changed, 12 insertions(+), 8 deletions(-)

diff --git a/src/connection.rs b/src/connection.rs
index 04e9190..ac39483 100644
--- a/src/connection.rs
+++ b/src/connection.rs
@@ -156,14 +156,18 @@ pub async fn negotiate_client_connection(
                    .unwrap();
            }
            Command::CAP(_, CapSubCommand::REQ, Some(arguments), None) => {
                let acked = if arguments == "sasl" {
                    true
                } else if let Ok(capability) = Capability::from_str(&arguments) {
                    request.capabilities |= capability;
                    true
                } else {
                    false
                };
                let mut acked = true;

                for argument in arguments.split(' ') {
                    acked = if argument == "sasl" {
                        acked
                    } else if let Ok(capability) = Capability::from_str(argument) {
                        request.capabilities |= capability;
                        acked
                    } else {
                        false
                    };
                }

                write
                    .send(AcknowledgedCapabilities(arguments, acked).into_message())