Frank Denis
8e73bb4a2c
Working DNS cache
2018-01-10 18:53:09 +01:00
Frank Denis
77cdc1db78
Start implementing a basic cache
2018-01-10 18:32:05 +01:00
Frank Denis
da3e3e61b4
Add Travis
2018-01-10 17:27:48 +01:00
Frank Denis
f283105866
Implement the IPv6 block plugin
2018-01-10 17:23:20 +01:00
Frank Denis
fb16eadb24
Single entry for now
2018-01-10 16:43:11 +01:00
Frank Denis
fa22cc32d7
Basic load balancing/failover
...
Try to send queries to one of the two fastest servers
2018-01-10 16:42:14 +01:00
Frank Denis
9eeb799d6e
Many improvements
2018-01-10 16:01:29 +01:00
Frank Denis
32a8a3d3e2
Get the path to the config file from the command line
2018-01-10 13:40:50 +01:00
Frank Denis
cefaa1c3a6
Update glide
2018-01-10 13:35:12 +01:00
Frank Denis
6dfcb659d4
Handle daemonization
2018-01-10 13:33:06 +01:00
Frank Denis
b86e7f268e
Use more things from the config file
2018-01-10 12:09:59 +01:00
Frank Denis
2822a9781b
Add a config file
2018-01-10 12:02:09 +01:00
Frank Denis
f24884a27a
Update .gitignore
2018-01-10 10:32:21 +01:00
Frank Denis
20e3182692
Improve the plugins interface
2018-01-10 10:11:59 +01:00
Frank Denis
efd0477c2b
Implement an actual estimator for the response size
...
Scale back the minimum question size when relevant.
Did I mention that this is yet another thing that was never properly
implemented in dnscrypt-proxy 1.x?
2018-01-10 09:46:27 +01:00
Frank Denis
f4346691bc
Transform queries via an initial edns mangling plugin
...
Yet another thing that was utterly broken in dnscrypt-proxy v1.x
2018-01-10 09:04:03 +01:00
Frank Denis
705cf440b1
Skip queries without a question
2018-01-10 03:04:13 +01:00
Frank Denis
d8f8d561c8
Synthesize a truncated response if the response wouldn't fit the local MSS
2018-01-10 02:52:09 +01:00
Frank Denis
ab9006e74c
Be more tolerant with invalid/unsupported certificates
2018-01-10 00:38:37 +01:00
Frank Denis
3049f43bc7
Nits
2018-01-10 00:32:16 +01:00
Frank Denis
72a6963f2e
Cleanups
2018-01-10 00:31:12 +01:00
Frank Denis
35ec5bd044
We can now receive queries on UDP and forward them on TCP
...
Something that had never been possible with the old implementation
2018-01-09 20:10:06 +01:00
Frank Denis
1a59d93192
Support TCP connection to the backend
2018-01-09 19:47:24 +01:00
Frank Denis
888db6a8fb
The preferred protocol will be a global (for Tor users)
2018-01-09 18:42:24 +01:00
Frank Denis
ce5e0c8031
Try to retrieve the certificates using UDP before TCP
2018-01-09 18:37:37 +01:00
Frank Denis
841bf65d61
Reorganize
2018-01-09 18:32:14 +01:00
Frank Denis
00a6b64575
Stamps are not expected to include a name
2018-01-09 18:27:04 +01:00
Frank Denis
4dc3fee9a0
Refresh certificates
...
We may later want to register a stamp even if no certificate was found
2018-01-09 17:34:19 +01:00
Frank Denis
7279699210
Pick random upstream servers; we'll do better later
2018-01-09 17:19:03 +01:00
Frank Denis
805c8a822f
Store upstream names, prepare for dnscrypt v3 stamps
2018-01-09 17:15:07 +01:00
Frank Denis
721313a603
We want to support multiple servers simultaneously
...
Prepare for that
2018-01-09 16:59:06 +01:00
Frank Denis
553f6afb00
Handle TCP, padding, etc.
2018-01-09 16:40:37 +01:00
Frank Denis
6a39b0afdb
Move a few things around
2018-01-09 13:35:10 +01:00
Frank Denis
60a58067c1
Desuglify a bit
2018-01-09 13:27:28 +01:00
Frank Denis
9ffa61c9e3
megacheck
2018-01-09 08:15:58 +01:00
Frank Denis
b076e01f7a
Let's start with a 15 minutes ugly PoC hack before going to bed
...
Who said the DNSCrypt protocol was "complex"?
2018-01-09 00:46:13 +01:00
Frank Denis
9653ab395c
Initial commit
2018-01-09 00:21:21 +01:00