﻿Pcap_DNSProxy 0.4.9.10-0.4.9.13 changelog(2018-12-30):

* Add experimental FreeBSD platform support. [Meowthink]
* Add --log-file command, which can set location of log file. [LGA1150/Syrone Wong]
* Add compiling and runtime library version check. [Syrone Wong/wangmice]
  * LibEvent requires 2.1.8.
  * LibSodium requires 1.0.16.
  * OpenSSL requires 1.0.2.
* Rebuild Domain Test and ICMP Test module.
* Change set path command from --config-file to --config-path.
* OpenSSL upgrade to 1.1.1a. (macOS)
* Project IDE Xcode upgrade to version 10.0. (macOS)
* Change default log output to stderr. (OpenWrt) [Syrone Wong]
* Fix case sensitive bug of domain request. [muink/WeirdoShaw]
* Fix Address Hosts network prefix bug. [LGA1150]
* Fix packet sequence, network operation and interval time problems in Domain Test and ICMP Test module. [LisonFan]
* Fix bug of SOCKS username/password authentication. [SunZhizhong]
* Fix EDNS Label filtering algorithm. [Justsoos]
* Fix range mismatch of Hop Limits Fluctuation parameter.
* Fix echo parameter problem in shell. (Linux/macOS) [YKilin]
* Notice: We are planning to stop Windows XP/2003 support, please upgrade your system if you are still using them.
* Release Hash:
  * SHA-3(256):
    * Windows/Pcap_DNSProxy.exe: 617B77E2FC893A142A45B120DE6E81695E860633C49CE05F189CB24B1BF36EE7
    * Windows/Pcap_DNSProxy_x86.exe: 026B36EF01A9DD57853787F643D9874F2A2B88753D1128E644C5D533610CB2DD
    * Windows/Pcap_DNSProxy_XP.exe: 6A7E8F5A947E8DF871B05D7CAF86D59994A20A2699FAB1FEBF6ECDCAB068A227
    * macOS/Pcap_DNSProxy: EE48BE316727F1152636A42DB7BC6087187BF10ADC5E90C52997F9C345E34569
  * SHA-2(256):
    * Windows/Pcap_DNSProxy.exe: FF9A8CB56062BB8506C3E77C4603FE78CCC6FE59C916429236113368D15DA4BE
    * Windows/Pcap_DNSProxy_x86.exe: D2CF9B2FA5A215C2E39EAF30B7CA6001873A6E1F2BE0ADE6C9E7DA1551ED9313
    * Windows/Pcap_DNSProxy_XP.exe: ACB13712956168A594C97E03EE54A15B58C515E97C065CEFCA3A6214062D71CA
    * macOS/Pcap_DNSProxy: 5E4F3C7D5216BD65B85E2B34DCE88F4E9575F8B568DF73019367D5F2D9195E13


-------------------------------------------------------------------------------


Pcap_DNSProxy 0.4.9.5-0.4.9.9 changelog(2018-07-14):

* Add EDNS Label transparency support.
* Add libevent support.
* Add select protocol support based on DNS type. [ccaapton]
* The minimum C++ standard requires 14 now.
* LibSodium upgrade to version 1.0.16. (Windows/macOS)
* OpenSSL upgrade to version 1.1.0h. (macOS)
* Rename from Strict Resource Record TTL Filter to Resource Record Set TTL Filter.
* Optimize compilation parameters. (Linux/macOS)
* Fix Local request process logic. [LisonFan/sysconfon/huaji0353/gitlikang]
* Fix select protocol algorithm, now IPv6/IPv4 incoming request will default send to DNS server with same protocol. [ccaapton]
* Fix "All" operation in EDNS Lebel parameter. [muink]
* Fix packet filter with DNSSEC. [ZeroClover]
* Fix LibSodium initialization.
* Fix IPv4/IPv6 fragment support of capture module.
* Fix DNSSEC records filter.
  * Rename from DNSSEC Force Validation to DNSSEC Force Record.
* Fix number of file descriptor limit in scripts. (Linux) [lunzima]
* Fix bug of length check in SOCKS 和 HTTP(S) Proxy process TCP mode. [LisonFan/laggardkernel]
* Fix compile error if -fsplit-stack was set. [asd2003asd]
* Fix bug of SOCKS Username and SOCKS Password parameter. [ダクネスExplosion]
* Fix bug of repeat addresses check when reading configuration file. [cjjdaq]
* Fix bug of truncated incorrect when EDNS Client Subnet is enabled. [mewsf]
* Fix bug of packet format error when EDNS Label and any Force TCP are enabled. [chenjiajia9411]
* Fix bug of truncated incorrect when EDNS Label is enabled and receive over length packet. [debugzxcv]
* Fix bug of IPv6 and ICMP packet capture in original IPv6/IPv4 platform.
* Fix bug of interval time and transmission timeout control in ICMP/ICMPv6 module.
* CMake version require 3.1 now. (Linux/macOS)
* Remove IPv4 Data Filter parameter.
* Remove DNSSEC Validation parameter.
  * Notice: All features have been moved to DNS Data Filter.
* Remove Homebrew support. (macOS)
* Release Hash:
  * SHA-3(256):
    * Windows/Pcap_DNSProxy.exe: 462857B5E74356D783D7230F60A662F9462A36F8543E45874376B96E9C1F0FE1
    * Windows/Pcap_DNSProxy_x86.exe: 957C1EBE379E82E3B4AB87B13AAA17A715F8E0906BCC2846F1F591A5602F06A2
    * Windows/Pcap_DNSProxy_XP.exe: C69BCF482203799AF642BC48DCF78DB98B885D7D7E613BB14C1EE32A203E509D
    * macOS/Pcap_DNSProxy: 5372E067FE8941E77E210AE68C684E3019C8F887218536B2947696AF83877670
  * SHA-2(256):
    * Windows/Pcap_DNSProxy.exe: 3E57CF4D09A28D116972B73D4A7C33E7888F4189DD35939955DEFC81C61BA732
    * Windows/Pcap_DNSProxy_x86.exe: E6CE60C25C93456DF9A70BBDB2A2D21EF40254783DC0003561AC4E89CBFC3C10
    * Windows/Pcap_DNSProxy_XP.exe: 8C363476DB55EC55AB1F96C5BB05C84E3B8602F08B9B0992C8ED26FAF8990617
    * macOS/Pcap_DNSProxy: 035D39EA32D70EDBA6B2B7FA6B6C27AB5D91E335DCD0330E5E39C97997FDC8BC


