diff options
-rw-r--r-- | src/http_auth.erl | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/src/http_auth.erl b/src/http_auth.erl index 3bd18b1..ff8c506 100644 --- a/src/http_auth.erl +++ b/src/http_auth.erl @@ -17,10 +17,6 @@ init_key_table() -> read_key_table(). read_key_table() -> - lists:foreach( - fun ({KeyName, Der}) -> - true = ets:insert(?KEY_TABLE, {KeyName, sign:pem_entry_decode({'SubjectPublicKeyInfo', Der, []})}) - end, plopconfig:get_env(apikeys, [])), case application:get_env(plop, own_key, none) of {_OwnKeyName, OwnKeyFile} -> OwnKey = sign:read_keyfile_ec(OwnKeyFile), @@ -42,10 +38,10 @@ own_key() -> lookup_publickey(nokey) -> nokey; lookup_publickey(KeyName) -> - case ets:lookup(?KEY_TABLE, KeyName) of - [{_, Key}] -> - Key; - [] -> + case lists:keyfind(KeyName, 1, plopconfig:get_env(apikeys, [])) of + {_, Der} -> + sign:pem_entry_decode({'SubjectPublicKeyInfo', Der, []}); + false -> failure end. |