aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorClombrong <cromblong@egregore.fun>2025-06-26 16:51:23 +0200
committerClombrong <cromblong@egregore.fun>2025-06-26 21:40:53 +0200
commitbd254f33b81287f2c282b7ec5becd4f7c838549f (patch)
tree3cab06cade35cd435522e7c1a6d9619e6365ff41 /lib
parent3dd884417ad78993bf6f3dc59349f20bd3fddfa0 (diff)
refactor(xml): move InvalidStanza exception to Xml
Diffstat (limited to 'lib')
-rw-r--r--lib/sasl.ml4
-rw-r--r--lib/stream.ml3
-rw-r--r--lib/xml.ml2
3 files changed, 5 insertions, 4 deletions
diff --git a/lib/sasl.ml b/lib/sasl.ml
index 0cb6b3e..4404f74 100644
--- a/lib/sasl.ml
+++ b/lib/sasl.ml
@@ -31,7 +31,7 @@ let send_auth_stanza (stream, push) localpart pass mechanism =
let nsless = match stanza with
| {namespace; attributes = []; local_name; children=rest}
when namespace = Xmlns.sasl -> (local_name, rest)
- | _ -> raise (InvalidStanza (Xml.element_to_string stanza))
+ | _ -> raise (Xml.InvalidStanza (Xml.element_to_string stanza))
in
let open Either in
let parse_descriptive_text (s : (Xml.element, string) t list) =
@@ -45,7 +45,7 @@ let send_auth_stanza (stream, push) localpart pass mechanism =
| ("success", [Right rest]) -> Ok (Some rest)
| ("failure", [Left {local_name=error; children; _}]) ->
Error (parse_sasl_error error, parse_descriptive_text children)
- | _ -> raise (InvalidStanza (Xml.element_to_string stanza))
+ | _ -> raise (Xml.InvalidStanza (Xml.element_to_string stanza))
in let stanza_list = [`Start_element
((Xmlns.sasl, "auth"),
[(("", "xmlns"), Xmlns.sasl);
diff --git a/lib/stream.ml b/lib/stream.ml
index 07bb21c..cc15c4b 100644
--- a/lib/stream.ml
+++ b/lib/stream.ml
@@ -2,7 +2,6 @@ open Lwt.Syntax
open Markup
exception ClosedStream
-exception InvalidStanza of string
type auth_mechanism =
| PLAIN
@@ -34,7 +33,7 @@ let get (stream : (signal, async) stream) : Xml.element Lwt.t =
let* signal = next stream
in match Xml.tree signal with
| Some xml -> Lwt.return xml
- | None -> Lwt.fail (InvalidStanza (signal |> write_xml |> to_string))
+ | None -> Lwt.fail (Xml.InvalidStanza (signal |> write_xml |> to_string))
(** [parse_features el] is a [stream_features] record with all the features of the
[<stream:features>] stanza contained in [el]. *)
diff --git a/lib/xml.ml b/lib/xml.ml
index 840aaf0..99a388f 100644
--- a/lib/xml.ml
+++ b/lib/xml.ml
@@ -1,5 +1,7 @@
open Markup
+exception InvalidStanza of string
+
type element = {
namespace : string;
local_name : string;