-------------------------------------------------------------------------------


Pcap_DNSProxy 0.4.9.1-0.4.9.4 changelog(2017-10-06):

* Add TCP protocol support to Domain Test module:
  * Add Domain Test Protocol parameter.
* Enhanced efficiency of Local Routing and built-in DNS cache items searching. [Syrone Wong]
* LibSodium upgrade to version 1.0.15. (Windows/macOS)
* Project IDE Xcode upgrade to version 9.0. (macOS)
* OpenSSL upgrade to version 1.1.0f. (macOS)
* Improve local request process: [cjjdaq]
  * Remove Local Main parameter.
* Improve built-in blacklist:
  * WARNING: Please update IPFilter file when upgrading version!
* Update filtering algorithm of TCP packets.
* Fix multiple instances problem:
  * Add Process Unique parameter.
* Fix bug of network module which will cause segmentation fault. [goxofy/kalagxw/lunzima/monokoo/pengpengxp/Syrone Wong/wangmice]
* Fix bug of Local Hosts whitelist module. [cjjdaq/muink]
* Fix DNS Transaction ID is legal but be banned. [LisonFan]
* Fix bug when specifying more than one Listen Addresss.
* Fix error log startup printing time calculation error.
* Fix CNAME hosts internal Dnsmasq format error.
* Fix wrongly banned of NSCI system network sensor indicator IPv6 addresses. (Windows) [hnsylzg]
* Release Hash:
  * SHA-3(256):
    * Windows/Pcap_DNSProxy.exe: 8E9EEAFD301C1D27A1B9E6D2CAC692D032621E3E80BB15A3CCA1CCEF3768FA2D
    * Windows/Pcap_DNSProxy_x86.exe: 7EF905162AB37BCF94C229D991773DADE1DF02F635B951DCEF50976B915E4795
    * Windows/Pcap_DNSProxy_XP.exe: 4AF0131A398A75D26ADA5DACBF9E185EEBE78D2A5E4A0787DE16A66EE0496FAE
    * macOS/Pcap_DNSProxy: F5A91990F9DC3022AA016EE9E12659D64ECEF3351139CA2D0630E99CC298F06F
  * SHA-2(256):
    * Windows/Pcap_DNSProxy.exe: 577314F84110F9531CC5E5EFA16622FBA7C0B8E0AE525DA802298A1CE90AB0DD
    * Windows/Pcap_DNSProxy_x86.exe: 6080BD47D3F32E516E1DDCDD399866C05E62D3732132C8111F8D9650C8B84FD2
    * Windows/Pcap_DNSProxy_XP.exe: 54E0E01B6EEFE0875B8DFDD3A673CA57EA6E1DF25D07A1601DECEBDC5962226F
    * macOS/Pcap_DNSProxy: 8C8A225E861517822328E264C3FAFD3E0455352D206EC106DB9FBA5E2F489669


-------------------------------------------------------------------------------


Pcap_DNSProxy 0.4.8.5-0.4.9.0 changelog(2017-06-03):

* Add signal address signal cache which based on address prefix: [LisonFan]
  * Add Cache Single IPv4 Address Prefix parameter.
  * Add Cache Single IPv6 Address Prefix parameter.
* Prefix length of EDNS Client Subnet Relay will follow IPv4/IPv6 EDNS Client Subnet Address prefix. [LisonFan]
* Add DNSCrypt database file dnscrypt-resolvers.csv configuration file support. [rampageX/snakwu]
* Add HTTP/2 support for HTTP CONNECT tunnel protocol. [agentmario]
* Add Force TCP/UDP parameters to force request process to use only the specified TCP/UDP protocol.
* Add TLS ALPN extensions support.
* Add command parameter support for ServiceControl.bat. (Windows)
* Add listen queue length support for TCP Fast Open. (Linux)
* Add TCP Fast Open support. (macOS)
* LibSodium upgrade to version 1.0.12. (Windows/macOS)
* Project IDE Visual Studio upgrade to version 2017. (Windows)
* Fix last character of text file is ignored problem. [冰靈曦曉]
* Fix bug of disable IPv6 protocol operation. [dzxx36gyy]
* Fix Cache Parameter parameter error. [LisonFan]
* Fix EDNS Client Subnet prefix length is non-compliant with RFC standard. [LisonFan]
* Fix -c/--config-file parameter.
* Network status check will do again when configuration files were reloaded.
* Fix DNSCurve(DNSCrypt) may not work when reloading configuration files.
* Fix bug when server push data first in HTTP CONNECT tunnel protocol.
* Fix socket attribute settings failed when using OpenSSL. (Linux/macOS)
* Fix servers were skipped to request when TCP Fast Open is enabled. (Linux)
* Release Hash:
  * SHA-3(256):
    * Windows/Pcap_DNSProxy.exe: 55692B5DD0ED42D39091EA7ADB87DA460441D9D18D07D5D87EC3739A5FD6068C
    * Windows/Pcap_DNSProxy_x86.exe: C943F0BF0691B219CED39B968FF073384DD4C3F5C6B1DF36B5072F1BA6FAFBBE
    * Windows/Pcap_DNSProxy_XP.exe: E17101A1B7DFA4AB79B4B68FF2A99C9E1260C20D13BCCB9F2ACD9E84C6C82F3A
    * MacOS/Pcap_DNSProxy: 6B13BFED3EEFF32375F1E02CFE19EA4A17DD129CB4245390C698B1F8AFCEDEE0
  * SHA-2(256):
    * Windows/Pcap_DNSProxy.exe: 13AECD65E89913DC3A9AF420872F8DFB67BA52EC1CAC5A6DD4CCCF9FF5A85234
    * Windows/Pcap_DNSProxy_x86.exe: 090B462C0751C7200A428C261D6AADE3AF455D6A8D0324617D44234C4772225C
    * Windows/Pcap_DNSProxy_XP.exe: 0998FC56226D9B8327D353366CF8FB04CED233993CFC0A561226DE385934D6B7
    * MacOS/Pcap_DNSProxy: 91AF21E7B704F3894CB1AC658148BBC3019676352BC5F0524BCD2E2176BE3DF8


