diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/storage.erl | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/storage.erl b/src/storage.erl index 6a49a22..b7acfd7 100644 --- a/src/storage.erl +++ b/src/storage.erl @@ -33,9 +33,17 @@ request(get, "ct/storage/fetchnewentries", _Input) -> NewHashes = storagedb:fetchnewhashes(0), % XXX send only hashes, implement getentry Entries = lists:map(fun(LeafHash) -> + base64:encode(LeafHash) + end, NewHashes), + success({[{result, <<"ok">>}, + {entries, Entries}]}); +request(get, "ct/storage/getentry", Query) -> + Hash = base64:decode(proplists:get_value("hash", Query)), + Hashes = [Hash], + Entries = lists:map(fun(LeafHash) -> {[{hash, base64:encode(LeafHash)}, {entry, base64:encode(db:entry_for_leafhash(LeafHash))}]} - end, NewHashes), + end, Hashes), success({[{result, <<"ok">>}, {entries, Entries}]}). |