OpenSSL.writeString (bio, s))
| QFirewall s => (OpenSSL.writeInt (bio, 5);
OpenSSL.writeString (bio, s))
+ | QAptExists s => (OpenSSL.writeInt (bio, 6);
+ OpenSSL.writeString (bio, s))
fun recvQuery bio =
case OpenSSL.readInt bio of
| 3 => Option.map QTrustedPath (OpenSSL.readString bio)
| 4 => Option.map QSocket (OpenSSL.readString bio)
| 5 => Option.map QFirewall (OpenSSL.readString bio)
+ | 6 => Option.map QAptExists (OpenSSL.readString bio)
| _ => NONE)
| NONE => NONE
| MsgDescription s => (OpenSSL.writeInt (bio, 40);
OpenSSL.writeString (bio, s))
| MsgReUsers => OpenSSL.writeInt (bio, 41)
+ | MsgVmailChanged => OpenSSL.writeInt (bio, 42)
+ | MsgFirewallRegen => OpenSSL.writeInt (bio, 43)
+ | MsgAptQuery {section, description} => (OpenSSL.writeInt (bio, 44);
+ OpenSSL.writeString (bio, section);
+ OpenSSL.writeString (bio, description))
fun checkIt v =
case v of
| 39 => Option.map MsgDescribe (OpenSSL.readString bio)
| 40 => Option.map MsgDescription (OpenSSL.readString bio)
| 41 => SOME MsgReUsers
+ | 42 => SOME MsgVmailChanged
+ | 43 => SOME MsgFirewallRegen
+ | 44 => (case (OpenSSL.readString bio, OpenSSL.readString bio) of
+ (SOME section, SOME description) => SOME (MsgAptQuery {section = section, description = description})
+ | _ => NONE)
| _ => NONE)
end