-------------------------------------------------------------------------------


Pcap_DNSProxy 0.4.8.1-0.4.8.4 changelog(2017-03-11):

* Add prefix support of Address Hosts. [LGA1150]
* Add exclusion rules support of EDNS Label. [燒香の貓咪]
* Add Strict Resource Record TTL Filter to support RFC 2181.
* Add single instance limit support.
* Pcap Devices Blacklist blacklist update. (macOS)
* Standardize behavior of EDNS Client Subnet.
* Unlock internal logic 260-character path and file name limit. (Windows)
* Improve Domain Case Conversion operation.
* Improve Ciphers Suites selection when manually TLS version selection is enabled. (Linux/macOS)
* Rename Output Protocol to Outgoing Protocol.
* OpenSSL upgrade to version 1.1.0e. (macOS)
* Change multi-line comment area format. [Monoremonton/wx0]
* Change DNS cache rules. [kraml]
* Fix memory alignment problem. [Syrone Wong]
* Fix Operation Mode is not working in Proxy and Server mode. [Syrone Wong/wang20150419]
* Fix binary is not working. (macOS) [fysly]
* Fix DNS cache cleanup problem. [kraml]
* Fix bug of memory leak in DNS cache module with some compilers.
* Fix crash when setting a special IPv6 prefix value to Local Routing. 
* Fix IPv6 prefixs are not matched between configuration files and network.
* Fix multi-line comment area can not be reset by tag.
* Fix bug of SOCKS Proxy and HTTP CONNECT Proxy in TCP mode.
* Fix Local Force Request is not working when Local Main and Local Routing are enabled.
* Fix bug of resolving local IPv6 address PTR records. (Windows/Linux)
* Fix file capacity calculation error in 32-bit system. (Windows)
* Fix no any Ciphers Suite is available when less than OpenSSL version 1.0.1. (Linux/macOS)
* Fix memory alignment crash problem. (Linux/macOS)
* Fix bug of sending data when TCP Fast Open is enabled. (Linux)
* Release Hash:
  * SHA-3(256):
    * Windows/Pcap_DNSProxy.exe: B28B1D013FE4690F809D3D1FFCA0FFAF152C9F2A3201E2596D398F90E78B2657
    * Windows/Pcap_DNSProxy_x86.exe: 04E0783F9BB6175C70EE39182BCEF2C1C3B831E78ABCF2E70641568E7098205D
    * Windows/Pcap_DNSProxy_XP.exe: DF509FDB4EC3EBDF9A734A92864E1B31C48FB102543FD1C3CD800FEB015B2DD7
    * MacOS/Pcap_DNSProxy: 4C3FDC39D26EAC29E25238D15D4319230BF1631873CEF68C7EFC260B26C4F4C8
  * SHA-2(256):
    * Windows/Pcap_DNSProxy.exe: 49295353E340B4EBB3FDBAA069C267074C81C1693A9966161B7EFE4AFBA97D1D
    * Windows/Pcap_DNSProxy_x86.exe: 565DEF67183452397957EBF24088C427A8B8DCDD20E81F27804898448D1C6C93
    * Windows/Pcap_DNSProxy_XP.exe: 12705D3715D525C6536B8E662AC648D51C839111B13950EF3ED27FD430E9445A
    * MacOS/Pcap_DNSProxy: 479223CD534D4F8D9CEC0DD44AD4BC1EEB85108D5AE8FF3A6EF3AF5C6DFB1501


-------------------------------------------------------------------------------


Pcap_DNSProxy 0.4.7.7-0.4.8.0 changelog(2016-11-23):

* Add Include Guard Macros support. [Syrone Wong]
* Add Large Buffer Size parameter.
* Add serial communication module and rebuild network module:
  * Rebuild SOCKS Proxy and HTTP CONNECT proxy protocol.
  * Add Reliable Serial Socket Timeout and Unreliable Serial Socket Timeout parameters.
  * Rename from HTTP Proxy to HTTP CONNECT Proxy.
  * Rename from HTTP Protocol to HTTP CONNECT Protocol.
  * Rename from HTTP Proxy Only to HTTP CONNECT Proxy Only.
  * Rename from HTTP IPv4 Address to HTTP CONNECT IPv4 Address.
  * Rename from HTTP IPv6 Address to HTTP CONNECT IPv6 Address.
  * Rename from HTTP Target Server to HTTP CONNECT Target Server.
  * Rename from HTTP Version rename to HTTP CONNECT Version.
  * Rename from HTTP Header Field to HTTP CONNECT Header Field.
  * Rename from HTTP Proxy Authorization to HTTP CONNECT Proxy Authorization.
  * Remove HTTP Socket Timeout/SOCKS Reliable Socket Timeout/SOCKS Unreliable Socket Timeout parameters.
* Add TLS/SSL handshake and encrypted transmission support to HTTP CONNECT tunnel protocol:
  * TLS/SSL handshake and encrypted transmission supported by SSPI/SChannel(Windows) and OpenSSL(Linux/macOS)
  * Add HTTP CONNECT TLS Handshake parameter.
  * Add HTTP CONNECT TLS Version parameter.
  * Add HTTP CONNECT TLS Validation parameter.
  * Add HTTP CONNECT TLS Server Name Indication parameter.
