Skip to content

Commit bc34c84

Browse files
committed
Compatibility Warranty for dnscrypt-proxy.toml
- Added dnscrypt_ephemeral_keys - Added tls_disable_session_tickets - Added offline_mode - Added http_proxy
1 parent 01d2233 commit bc34c84

File tree

1 file changed

+64
-3
lines changed

1 file changed

+64
-3
lines changed

SimpleDnsCrypt/Models/DnscryptProxyConfiguration.cs

Lines changed: 64 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,15 +20,19 @@ public class DnscryptProxyConfiguration : PropertyChangedBase
2020
private bool _require_dnssec;
2121
private bool _require_nolog;
2222
private bool _force_tcp;
23+
private string _http_proxy;
2324
private int _timeout;
2425
private int _keepalive;
2526
private string _lb_strategy;
2627
private int _cert_refresh_delay;
28+
private bool _dnscrypt_ephemeral_keys;
29+
private bool _tls_disable_session_tickets;
2730
private int _log_level;
2831
private string _log_file;
2932
private Dictionary<string, Source> _sources;
3033
private bool _use_syslog;
3134
private int _netprobe_timeout;
35+
private bool _offline_mode;
3236
private int _log_files_max_size;
3337
private int _log_files_max_age;
3438
private int _log_files_max_backups;
@@ -200,9 +204,52 @@ public bool force_tcp
200204
}
201205

202206
/// <summary>
203-
/// HTTP / SOCKS proxy
204-
/// Set this ("socks5://127.0.0.1:9050") to route all TCP connections to a local Tor node
205-
/// Tor doesn't support UDP, so set `force_tcp` to `true` as well
207+
/// DNSCrypt: Create a new, unique key for every single DNS query
208+
/// This may improve privacy but can also have a significant impact on CPU usage
209+
/// Only enable if you don't have a lot of network load
210+
/// </summary>
211+
public bool dnscrypt_ephemeral_keys
212+
{
213+
get => _dnscrypt_ephemeral_keys;
214+
set
215+
{
216+
_dnscrypt_ephemeral_keys = value;
217+
NotifyOfPropertyChange(() => dnscrypt_ephemeral_keys);
218+
}
219+
}
220+
221+
/// <summary>
222+
/// DoH: Disable TLS session tickets - increases privacy but also latency.
223+
/// </summary>
224+
public bool tls_disable_session_tickets
225+
{
226+
get => _tls_disable_session_tickets;
227+
set
228+
{
229+
_tls_disable_session_tickets = value;
230+
NotifyOfPropertyChange(() => tls_disable_session_tickets);
231+
}
232+
}
233+
234+
/// <summary>
235+
/// Offline mode - Do not use any remote encrypted servers.
236+
/// The proxy will remain fully functional to respond to queries that
237+
/// plugins can handle directly (forwarding, cloaking, ...)
238+
/// </summary>
239+
public bool offline_mode
240+
{
241+
get => _offline_mode;
242+
set
243+
{
244+
_offline_mode = value;
245+
NotifyOfPropertyChange(() => offline_mode);
246+
}
247+
}
248+
249+
/// <summary>
250+
/// SOCKS proxy
251+
/// Uncomment the following line to route all TCP connections to a local Tor node
252+
/// Tor doesn't support UDP, so set `force_tcp` to `true` as well.
206253
/// </summary>
207254
public string proxy
208255
{
@@ -214,6 +261,20 @@ public string proxy
214261
}
215262
}
216263

264+
/// <summary>
265+
/// HTTP/HTTPS proxy
266+
/// Only for DoH servers
267+
/// </summary>
268+
public string http_proxy
269+
{
270+
get => _http_proxy;
271+
set
272+
{
273+
_http_proxy = value;
274+
NotifyOfPropertyChange(() => http_proxy);
275+
}
276+
}
277+
217278
/// <summary>
218279
/// How long a DNS query will wait for a response, in milliseconds.
219280
/// </summary>

0 commit comments

Comments
 (0)