X-Git-Url: https://git.hcoop.net/hcoop/domtool2.git/blobdiff_plain/9ffe2f0fea48f1e2fa6a30b6a79b975b4a6f7671..2fc6b0dd10a94cf365b48df7fe6b0518e5dabdd1:/src/msg.sml diff --git a/src/msg.sml b/src/msg.sml index 6fdda0a..747572a 100644 --- a/src/msg.sml +++ b/src/msg.sml @@ -139,7 +139,10 @@ fun send (bio, m) = OpenSSL.writeString (bio, domain)) | MsgMailboxes users => (OpenSSL.writeInt (bio, 22); - sendList OpenSSL.writeString (bio, users)) + sendList (fn (bio, {user, mailbox}) => + (OpenSSL.writeString (bio, user); + OpenSSL.writeString (bio, mailbox))) + (bio, users)) fun checkIt v = case v of @@ -215,7 +218,14 @@ fun recv bio = SOME (MsgRmMailbox {domain = domain, user = user}) | _ => NONE) | 21 => Option.map MsgListMailboxes (OpenSSL.readString bio) - | 22 => Option.map MsgMailboxes (recvList OpenSSL.readString bio) + | 22 => Option.map MsgMailboxes (recvList + (fn bio => + case (OpenSSL.readString bio, + OpenSSL.readString bio) of + (SOME user, SOME mailbox) => + SOME {user = user, mailbox = mailbox} + | _ => NONE) + bio) | _ => NONE) end