* Add temporarily stop reading tags support to IPFilter and Hosts files.
* Configuration file upgrade to version 0.45:
  * Rename from Protocol to Output Protocol.
  * Rename from IPv4 DNS Address to IPv4 Main DNS Address.
  * Rename from IPv4 Local Main DNS Address to IPv4 Local Main DNS Address.
  * Rename from IPv6 DNS Address to IPv6 Main DNS Address.
  * Rename from IPv6 Local DNS Address to IPv6 Local Main DNS Address.
  * Rename from IPv4 DNS TTL to IPv4 Main DNS TTL.
  * Rename from IPv6 DNS Hop Limits to IPv6 Main DNS Hop Limits.
  * Rename from Reliable Socket Timeout to Reliable Once Socket Timeout.
  * Rename from Unreliable Socket Timeout to Unreliable Once Socket Timeout.
  * Rename from Encryption to DNSCurve Encryption.
  * Rename from Encryption Only to DNSCurve Encryption Only.
  * Rename from Client Ephemeral Key to DNSCurve Client Ephemeral Key.
  * Rename from Key Recheck Time to DNSCurve Key Recheck Time.
  * Rename from Client Public Key to DNSCurve Client Public Key.
  * Rename from Client Secret Key to DNSCurve Client Secret Key.
  * Rename from IPv4 DNS Public Key to DNSCurve IPv4 Main DNS Public Key.
  * Rename from IPv4 Alternate DNS Public Key to DNSCurve IPv4 Alternate DNS Public Key.
  * Rename from IPv6 DNS Public Key to DNSCurve IPv6 Main DNS Public Key.
  * Rename from IPv6 Alternate DNS Public Key to DNSCurve IPv6 Alternate DNS Public Key.
  * Rename from IPv4 DNS Fingerprint to DNSCurve IPv4 Main DNS Fingerprint.
  * Rename from IPv4 Alternate DNS Fingerprint to DNSCurve IPv4 Alternate DNS Fingerprint.
  * Rename from IPv6 DNS Fingerprint to DNSCurve IPv6 Main DNS Fingerprint.
  * Rename from IPv6 Alternate DNS Fingerprint to DNSCurve IPv6 Alternate DNS Fingerprint.
  * Rename from IPv4 Receive Magic Number to DNSCurve IPv4 Main Receive Magic Number.
  * Rename from IPv4 Alternate Receive Magic Number to DNSCurve IPv4 Alternate Receive Magic Number.
  * Rename from IPv6 Receive Magic Number to DNSCurve IPv6 Main Receive Magic Number.
  * Rename from IPv6 Alternate Receive Magic Number to DNSCurve IPv6 Alternate Receive Magic Number.
  * Rename from IPv4 DNS Magic Number to DNSCurve IPv4 Main DNS Magic Number.
  * Rename from IPv4 Alternate DNS Magic Number to DNSCurve IPv4 Alternate DNS Magic Number.
  * Rename from IPv6 DNS Magic Number to DNSCurve IPv6 Main DNS Magic Number.
  * Rename from IPv6 Alternate DNS Magic Number to DNSCurve IPv6 Alternate DNS Magic Number.
* Fix normal format Local Hosts list reading problem. [muink]
* Fix IPFilter is not working in Custom mode.
* Fix bug of SOCKS version 4/4a.
* Fix Basic verify process bug of HTTP CONNECT tunnel protocol.
* Fix format error when printing error report.
* Fix script running error cause by CMake problem. (Linux/macOS) [Syrone Wong]
* Fix program unexpected exit because of system signal. (Linux/macOS)
* Fix bug of missing last character when reading files. (Windows)
* Fix macro redefine in CMake. (macOS)
* Remove multi-line comment support for Hosts and IPFilter.
* Replace file checksum from SHA-1 to SHA-2(256)/SHA256.
* Release Hash:
  * SHA-3(256):
    * Windows/Pcap_DNSProxy.exe: 65F41F53AAAD9C18828216EC614D276ADE589CBF877B54D7FC7987C05806021D
    * Windows/Pcap_DNSProxy_x86.exe: D84318648F8EFA3DC8667B002DA5211AC2598D6B28D99A95D2DECB84213E898D
    * Windows/Pcap_DNSProxy_XP.exe: C35A23EC22DD3C0ABC0805E2AF7DE8457D7610EAA6E8E9ECAF2931C1C6E6EF96
    * MacOS/Pcap_DNSProxy: 7E26203D5F0388ED5D396D2C665FE50E44725BF85CAA6C41088D9A060E5B40E2
  * SHA-2(256):
    * Windows/Pcap_DNSProxy.exe: 3626D21FD0674830F1D13776EB79626D79F653C65108041F8042CA4DDA62B299
    * Windows/Pcap_DNSProxy_x86.exe: 76EC284B340FD7FFA585E8B9DA7E92F54F72AB3FFEA3F9DC1CEAE13B49005266
    * Windows/Pcap_DNSProxy_XP.exe: C4744E588BEE4C15E3BD3B77F1A71E55F8B8C9677F43D6E8691D8B41885AF602
    * MacOS/Pcap_DNSProxy: 8C87587D30F6BB6BEE84F6AF07EA27AB77F110BF905CFFDD890ABAB10492F955


-------------------------------------------------------------------------------


Pcap_DNSProxy 0.4.7.1-0.4.7.6 changelog(2016-10-10):

* Added Dnsmasq address and server compatible config format support:
  * Address and server compatible format of non-regular expressions rules support.
  * Specify DNS target server support.
  * Convert all regular expressions to Dnsmasq compatible format in WhiteList.txt.
* Add new TIMER + QUEUE type to DNS cache.
* Add completely thread pool support.
* Add standard RFC 6761 special domain name support:
  * Raname from Localhost Server Name to Local Machine Server Name.
  * Change default Local Machine Server Name to pcap-dnsproxy.server.
  * Resolve all .localhost domain name to loop addresses.
  * Resolve all .invalid domain name to Not-Exist Domain.
  * Not process any .test and Example Domains domain name.
