Commit Graph

76 Commits

Author SHA1 Message Date
Shreyas Zare
df6d34817d StubZone: updated initial interval to 5 sec for quick start. Added log entry to indicate start of refresh. Updated RefreshZone() to use TCP transport for zone sync to avoid issues when primary server responds with partial glue records in additional section without TC set. 2020-07-04 16:34:52 +05:30
Shreyas Zare
84c38dd3e4 SecondaryZone: updated initial interval to 5 sec for quick start. Added log entry to indicate start of refresh. 2020-07-04 16:33:13 +05:30
Shreyas Zare
d15296824c AuthZone: using SetGlueRecords() which is correct glue record copy operation in SyncRecords(). 2020-07-04 16:32:13 +05:30
Shreyas Zare
d103e729be ZoneTree: fixed bug in TryRemove() which caused removal of all sub domains of another zone in tree branch. 2020-07-04 16:31:10 +05:30
Shreyas Zare
9f88d6a4e6 StubZone: Added locks for reseting timer. Changed implementation to create new zone. 2020-06-28 19:40:58 +05:30
Shreyas Zare
a6e913852b SecondaryZone: Added locks for reseting timer. Changed implementation to create new zone. 2020-06-28 19:40:32 +05:30
Shreyas Zare
816eba7545 AuthZoneInfo: added GetPrimaryNameServerAddresses() and GetSecondaryNameServerAddresses(). 2020-06-28 19:39:09 +05:30
Shreyas Zare
02c8ae8400 AuthZone: added checks in GetNameServerAddresses() to prevent exceptions. Made GetPrimaryNameServerAddresses() public, used GetRecords() for getting NS records and updated implementation to use addresses from NS record and from glue records. Made GetSecondaryNameServerAddresses() public and used GetRecords() for getting NS records. Updated GetRecords() to return empty array if no records are found. Optimized ContainsNameServerRecords() code. 2020-06-28 19:38:34 +05:30
Shreyas Zare
f326110514 CacheZone: optimized code in ContainsNameServerRecords(). 2020-06-28 19:32:44 +05:30
Shreyas Zare
ee0847d316 timeout values updated as per DnsClient implementation changes. 2020-06-28 15:52:47 +05:30
Shreyas Zare
d9862308af SecondaryZone: updated AXFR timeout to 5 mins per retry to allow waiting for longer time to refresh zone. Updated initial soa refresh and retry values for quick retries. Updated RefreshZone() to use all name servers to do zone transfer. 2020-06-27 17:40:32 +05:30
Shreyas Zare
03ea47fd8e StubZone: updated initial soa refresh and retry values for quick retries. Updated RefreshZone() to use same name servers to do zone sync. 2020-06-27 17:39:01 +05:30
Shreyas Zare
b24963425e ZoneTree: implemented DomainTree and ByteTree TryRemove() changes. 2020-06-27 15:36:49 +05:30
Shreyas Zare
2db9337d36 DomainTree: implemented independent class to traverse domain name to be reuseable. 2020-06-27 15:35:35 +05:30
Shreyas Zare
6c25e9498e ForwarderZone: added SetRecords() and AddRecord() methods with validation checks. 2020-06-27 11:51:43 +05:30
Shreyas Zare
c29424f9c3 StubZone: using GetPrimaryNameServerAddresses() in RefreshTimerCallback(). Code refactoring done. Added validation checks in SetRecords(). 2020-06-27 11:50:16 +05:30
Shreyas Zare
58f592d3b6 SecondaryZone: RefreshTimerCallback() code refactoring done. Updated SetRecords() to copy glue records for SOA with validations. 2020-06-27 11:46:43 +05:30
Shreyas Zare
9e78fbca34 PrimaryZone: using GetSecondaryNameServerAddresses() call. Updated SetRecords() to remove any attached info data. 2020-06-27 11:45:12 +05:30
Shreyas Zare
06694b0eb2 AuthZone: updated implementation to get secondary name server addresses. Fixed SyncRecords() to allow syncing root zone correctly and to avoid overwriting glue records for SOA. Removed UpdateGlueAddresses(). Fixed typo bug in QueryRecords(). 2020-06-27 11:43:58 +05:30
Shreyas Zare
f22972abd9 CacheZone: fixed minor typo bug. 2020-06-27 11:41:52 +05:30
Shreyas Zare
54762297ea ZoneTree: fixed issues in FindZone() to correctly check if sub domains exists. Fixed issue in selection of delegation and authority zones. 2020-06-27 11:41:17 +05:30
Shreyas Zare
d18bf2ab77 ZoneTree: added IsKeySubDomain() checks in FindNodeValue() instead of checking it afterwards for correctness. 2020-06-20 19:22:45 +05:30
Shreyas Zare
d5e463ec28 StubZone: not adding glue for SOA record as its not required. 2020-06-20 19:13:44 +05:30
Shreyas Zare
0360f76d28 StubZone: using GetAllNameServerAddresses() for getting all name server addresses. 2020-06-20 17:35:04 +05:30
Shreyas Zare
33f28c8d89 SecondaryZone: using GetPrimaryNameServerAddresses() to get primary name server addresses. Using different timeout values for SOA and AXFR queries since AXFR may take longer time. Code refactoring done. 2020-06-20 17:34:33 +05:30
Shreyas Zare
870937f390 PrimaryZone: using GetAllNameServerAddresses() method to get secondary name server addresses. 2020-06-20 17:32:17 +05:30
Shreyas Zare
c9ba96e82f AuthZone: implemented GetNameServerAddresses(), GetPrimaryNameServerAddresses() and GetAllNameServerAddresses() common functions for code reuse. 2020-06-20 17:31:41 +05:30
Shreyas Zare
40e15825f7 ZoneTree: fixed bug in GetNextSubDomainZoneNode() which could cause listing of sub domains from another zone down the tree. fixed bug in FindNodeValue() to allow finding authority when key is for root. Fixed issue in FindZone() that would incorrectly report existence of sub domain. 2020-06-20 16:33:19 +05:30
Shreyas Zare
0ac4b61f28 minor code refactoring. 2020-06-20 14:08:10 +05:30
Shreyas Zare
6e29034566 AuthZoneManager: updated auth zones to allow updating glue addresses for secondary and stub zones. 2020-06-14 15:44:29 +05:30
Shreyas Zare
5b978f9f28 added missing ANAME validations. 2020-06-14 13:47:48 +05:30
Shreyas Zare
84d30a295e AuthZone: made Disabled property virtual and overrided it in primary, secondary and stub zone to correctly start or stop timer events. 2020-06-14 13:20:53 +05:30
Shreyas Zare
07c7a8c5b7 renamed MasterNameServer to PrimaryNameServer. 2020-06-14 12:40:40 +05:30
Shreyas Zare
17868a7ffb minor refactoring changes. 2020-06-13 18:48:19 +05:30
Shreyas Zare
1526a48fc3 AuthZone: automatic trigerring of notify or refresh for zone when it is enabled implemented. 2020-06-13 18:24:22 +05:30
Shreyas Zare
d4c9b7ed0a AuthZoneInfo: added NotifyNameServers() method to allow triggering notify requests. 2020-06-13 18:06:30 +05:30
Shreyas Zare
7f9d4fa063 AuthZoneInfo: implemented RefreshZone() method to allow refreshing secondary & stub zones. 2020-06-13 17:27:55 +05:30
Shreyas Zare
752958102b PrimaryZone: reduced notify trigger interval to 10sec. Included SOA record in notify request. 2020-06-13 17:24:54 +05:30
Shreyas Zare
57a83a3f82 StubZone: fixed issue of not setting glue to soa record in constructor. Code refactoring done. 2020-06-13 15:47:00 +05:30
Shreyas Zare
0f833fe471 SecondaryZone: fixed issue of not setting glue to soa record in constructor. Code refactoring done. 2020-06-13 15:46:00 +05:30
Shreyas Zare
a965e69d93 code refactoring done. 2020-06-13 14:17:14 +05:30
Shreyas Zare
1627f9da2e AuthZoneInfo: implemented zone property changes. Code refactoring done. Changed QueryRecords() to GetRecords() as per the requirements. 2020-06-13 13:41:19 +05:30
Shreyas Zare
7ceb70c0e6 ForwarderZone: Updated constructor to correctly create zone. 2020-06-13 13:39:39 +05:30
Shreyas Zare
1648612121 StubZone: Updated constructors to correctly create zone. Implemented isExpired state. Fixed issues and code refactoring done. Added QueryRecords() override to prevent responding to SOA and NS records as authoritative. 2020-06-13 13:39:12 +05:30
Shreyas Zare
79bc7fc64d SecondaryZone: Updated constructors to correctly create zone. LastRefreshed refactored to IsExpired. Code refactoring and fixes done. 2020-06-13 13:37:08 +05:30
Shreyas Zare
e6deed2031 PrimaryZone: updated constructors to correctly create zone. 2020-06-13 13:35:16 +05:30
Shreyas Zare
2af8bca7df AuthZone: removed constructors that added SOA and NS records. Made QueryRecords() virtual to allow overriding. Added GetRecords() to directly get records. Added virtual IsActive to allow controlling zone state. 2020-06-13 13:34:05 +05:30
Shreyas Zare
866f30047d Zone: added GetReverseZone() methods. 2020-06-13 13:31:57 +05:30
Shreyas Zare
a08f83d0cd AuthZoneManager: implemented auth zone management changes. Added zone file management support. 2020-06-06 16:27:43 +05:30
Shreyas Zare
e37b98251e BlockListZoneManager: Changes done to manage block list cache folder internally. Code refactoring done. 2020-06-06 16:25:29 +05:30