Skip to content

Commit 3f84da7

Browse files
committed
Made cookies enabled by default and hardcoded
1 parent f756ba8 commit 3f84da7

1 file changed

Lines changed: 17 additions & 37 deletions

File tree

DnsServerCore/Dns/DnsServer.cs

Lines changed: 17 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -270,10 +270,8 @@ enum ServiceState
270270
const int SAVE_TIMER_INITIAL_INTERVAL = 5000;
271271

272272
// DNS Cookies (RFC 7873)
273-
readonly bool _dnsCookiesEnabled = true;
274273
readonly string _dnsCookiesSecretFile = "dns.cookies.state";
275274
readonly int _dnsCookiesRotationPeriodHours = 1;
276-
readonly bool _dnsCookiesAlwaysEcho = true;
277275

278276
Security.DnsCookieSecretManager _cookieSecrets;
279277
Security.DnsCookieValidator _cookieValidator;
@@ -586,7 +584,7 @@ public void LoadConfigFile()
586584

587585
SaveConfigFileInternal();
588586

589-
InitDnsCookiesIfEnabled();
587+
InitDnsCookies();
590588
}
591589
catch (Exception ex)
592590
{
@@ -1105,7 +1103,7 @@ private void ReadConfigFrom(Stream s, bool isConfigTransfer)
11051103
_cookieRotationTimer?.Dispose();
11061104
_cookieRotationTimer = null;
11071105

1108-
InitDnsCookiesIfEnabled();
1106+
InitDnsCookies();
11091107
}
11101108
}
11111109

@@ -1388,12 +1386,6 @@ private void WriteConfigTo(Stream s)
13881386
bW.Write(_queryLog is not null); //log all queries
13891387
bW.Write(_statsManager.EnableInMemoryStats);
13901388
bW.Write(_statsManager.MaxStatFileDays);
1391-
1392-
// DNS cookies
1393-
bW.Write(_dnsCookiesEnabled);
1394-
bW.Write(_dnsCookiesSecretFile ?? "dns.cookies.state");
1395-
bW.Write(_dnsCookiesRotationPeriodHours);
1396-
bW.Write(_dnsCookiesAlwaysEcho);
13971389
}
13981390

13991391
#endregion
@@ -1561,11 +1553,8 @@ private string ConvertToAbsolutePath(string path)
15611553
return Path.Combine(_configFolder, path);
15621554
}
15631555

1564-
private void InitDnsCookiesIfEnabled()
1556+
private void InitDnsCookies()
15651557
{
1566-
if (!_dnsCookiesEnabled)
1567-
return;
1568-
15691558
string secretPath = Path.IsPathRooted(_dnsCookiesSecretFile)
15701559
? _dnsCookiesSecretFile
15711560
: Path.Combine(_configFolder, _dnsCookiesSecretFile);
@@ -2572,8 +2561,7 @@ private async Task<DnsDatagram> ProcessRequestAsync(DnsDatagram request, IPEndPo
25722561
}
25732562

25742563
// DNS Cookies (RFC 7873)
2575-
if (_dnsCookiesEnabled &&
2576-
request.EDNS != null &&
2564+
if (request.EDNS != null &&
25772565
_cookieValidator != null)
25782566
{
25792567
EDnsCookieOptionData cookie =
@@ -2618,33 +2606,25 @@ private async Task<DnsDatagram> ProcessRequestAsync(DnsDatagram request, IPEndPo
26182606
return null;
26192607

26202608
// Attach cookie to response if needed
2621-
if (_dnsCookiesEnabled && _cookieValidator != null && request.EDNS != null)
2609+
if (_cookieValidator != null && request.EDNS != null)
26222610
{
26232611
EDnsCookieOptionData requestCookie = TryGetCookieOption(request);
26242612
if (requestCookie != null)
26252613
{
2626-
bool shouldSendServerCookie =
2627-
_dnsCookiesAlwaysEcho ||
2628-
requestCookie.ServerCookie.IsEmpty ||
2629-
requestCookie.ServerCookie.Length == 0;
2630-
2631-
if (shouldSendServerCookie)
2632-
{
2633-
EDnsCookieOptionData responseCookie =
2634-
_cookieValidator.CreateResponseCookie(
2635-
remoteEP.Address,
2636-
requestCookie);
2614+
EDnsCookieOptionData responseCookie =
2615+
_cookieValidator.CreateResponseCookie(
2616+
remoteEP.Address,
2617+
requestCookie);
26372618

2638-
IReadOnlyList<EDnsOption> mergedOptions =
2639-
MergeCookieOption(response.EDNS?.Options, responseCookie);
2619+
IReadOnlyList<EDnsOption> mergedOptions =
2620+
MergeCookieOption(response.EDNS?.Options, responseCookie);
26402621

2641-
response = response.Clone(
2642-
additional: UpsertOptRecord(
2643-
response.Additional,
2644-
request,
2645-
response,
2646-
mergedOptions));
2647-
}
2622+
response = response.Clone(
2623+
additional: UpsertOptRecord(
2624+
response.Additional,
2625+
request,
2626+
response,
2627+
mergedOptions));
26482628
}
26492629
}
26502630

0 commit comments

Comments
 (0)