* Add compiler parallel support in CMake. (Linux/Mac)
* Add server-side TCP Fast Open experimental support. (Windows)
* Error log will now be accompanied by a description of error code. [Syrone Wong]
* Project IDE Xcode upgrade to version 8.0. (Mac)
* Fix bug of shutting down sockets. [AVC A]
* Fix bug of IPv6 protocol communication problem. [gaoyan1234]
* Fix DNS cache cleanup problem. (Linux/Mac) [kiliwalk]
* Fix log issue without whitelist.
* Fix bug when program try to reload configuration files.
* Fix bug of ROOT domain name resolving.
* Fix bug of line counting when using CR + LF.
* Fix bug of TCP Fast Open attribute settings. (Linux)
* Release Hash:
  * SHA-1:
    * Windows/Pcap_DNSProxy.exe: 04629413231FCE9CCD375E7E08EED21D975E893B
    * Windows/Pcap_DNSProxy_x86.exe: 771551DFE793F5BD28684BEDBE95A67FB32A0F36
    * Windows/Pcap_DNSProxy_XP.exe: 70E6E5C6974846E19C666A3F2494956DCC731F18
    * Mac/Pcap_DNSProxy: 1D8F5D58681B74BD831C7BBED47E126A273C6AB8
  * SHA-3(256):
    * Windows/Pcap_DNSProxy.exe: 0ED522E220D953D5F334FCCCEF1762836C2393AFAD4AD074217A3E5F0E095A4A
    * Windows/Pcap_DNSProxy_x86.exe: 8A1115810A8DA7D3F8A21D37E69A9CBAAF4E0C65B2CB51E60343BD8CDC78D580
    * Windows/Pcap_DNSProxy_XP.exe: 1D96315F010DC6A06A2649589CE214E8E856D49A69D37363BFECD5187FC1C5AD
    * Mac/Pcap_DNSProxy: E730137DA5CE3E6AEBC4EE2180BB45EBF48F8678E7E9A10B1985ADC3C7BF39CA


-------------------------------------------------------------------------------


Pcap_DNSProxy 0.4.6.1-0.4.7.0 changelog(2016-08-22):

* Add Source Hosts parameter.
* Add Local Force Request parameter.
* Add --flush-dns specifying domain name support.
* Add new DNS poisoning blacklist.
* Add experimental thread pool support and rename from Buffer Queue Limits to Thread Pool Maximum Number.
* Add interval limit between refreshing system DNS cache. [Syrone Wong]
* Add Clang compiler support in CMake. (Mac)
* LibSodium upgrade to version 1.0.11. (Windows/Mac)
* Rename from Multi Request Times to Multiple Request Times.
* Rename from Alternate Multi Request to Alternate Multiple Request.
* Move KeyPairGenerator tool into main program.
* Separate 32-bit version support for XP/2003. (Windows)
* Fix too strict rules of filtering module. [muink]
* Fix bug of batch in XP/2003. (Windows) [wuxiao2522]
* Fix bug of droping correct packet.
* Fix IPv6 packet rules in capture module.
* Fix bug of Pcap Devices Blacklist.
* Fix bug of Hop Limits/TTL reading.
* Fix overlay problem of Hop Limits/TTL.
* Block ICMP/ICMPv6 port unreachable information in system, because of sockets are closed too early.
* Move FileHash tool to https://github.com/chengr28/Toolkit project to continue.
* Remove compatibility with legacy profiles.
* Release Hash:
  * SHA-1:
    * Windows/Pcap_DNSProxy.exe: DA363FB8F5E3906A1FB65464A0E1343C747DA72C
    * Windows/Pcap_DNSProxy_x86.exe: 96F508BBDB48DD16B0B13D7B58D42F333042F198
    * Windows/Pcap_DNSProxy_XP.exe: 07DB9B0D32E5314E8D46A13F02014D712CD1761D
    * Mac/Pcap_DNSProxy: 9B5EF5662DF6697E0FA5DC66B000EA56996FE30C
  * SHA-3(256):
    * Windows/Pcap_DNSProxy.exe: E51761D6A7F5EDC505CC6281CF880D70EC2828904BC34A133C89875A31499B47
    * Windows/Pcap_DNSProxy_x86.exe: D50D4218D14C8C62F67F3BE845B4D668994D807A8A85C2D8D432C50BEB7E1709
    * Windows/Pcap_DNSProxy_XP.exe: D7342D887B52C4FA87402FF9C4273E7C6F6461CA01FDCADC92253D06FD8E8072
    * Mac/Pcap_DNSProxy: DBF31E10FD8BBA080D16256F2DB062B106A157831C3B9DE2824C61890A63A429


-------------------------------------------------------------------------------


Pcap_DNSProxy 0.4.5.1-0.4.6.0 changelog(2016-04-23):

* New hash algorithms support to FileHash:
  * CRC family: CRC-8 family + CRC-16 family + CRC-24 family + CRC-32 family + CRC-40 + CRC-64 family
    * CRC-8 family: Normal + ITU + ATM + CCITT + Maxim + Icode + J1850 + WCDMA + Rohc + Darc
    * CRC-16 family: Normal + Buypass + DDS 110 + EN 13757 + Teledisk + Modbus + Maxim + USB + T10 DIF + DECT(X) + DECT(R) + Sick + DNP + CCITT Xmodem + CCITT FFFF + CCITT 1D0F + Genibus + Kermit + X25 + MCRF4XX + Riello + Fletcher
    * CRC-24 family: Flexray A + Flexray B + R64(Normal)
    * CRC-32 family: Normal + JamCRC + C + D + BZIP2 + MPEG2 + POSIX + K + Q
    * CRC-64 family: Normal + 1B + WE + Jones
  * Checksum: Internet Protocol Checksum
  * SHA family: SHA-2(384) + SHA-2(512) + SHA-2(512/224) + SHA-2(512/256)
  * MD family: MD2 + MD4 + eD2k Hash + MD5
