From ce0a87d5c32f308e5e87a3401ddd1aa7e4f5f898 Mon Sep 17 00:00:00 2001 From: Dmitriy Tsvettsikh Date: Tue, 30 Jun 2020 06:56:26 +0500 Subject: [PATCH] added TODO --- TODO.md | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 TODO.md diff --git a/TODO.md b/TODO.md new file mode 100644 index 0000000..bd5f492 --- /dev/null +++ b/TODO.md @@ -0,0 +1,10 @@ +# architecture + +* class Resolver, public interface, hold private ref to dnscrypt client +* class DNSCryptClient, private interface, implements dns api methods +* receive certificate using something like `_construct`. +* drop state management using `next-state`, recreate client when certificate expired. +* class Session used to store session sensitive data, like certificate. +* implement TCP and UDP transport using different classes, hide impl details there. +* do not use global default resolver due to it's need explicit state management. +* leave encrypt / decrypt / verify in a module, just rename it. \ No newline at end of file