Skip to content

Commit d0ace70

Browse files
committed
m
1 parent d087faf commit d0ace70

File tree

3 files changed

+6
-8
lines changed

3 files changed

+6
-8
lines changed

DynamoDbEncryption/dafny/DynamoDbEncryption/src/ConfigToInfo.dfy

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -317,7 +317,7 @@ module SearchConfigToInfo {
317317
}
318318

319319
var numBuckets : int := config.numberOfBuckets.UnwrapOr(1) as int;
320-
:- Need(0 <= numBuckets < INT32_MAX_LIMIT, E("Invalid number of buckets specified, " + Base10Int2String(numBuckets) + ", must be 0 < numberOfBuckets <= 255."));
320+
:- Need(0 <= numBuckets < MAX_BUCKET_COUNT, E("Invalid number of buckets specified, " + Base10Int2String(numBuckets) + ", must be 0 < numberOfBuckets <= 255."));
321321
// Zero is invalid, but in Java we can't distinguish None from Some(0)
322322
if numBuckets == 0 {
323323
numBuckets := 1;
@@ -328,7 +328,7 @@ module SearchConfigToInfo {
328328
beacons,
329329
virtualFields,
330330
outer.attributeActionsOnEncrypt,
331-
numBuckets as uint32
331+
numBuckets as BucketCount
332332
);
333333
}
334334

DynamoDbEncryption/dafny/DynamoDbEncryption/src/DDBSupport.dfy

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -271,7 +271,8 @@ module DynamoDBSupport {
271271
// Extract aws_dbe_bucket = NN from filterExpr and return bucket
272272
method ExtractBucket(search : SearchableEncryptionInfo.BeaconVersion, keyExpr : Option<string>, filterExpr : Option<string>, names : Option<DDB.ExpressionAttributeNameMap>, values : Option<DDB.ExpressionAttributeValueMap>, actions : AttributeActions)
273273
returns (output : Result<(Option<DDB.ExpressionAttributeValueMap>, BucketNumber, Option<BucketCount>), Error>)
274-
ensures output.Success? && output.value.2.Some? ==> output.value.1 < output.value.2.value
274+
ensures output.Success? ==> output.value.1 < search.numBuckets
275+
ensures output.Success? && output.value.2.Some? ==> output.value.1 < output.value.2.value <= search.numBuckets
275276
{
276277
if search.numBuckets <= 1 {
277278
:- Need(values.None? || BucketName !in values.value, E(""));

DynamoDbEncryption/dafny/DynamoDbEncryptionTransforms/src/DdbMiddlewareConfig.dfy

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -78,15 +78,12 @@ module DdbMiddlewareConfig {
7878
if config.search.None? {
7979
return Success(0);
8080
}
81-
var numBuckets : uint32 := config.search.value.versions[0].numBuckets;
81+
var numBuckets := config.search.value.versions[0].numBuckets;
8282
if numBuckets <= 1 {
8383
return Success(0);
8484
}
85-
if (numBuckets > 255) {
86-
return Failure(E("Number of buckets exceeds 255"));
87-
}
8885

89-
var outR := config.bucketSelector.GetBucketNumber(DDBE.GetBucketNumberInput(item := item, numberOfBuckets := numBuckets as DDBE.BucketCount));
86+
var outR := config.bucketSelector.GetBucketNumber(DDBE.GetBucketNumberInput(item := item, numberOfBuckets := numBuckets));
9087
var out :- outR.MapFailure(e => AwsCryptographyDbEncryptionSdkDynamoDb(e));
9188
if out.bucketNumber == 0 {
9289
return Success(0);

0 commit comments

Comments
 (0)