* Add Virtual Bridged LAN/IEEE 802.1Q tag support.
* Add IPv4 Packet TTL and IPv6 Packet Hop Limits parameters, which support rangely and randomly TTL/Hop Limits values.
* Add new Update_WhiteList tool, which can automatically update the whitelist. [dgeibi]
* Add log level control and rename from Print Error to Print Log Level. [smounives]
* Add IPv4 Do Not Fragment flag parameter. (Windows/Linux)
* Add new Update_Routing tool, which can automatically update the routing list. (Linux/Mac)
* The process of clearing internal DNS cache with external command can be completed without delay.
* Enhanced refinement of EDNS Label.
* LibSodium upgrade to version 1.0.10. (Windows/Mac)
* Project IDE Visual Studio upgrade to version 2015. (Windows)
* Project IDE Xcode upgrade to version 7.2. (Mac)
* Rename from IPv4 TTL to IPv4 DNS TTL.
* Rename from IPv4 Alternate TTL to IPv4 Alternate DNS TTL.
* Rename from IPv6 Hop Limits to IPv6 DNS Hop Limits.
* Rename from IPv6 Alternate Hop Limits to IPv6 Alternate DNS Hop Limits.
* Fix bug of whitelist working. [lonsx]
* Fix whitelist/blacklist does not working in CNAME hosts block. [shuangzhijinghua]
* Fix crash in a particular situation.
* Fix bug of errno resetting. [Syrone Wong]
* Fix bug of additional path. [jzp820927]
* Fix compatibility issues of Additional Path/Hosts File Name/IPFilter File Name.
* Fix carsh when using Win10Pcap. (Windows) [smounives]
* Fix CNAME Hosts formatting problem in capture mode. [debugzxcv]
* Fix bug of DNS cache clearing. (Linux/Mac)
* Fix bug of Update_Routing tool when network block ICMP/ICMPv6 protocol. (Windows) [w48325832/Syrone Wong]
* Fix crash when too less time between 2 restarting operations. (Windows)
* Release Hash:
  * SHA-1:
    * Windows/Pcap_DNSProxy.exe: 8805389165915A4611458B28A5C98303F7A6BC6F
    * Windows/Pcap_DNSProxy_x86.exe: 27C6219FFB2A225A56E6D3186B7BE299535DF1F7
    * Mac/Pcap_DNSProxy: 14B86B5CA6BF38D7A242279C2164F53E383CAC52
  * SHA-3(256):
    * Windows/Pcap_DNSProxy.exe: 72930EBF627021684C10C4BBC0988BBBF9CC3F38BE53E93DC4152494CEF88D7F
    * Windows/Pcap_DNSProxy_x86.exe: 04DF32B593D26019545AF121F8551B1632905A7A85506D11E8F83BD174A8C188
    * Mac/Pcap_DNSProxy: 0091474FAEB8CAB2FEF225BCA646A3D46DC0E957FF8AF6F49B8E4FCB9990C1C1


-------------------------------------------------------------------------------


Pcap_DNSProxy 0.4.4.1-0.4.5.0 changelog(2015-12-30):

* A new tool FileHash released:
  * SHA-1 support
  * SHA-2(224/256) support
  * SHA-3(224/256/384/512/SHAKE_128/SHAKE_256) support
* Add SOCKS version 4/4a/5 protocol support.
* Add HTTP CONNECT tunnel protocol support.
* Add CNAME Hosts support. [Hugo Chan/shuangzhijinghua/debugzxcv]
* Add DNSCurve Reliable/Unreliable Socket Timeout parameters.
* Add --lib-version parameter to output version of built-in libraries.
* Rename from EDNS Client Subnet to EDNS Client Subnet Relay. [XIAOSpider97]
* Enhance security of DNSCurve protocol.
* LibSodium upgrade to version 1.0.8. (Windows/Mac)
* Project IDE Xcode upgrade to version 7.1. (Mac)
* Adjust GCC version requirements to 4.9. (Linux)
* Adjust binary requirements for 10.8/Mountain Lion. (Mac)
* Fix rules of EDNS client subnet. [XIAOSpider97]
* Fix conditions of capture module. [Regulus]
* Fix bug of reading IPv4 CIDR routing table. [hocoo]
* Fix bug of DNS flag AD/Authentic Data setting. (Linux/Mac)
* Fix DNS ID mismatch error. (Linux/Mac) [hongyi-zhao/cielpy]
* Fix bug of sleeping error in daemon mode. [shuangzhijinghua]
* Fix crash when startup more than one program a time. (Windows)
* Fix overlapping problem in console mode. (Windows)
* Release Hash:
  * SHA-1:
    * Windows/Pcap_DNSProxy.exe: AC94CDFD0F69A336DE9BFC4A877E3468BFCFAD0C
    * Windows/Pcap_DNSProxy_x86.exe: 938FD04259497D2DD8204F91E51F0B99B108BE57
    * Mac/Pcap_DNSProxy: A9765A1BE67999036C80061CFC66C7EE0191CF90
  * SHA-3(256):
    * Windows/Pcap_DNSProxy.exe: 4CFC917AFD6DE227710CBBA5B6C8A6A4F0BDF8216E9FBE8B26E1F195F2E8AD12
    * Windows/Pcap_DNSProxy_x86.exe: CF36584F70E1EE30F0AB1FB445A4D0971067540F7F7BA3C45C0F0B08984A9066
    * Mac/Pcap_DNSProxy: C653A3DA815BDF5C8995803F105DB666ADB31EC57C942411297469D69C4CA7F9


-------------------------------------------------------------------------------


Pcap_DNSProxy 0.4.3.1-0.4.4 changelog(2015-09-27):

* Add one-time client keypair for client ephemeral key support. [DNSCrypt]
* Add auto-refresh to configuration files. [jedisct1/icylogic]
* Add combination of the protocols support to local protocol. [muink]
* Add hexadecimal support to DNSCurve(DNSCrypt) magic number. [BiliBbb]
* Enhance DNSCurve protocol combinations support.
* Enhance "NULL" support to hosts whitelist, which can now be specified only for partial DNS types
* Add cleaning DNS cache command support to BIND version above 9.2.0. (Linux) [hongyi-zhao]
* Fix bug of local hosts data reading in local main mode. [c1024/gaoyan1234]
* Fix buf of receive waiting.
* Fix problem of local host mode when program startup. [hongyi-zhao]
* Limit the number of multiple requests.
* Fix bug when reading network layer service name and DNS record name.
* Fix switching problem between main and alternate servers.
* Fix fragment problem in TCP protocol.
* Fix bug of ICMP/ICMPv6 additional data length calculation.
* Fix translation bug between IPv4 address and IPv6 address in 32-bit system. (Windows Vista+) [Nine Forty/fabe004]
* Fix bug of ICMP/ICMPv6 parameters. (Linux/Mac)
* Fix carsh of local request when TCP protocol is enabled. (Linux/Mac)
* Fix bug of additional path parameters reading. (Linux/Mac)
* Fix send process problem when TCP Fast Open is disabled. (Linux)
* Fix sequence of rereading IPFilter and Hosts files.
* Fix bug of error reporting module, which does not output error messages to Error.log file in some cases. (Linux/Mac) [hongyi-zhao]
* Remove error messages of clearing DNS cache failed. [Syrone Wong]


