sendSockPerm (bio, p))
| MsgFirewall ls => (OpenSSL.writeInt (bio, 34);
sendList OpenSSL.writeString (bio, ls))
+ | MsgRegenerateTc => OpenSSL.writeInt (bio, 35)
+ | MsgDropDb {dbtype, dbname} => (OpenSSL.writeInt (bio, 36);
+ OpenSSL.writeString (bio, dbtype);
+ OpenSSL.writeString (bio, dbname))
+ | MsgGrantDb {dbtype, dbname} => (OpenSSL.writeInt (bio, 37);
+ OpenSSL.writeString (bio, dbtype);
+ OpenSSL.writeString (bio, dbname))
fun checkIt v =
case v of
| 32 => Option.map MsgQuery (recvQuery bio)
| 33 => Option.map MsgSocket (recvSockPerm bio)
| 34 => Option.map MsgFirewall (recvList OpenSSL.readString bio)
+ | 35 => SOME MsgRegenerateTc
+ | 36 => (case (OpenSSL.readString bio, OpenSSL.readString bio) of
+ (SOME dbtype, SOME dbname) =>
+ SOME (MsgDropDb {dbtype = dbtype, dbname = dbname})
+ | _ => NONE)
+ | 37 => (case (OpenSSL.readString bio, OpenSSL.readString bio) of
+ (SOME dbtype, SOME dbname) =>
+ SOME (MsgGrantDb {dbtype = dbtype, dbname = dbname})
+ | _ => NONE)
| _ => NONE)
end