Skip to content
Snippets Groups Projects
Unverified Commit ec9ec946 authored by Alexander Turenko's avatar Alexander Turenko
Browse files

Add test case for fiber safety of digest.pbkdf2

Follows up #3396.
parent 06ec3d50
No related branches found
No related tags found
No related merge requests found
......@@ -5,6 +5,9 @@ test_run:cmd("push filter ".."'\\.lua.*:[0-9]+: ' to '.lua:<line>\"]: '")
---
- true
...
fiber = require('fiber')
---
...
digest = require('digest')
---
...
......@@ -576,3 +579,60 @@ test_run:cmd("clear filter")
---
- true
...
-- gh-3396: fiber-safe pbkdf2
res = {}
---
...
sentry = fiber.channel()
---
...
_ = test_run:cmd("setopt delimiter ';'")
---
...
function test_pbkdf2()
local digest = require('digest')
for i = 1, 10 do
table.insert(res, digest.pbkdf2('', 'salt', 100, 32):hex())
end
sentry:put(fiber.id())
end;
---
...
_ = test_run:cmd("setopt delimiter ''");
---
...
_ = fiber.create(test_pbkdf2)
---
...
_ = fiber.create(test_pbkdf2)
---
...
_ = sentry:get()
---
...
_ = sentry:get()
---
...
res
---
- - bafac115a0022b2894f2983b5b5102455bdd3ba7cfbeb09f219a9fde8f3ee6a9
- bafac115a0022b2894f2983b5b5102455bdd3ba7cfbeb09f219a9fde8f3ee6a9
- bafac115a0022b2894f2983b5b5102455bdd3ba7cfbeb09f219a9fde8f3ee6a9
- bafac115a0022b2894f2983b5b5102455bdd3ba7cfbeb09f219a9fde8f3ee6a9
- bafac115a0022b2894f2983b5b5102455bdd3ba7cfbeb09f219a9fde8f3ee6a9
- bafac115a0022b2894f2983b5b5102455bdd3ba7cfbeb09f219a9fde8f3ee6a9
- bafac115a0022b2894f2983b5b5102455bdd3ba7cfbeb09f219a9fde8f3ee6a9
- bafac115a0022b2894f2983b5b5102455bdd3ba7cfbeb09f219a9fde8f3ee6a9
- bafac115a0022b2894f2983b5b5102455bdd3ba7cfbeb09f219a9fde8f3ee6a9
- bafac115a0022b2894f2983b5b5102455bdd3ba7cfbeb09f219a9fde8f3ee6a9
- bafac115a0022b2894f2983b5b5102455bdd3ba7cfbeb09f219a9fde8f3ee6a9
- bafac115a0022b2894f2983b5b5102455bdd3ba7cfbeb09f219a9fde8f3ee6a9
- bafac115a0022b2894f2983b5b5102455bdd3ba7cfbeb09f219a9fde8f3ee6a9
- bafac115a0022b2894f2983b5b5102455bdd3ba7cfbeb09f219a9fde8f3ee6a9
- bafac115a0022b2894f2983b5b5102455bdd3ba7cfbeb09f219a9fde8f3ee6a9
- bafac115a0022b2894f2983b5b5102455bdd3ba7cfbeb09f219a9fde8f3ee6a9
- bafac115a0022b2894f2983b5b5102455bdd3ba7cfbeb09f219a9fde8f3ee6a9
- bafac115a0022b2894f2983b5b5102455bdd3ba7cfbeb09f219a9fde8f3ee6a9
- bafac115a0022b2894f2983b5b5102455bdd3ba7cfbeb09f219a9fde8f3ee6a9
- bafac115a0022b2894f2983b5b5102455bdd3ba7cfbeb09f219a9fde8f3ee6a9
...
test_run = require('test_run').new()
test_run:cmd("push filter ".."'\\.lua.*:[0-9]+: ' to '.lua:<line>\"]: '")
fiber = require('fiber')
digest = require('digest')
type(digest)
......@@ -184,3 +185,21 @@ s
err:match("number")
digest = nil
test_run:cmd("clear filter")
-- gh-3396: fiber-safe pbkdf2
res = {}
sentry = fiber.channel()
_ = test_run:cmd("setopt delimiter ';'")
function test_pbkdf2()
local digest = require('digest')
for i = 1, 10 do
table.insert(res, digest.pbkdf2('', 'salt', 100, 32):hex())
end
sentry:put(fiber.id())
end;
_ = test_run:cmd("setopt delimiter ''");
_ = fiber.create(test_pbkdf2)
_ = fiber.create(test_pbkdf2)
_ = sentry:get()
_ = sentry:get()
res
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment