diff options
author | Adam Chlipala <adamc@hcoop.net> | 2009-04-23 16:13:02 -0400 |
---|---|---|
committer | Adam Chlipala <adamc@hcoop.net> | 2009-04-23 16:13:02 -0400 |
commit | df4a000b4c97378ccadbd1f94d9f930f87228b28 (patch) | |
tree | 2034375ed7452282a9f1bbb4b3ee02f5bca63280 /src/monoize.sml | |
parent | 1c5416512d92309bb3f6a98f439edaf5a21d2318 (diff) |
Cookie signatures for RPCs
Diffstat (limited to 'src/monoize.sml')
-rw-r--r-- | src/monoize.sml | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/monoize.sml b/src/monoize.sml index 5a164831..62a46277 100644 --- a/src/monoize.sml +++ b/src/monoize.sml @@ -2668,7 +2668,11 @@ fun monoExp (env, st, fm) (all as (e, loc)) = (L'.ERel 0, loc)), loc), (L'.ERecord [], loc)), loc)), loc)), loc) val ek = (L'.EApp (ekf, ek), loc) - val e = (L'.EServerCall (call, ek, t), loc) + val eff = if IS.member (!readCookie, n) then + L'.ReadCookieWrite + else + L'.ReadOnly + val e = (L'.EServerCall (call, ek, t, eff), loc) val e = liftExpInExp 0 e val unit = (L'.TRecord [], loc) val e = (L'.EAbs ("_", unit, unit, e), loc) |