-------------------------------------------------------------------------------


Pcap_DNSProxy 0.4.2.1-0.4.3 changelog(2015-07-28):

* Rename Hosts Only to Direct Request.
* Add IPv4 + IPv6 protocol support to Direct Request mode. [AVC A]
* Add Pcap Devices Blacklist parameter to specify what network interfaces are not captured.
* Add custom limit to request counts.
* Add DNS compression pointer check.
* Add new blacklist addresses.
* Add all newline and space formats in Unicode standard support.
* Add TCP Fast Open support. (Linux)
* Add --disable-daemon support. (Linux)
* Add ASCII/UTF-8/UTF-16(LE/BE)/UTF-32(LE/BE) encoding support.
* Adjust capture module to callback mode.
* Adjust capture module to avoid the conflict between WinPcap and cFosSpeed. ​​[軒轅無雙]
* Optimize reading of priority to specify the network layer protocol.
* Optimize reading of case-sensitive characters.
* Optimize reading of hosts and local hosts. [yuyangzxw/gaoyan1234]
* Fix bug of capture module when using non-Ethernet and non-Apple IEEE 1394/FireWire devices.
* Fix bug of filter algorithm. [AVC A]
* Fix bug of file reading module when trying to read before and after spaces. [wen kangcheng]
* Fix bug of file reading module when trying to read multiple spaces. [yuyangzxw]
* Fix bug of generating client keypair in KeyPairGenerator. [Syrone Wong]
* Fix bug of reading accept list. [Syrone Wong]
* Fix overflow of address hosts. [jzp820927]
* Fix bug of sending request with EDNS Label. [Syrone Wong]
* Fix bug of truncated packet process. [shuangzhijinghua]
* Fix bug of system sleeping error log: (Windows)
  * "Insufficient privileges or not any available network devices" error log will not be output at the first time.
  * Remove "An error occurred in XXX" error log.
* Terminal will also output error log:
  * When running in non-daemon mode (Linux)
  * Anytime (Mac)
* Remove permission check in batch. (Windows) [5sq]


-------------------------------------------------------------------------------


Pcap_DNSProxy 0.4.1.1-0.4.2 changelog(2015-06-04):

* Add EDNS client subnet support.
* Enhance DNSSEC authentication.
* Add routing table check.
* Add DNSSEC Force Validation to force check DNSSEC records.
* Add the -c/-config-file to specify working directory. [BlackGear]
* Add the -v/-version to output version. [BlackGear]
* Add Homebrew support. (Mac) [BlackGear]
* Add uninstall scripts. (Linux/Mac)
* Add a new error log type that only the notice.
* Add protocol priority support.
* Add cfg extension support.
* Change to 755 permission settings. [BlackGear]
* Rename from EDNS0 Label to EDNS Label.


-------------------------------------------------------------------------------


Pcap_DNSProxy 0.4.0.1-0.4.1 changelog(2015-05-21):

* Add Pcap Reading Timeout parameter to make a custom capture packet module read timeout/interval time.
* Add Receive Waiting parameter to make custom data packet receiving waiting time.
* Add LibPcap compiling option. (Linux)
* Adjust interval time of capture module to ensure that all packets are caught in time. [France is Bacon]
* Adjust filter to save some responses of authority DNS server. [France is Bacon]
* Adjust DNS cache to make sure that only save cache which has IPv4/IPv6 result. [shuangzhijinghua]
* No error log report when it try to print to screen in console mode. (Windows)
* Fix overflow of hosts entries. [yfdyh000]
* Fix local hosts cannot be read. [France is Bacon]
* Fix EDNS tags bug of Hosts request.
* Fix randomly domain name generation module which generates non-standard domain name.
* Adjust rules of domain name resolution when closing capture module.
* Remove overwritting system hostname operation. (Mac) [messiahluo]
* Remove running log.


-------------------------------------------------------------------------------


Pcap_DNSProxy v0.4 (Windows/Linux/Mac) changelog(2015-05-12):

* Add Apple IEEE 1394/FireWire support.
* Add streamlined and compact DNSCurve(DNSCrypt) protocol support.
  * Randomly Curve25519/Salsa20/Poly1305(DNSCurve) key pair generation - KeyPairGenerator
* Add DNS cache support.
* Add main and alternate servers switching:
  * Custom parameters support(Failed request counts and reset time)
* Add Local Main to send all query to local DNS servers first:
  * It will retry to foreign DNS when local DNS server replying poisoning result.
  * Please read documents to find out why DNS is poisoning or not.
* Add multiple requests to multiple DNS servers support.
* Add custom DNS server port support.
* Add custom local listening address and port support.
* Add multiple addresses/ports listening support.
* Add query type filter.
* Add IPv6 6to4/ISATAP/Teredo tunnel addresses support.
* Add IPv4/IPv6 routing switch support(IPv6 has high priority).
* Add Domain Case Conversion parameter, it will randomly convert case in domain name, default is enabled.
* Add Compression Pointer Mutation parameter, it will randomly add compression pointer to domain name in the query packet, default is disabled.
* Add switch to turn capture module on or off.
* Add IPv4 extension header support.
* Add manually checksum to all TCP transmission.
* Add new blacklist address.
* Blacklist will now filter all addresses.
* Add Private and Custom for Operation Mode parameter: [陈斐]
  * Private mode allows only private network to request.
  * Custom mode prohibits or allows only addresses which listed in IPFilter database(IPFilter.dat and Guarding.P2P format are supported).
