adam@10: fun afterward r = return adam@10: {case r of adam@10: Openid.Canceled => You canceled that sucker. adam@10: | Openid.Failure s => error OpenID failure: {[s]} adam@10: | Openid.AuthenticatedAs id => I now know you as {[id]}.} adam@10: adam@10: adam@4: fun auth r = adam@10: msg <- Openid.authenticate afterward adam@15: {Association = Openid.Stateful {AssociationType = Openid.HMAC_SHA256, adam@15: AssociationSessionType = Openid.NoEncryption}, adam@39: Identifier = Openid.KnownIdentifier r.Id, adam@15: Realm = Some "http://localhost:8080/"}; adam@4: error {[msg]} adam@1: adam@1: fun main () = return adam@1:
adam@1: adam@4: adam@1: adam@1: