From dc2477eec3df027e496aac81881780354e831196 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maxime=20=E2=80=9Cpep=E2=80=9D=20Buquet?= Date: Tue, 3 Jun 2025 23:18:10 +0200 Subject: [PATCH] Revert "xmpp-parsers: Support required in SM feature" This reverts commit 4e0cd5d96bfe92f527dd36c51fd1e41526426f7c. --- parsers/ChangeLog | 3 +-- parsers/src/sasl2.rs | 8 +------- parsers/src/sm.rs | 14 ++++---------- 3 files changed, 6 insertions(+), 19 deletions(-) diff --git a/parsers/ChangeLog b/parsers/ChangeLog index e7d123455888324cfcc4af34621947cc43ea6d9e..216f8b617dcee1d2d83215dc57bc472d0093a86b 100644 --- a/parsers/ChangeLog +++ b/parsers/ChangeLog @@ -108,8 +108,7 @@ XXXX-YY-ZZ RELEASER - Push Notifications (XEP-0357) (!543) - JSON Containers (XEP-0335) (!546) * Improvements: - - Add support for `` and `` in XEP-0198 feature - advertisment. + - Add support for ` in XEP-0198 feature advertisment - Add support application-specific error conditions in XEP-0198 - Keep unsupported vCard elements as `minidom::Element`, so that they get serialized back instead of being dropped. We now also test for diff --git a/parsers/src/sasl2.rs b/parsers/src/sasl2.rs index 232da3f7502a69f999fc3968854990ea5fb93c9c..2312ca5fa7ece488b833d84b1c9d020e0599d28f 100644 --- a/parsers/src/sasl2.rs +++ b/parsers/src/sasl2.rs @@ -269,13 +269,7 @@ mod tests { let inline = auth.inline.unwrap(); assert_eq!(inline.bind2.unwrap().inline_features.len(), 0); - assert_eq!( - inline.sm.unwrap(), - StreamManagement { - optional: false, - required: false - } - ); + assert_eq!(inline.sm.unwrap(), StreamManagement { optional: false }); assert_eq!(inline.payloads.len(), 0); } diff --git a/parsers/src/sm.rs b/parsers/src/sm.rs index 9b258ba97f7e7f834670b04ee6d0c1f437692239..d9e1996250cd7a40b5bcb827ca7f60cb7f6c5cf8 100644 --- a/parsers/src/sm.rs +++ b/parsers/src/sm.rs @@ -133,7 +133,7 @@ pub struct Resumed { pub previd: StreamId, } -// TODO: Only allow either optional or required, not both. +// TODO: add support for optional and required. /// Represents availability of Stream Management in ``. #[derive(FromXml, AsXml, PartialEq, Debug, Clone)] #[xml(namespace = ns::SM, name = "sm")] @@ -141,10 +141,6 @@ pub struct StreamManagement { /// `` flag. #[xml(flag)] pub optional: bool, - - /// `` flag. - #[xml(flag)] - pub required: bool, } /// Application-specific error condition to use when the peer acknowledges @@ -226,7 +222,7 @@ mod tests { assert_size!(R, 0); assert_size!(Resume, 16); assert_size!(Resumed, 16); - assert_size!(StreamManagement, 2); + assert_size!(StreamManagement, 1); assert_size!(HandledCountTooHigh, 8); } @@ -241,7 +237,7 @@ mod tests { assert_size!(R, 0); assert_size!(Resume, 32); assert_size!(Resumed, 32); - assert_size!(StreamManagement, 2); + assert_size!(StreamManagement, 1); assert_size!(HandledCountTooHigh, 8); } @@ -255,9 +251,7 @@ mod tests { #[test] fn stream_feature() { let elem: Element = "".parse().unwrap(); - let sm = StreamManagement::try_from(elem).unwrap(); - assert_eq!(sm.optional, false); - assert_eq!(sm.required, false); + StreamManagement::try_from(elem).unwrap(); } #[test]