diff options
author | Magnus Ahltorp <map@kth.se> | 2015-02-06 19:14:54 +0100 |
---|---|---|
committer | Magnus Ahltorp <map@kth.se> | 2015-02-19 12:35:23 +0100 |
commit | 7f09020956447b561eacbbb1926fa7d61b510180 (patch) | |
tree | bfdd3584802dfbe094dc5b52259b488b487ec074 /src | |
parent | e5d870308d6e71dd12f46ec4745640e6e75d43d9 (diff) |
Implement fetching of multiple entries in storage/getentryhackney-merge
Diffstat (limited to 'src')
-rw-r--r-- | src/storage.erl | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/storage.erl b/src/storage.erl index b7acfd7..64f4ded 100644 --- a/src/storage.erl +++ b/src/storage.erl @@ -38,11 +38,15 @@ request(get, "ct/storage/fetchnewentries", _Input) -> success({[{result, <<"ok">>}, {entries, Entries}]}); request(get, "ct/storage/getentry", Query) -> - Hash = base64:decode(proplists:get_value("hash", Query)), - Hashes = [Hash], + Hashes = [base64:decode(Value) || {Key, Value} <- Query, Key == "hash"], Entries = lists:map(fun(LeafHash) -> {[{hash, base64:encode(LeafHash)}, - {entry, base64:encode(db:entry_for_leafhash(LeafHash))}]} + {entry, base64:encode(case db:entry_for_leafhash(LeafHash) of + noentry -> + <<>>; + Entry -> + Entry + end)}]} end, Hashes), success({[{result, <<"ok">>}, {entries, Entries}]}). |