Skip to content

Commit c49af85

Browse files
chore: Reduce resource usage of assertion in ReadFramedMessageBody (#665)
Co-authored-by: Remy Willems <[email protected]>
1 parent 2bbab7d commit c49af85

File tree

1 file changed

+10
-1
lines changed

1 file changed

+10
-1
lines changed

AwsEncryptionSDK/dafny/AwsEncryptionSdk/src/MessageBody.dfy

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1031,8 +1031,17 @@ module MessageBody {
10311031
//# (../framework/algorithm-suites.md#encryption-algorithm) specified by
10321032
//# the algorithm suite (../framework/algorithm-suites.md), with the
10331033
//# following inputs:
1034-
assert CorrectlyRead(buffer, Success(SuccessfulRead(nextRegularFrames, regularFrame.tail)), WriteMessageRegularFrames) by {
1034+
var res := Success(SuccessfulRead(nextRegularFrames, regularFrame.tail));
1035+
assert CorrectlyRead(buffer, res, WriteMessageRegularFrames) by {
10351036
reveal CorrectlyReadRange();
1037+
1038+
var tail := res.value.tail;
1039+
var readRange := WriteMessageRegularFrames(res.value.data);
1040+
assert buffer.bytes == tail.bytes;
1041+
assert buffer.start <= tail.start <= |buffer.bytes|;
1042+
assert buffer.bytes[buffer.start..] == tail.bytes[buffer.start..];
1043+
assert readRange <= buffer.bytes[buffer.start..];
1044+
assert tail.start == buffer.start + |readRange|;
10361045
}
10371046

10381047
ReadFramedMessageBody(

0 commit comments

Comments
 (0)