* Add blacklist to IPFilter database.
* Add UDP truncated packet retrying with TCP support.
* Add EDNS tags and DNSSEC (AD/CD/DO) request support(DNSSEC request require EDNS tags).
* Add Hosts Only parameter to make the direct mode.
* Add Local Routing support.
* Add custom hosts time to live limit support.
* Configuration file and Hosts file upgrade to version 0.4:
  * Maximum size of a line is increasing to 4KB/4096 bytes.
  * Add new comment format support.
  * Add CSV/comma-separated value format support to Hosts database.
  * Add "BANNED <regular expressions>" (without the quotation marks) to Hosts database to block the matched domain name request.
  * Add "BANNED: xxx <regular expression>" (without the quotation marks) to Hosts database to block the matched domain name and record types request.
  * Add "<IP address> ALL" (without quotation marks) to IPFilter database to block all the listed address or the range addresses.
  * Add URI IPv6 address format support.
  * Add non-standard abbreviated IPv4/IPv6 address formats support.
  * Add size check of configuration file.
  * Add custom maximum space of all configuration file support.
  * Add custom Hosts and IPFilter database file name support.
  * Add sorting for database.
  * System DNS cache will automatically be removed when IPFilter files has been changed.
  * System DNS cache will automatically be removed when Hosts files has been changed.
  * Rebuild file reading module, support multiple next line format encodings(Not recommended to use).
  * Compatible 0.3 , but it's strongly recommended to upgrade to 0.4.
* Add console mode support in safe mode. (Windows)
* Error report is now displayed in console mode immediately. (Windows)
* Add Libsodium compiling option. (Linux)
* Request FQDN/fully qualified domain name will return all IPv4/IPv6 addresses.
* Adjust local DNS request to direct mode.
* Adjust IPv4 Data Filter to disabled by default.
* Adjust ICMP request module type and code generation rules.
* Adjust ICMP additional data limit length to 1464 bytes(Ethernet MTU - IPv4 Standard Header - ICMP Header).
* Adjust random domain name generation module, using the C++ STL MT engine to generate random values.
* Adjust built-in default local server FQDN/fully qualified domain name to "pcap-dnsproxy.server".
* Adjust memory allocation(standard Ethernet MTU size, buffer size and STL standard library calling).
* Adjust error log report to UTF-8 with BOM encoding. [Hugo Chan]
* Adjust regular expression to match the pattern. [Hugo Chan]
* Merge x86 and x64 executable files. (Windows) [Hugo Chan]
* Improve firewall test module for initial. (Windows)
* Improve automatic retrying of capture module.
* Improve packet replying module.
* Add CMake support. (Linux)
* A new service control and installing scripts for Linux Debian distributions.
* Remove error log report:
  * Cannot find Hosts file.
  * IPv6 is not supported on Windows XP/2003.
* Fix bug of file reading module, it will carsh when a line is longer than 2KB.
* Fix bug of request module, it shut the socket down premature and will make system sending ICMP(v6) Port Unreachable message to requester.
* Fix bug of request module, it will make requester waiting too long to get response when using TCP.
* Fix bug of capture module which will make crash in bridge adapters. [JonyOang]
* Fix bug of multi-threaded model.
* Enhance security issues of socket listening. (Windows)
* Fix bug of reading system default IPv6/IPv4 socket settings. (Linux)
* Fix bug of reading server name from in IPv6 environment.
* Fix bug of replying reversed domain name when request comes from private network addresses.
* Fix bug of matching when capturing packets in IPv6 environment.
* Fix bug of capture module cannot capture packets after restarting network interface.
* Fix bug of special IPv4/IPv6 address detection module.
* Fix bug of random domain name generation module, it may make an empty domain name(ROOT).
* Fix bug of overflow when a line is too long.
* Fix bug of reading the last line. [Hugo Chan]
* The service will be set to automatically reboot when the first and the second restarting if it's stopped. (Windows) [yfdyh000]
* No longer delete error log files when startup. [yfdyh000]
* Add an all-in-one batch file. (Windows) [yfdyh000]
* Fix bug of batch is running in a UAC enabled system. (Windows) [Haruyuki Arita/Hugo Chan/Ryans233/streamgo/watchingyoufall]
* Remind when batch is running as a non-administrator user. (Windows) [Haruyuki Arita/Hugo Chan/Ryans233/watchingyoufall]
* Source code will now using UTF-8 encoding.
* Project IDE Visual Studio upgrade to version 2013. (Windows)
* Fix bug of analysing name resolution reply packets when in IPv6 environment, but this feature has been removed in newer version. [David Webb/eqielb]
* Fix bug of makefile, but this feature has been removed in newer version. (Linux) [otakuchiyan]


-------------------------------------------------------------------------------


Pcap_DNSProxy v0.3.2 (Windows)/v0.2(Linux)/v0.1(Mac) changelog:

* Pcap_DNSProxy v0.1 Mac released!
* Executable files for Linux x86/x64 now is available. (Linux)
* Enable Ethernet device recognition. (Linux)
* Fix bug of program running as non-adminstrator user.
* Fix bug of error report module. (Linux)
* Fix documentation. (Linux)


-------------------------------------------------------------------------------


Pcap_DNSProxy v0.3.1 (Windows)/v0.1 (Linux) changelog:

* Pcap_DNSProxy v0.1 Linux released!
* Peel IPv4/IPv6 reserved address list module off: (Windows)
  * Blacklist update
  * Fix bug of local IPv6 address fetching module.
  * Fix bug of local address refreshing module.
* Fix connecting communication problem. (Windows)


-------------------------------------------------------------------------------


Pcap_DNSProxy v0.3 changelog:

* 32-bit/x86 versions are using WSAAddressToString() and WSAStringToAddress() now instead of inet_ntop() and inet_pton() to support Windows XP and older systems. [Roy Tam]
* Add static list of Local Hosts support. [陈斐]
* Add IPv6 support for Windows Firewall testing.
* INI version and Hosts upgrade to version 0.3:
  * Add detection of file version.
  * Add whitelist to Hosts file.
* Upgrade file reading module:
  * Fix bug of incorrect lines printing.
  * Fix bug of comments reading error in Hosts file.
  * Enhance different next line format reading.
* Fix bug of ICMP (v6)/ping test module.
* Fix bug of whitelist request was disabled in TCP mode.
* Fix bug of WinPcap module.
* Disable console and some Ethernet debugging code.
* All code was converted to USC-2(Little-Endian) encoding and Windows(CR-LF) file format.


-------------------------------------------------------------------------------


Pcap_DNSProxy v0.2 changelog:

* Rebuild the code reading module, add support for Macintosh(CR) line feed format.
* Fix bug of program, it cause failed in PPPoE environment.
* Use the C-language standard library to return values.
* Macro defines the type of error report.


-------------------------------------------------------------------------------


Pcap_DNSProxy v0.1 changelog:

* v0.1 released!
