192 Commits

Author SHA1 Message Date
Cameron Gutman
ebe91d6799 Update project build files for the new DLLs 2020-11-29 14:51:41 -06:00
Cameron Gutman
077c9814e0 Sign pre-built libraries 2020-11-29 14:49:37 -06:00
Cameron Gutman
393dfb70a7 Update miniupnpc to 677e0db63649ad2aeb536783eb745c651f2fd5c2
Rebuild as DLL to prevent MSVC version incompatibility
2020-11-29 14:35:02 -06:00
Cameron Gutman
88fb77083f Update libnatpmp to 4536032ae32268a45c073a4d5e91bbab4534773a
Rebuild as a DLL to prevent MSVC version compatibility issues
2020-11-29 14:27:53 -06:00
Cameron Gutman
38514d08c1 Version 5.5 2020-10-10 13:58:23 -05:00
Cameron Gutman
5d75b11a35 Fix success text typos v5.5 2020-10-10 13:56:10 -05:00
Cameron Gutman
f511b830ea Handle deletion of the 'HKLM\Software\NVIDIA Corporation' key 2020-10-10 13:35:05 -05:00
Cameron Gutman
8a45ea2066 Test for MTU problems 2020-10-10 12:39:48 -05:00
Cameron Gutman
3844ea59de Allow mDNS traffic through the firewall for autodiscovery 2020-10-10 12:07:42 -05:00
Cameron Gutman
a19b95f259 RFC6887 says PCP max packet size is 1100 bytes 2020-10-10 12:00:48 -05:00
Cameron Gutman
ae81d4305d Improve success message with more information 2020-10-10 11:57:26 -05:00
Cameron Gutman
8066cf4be1 Avoid extra GameStream state prints when the state isn't changing 2020-10-10 11:37:42 -05:00
Cameron Gutman
021474cdd2 Version 5.4 v5.4 2020-09-07 11:15:52 -07:00
Cameron Gutman
308cd0dd00 Use dynamically allocated buffer for GetAdaptersAddresses() 2020-09-07 10:14:54 -07:00
Cameron Gutman
83360d775b Ignore ICMP Port Unreachable messages during STUN 2020-09-06 15:12:16 -07:00
Cameron Gutman
cdbaa0aff3 Version 5.3.1 v5.3.1 2020-08-30 13:47:35 -07:00
Cameron Gutman
36ea86faaa Configure SCM to restart our service if it crashes 2020-08-29 22:43:41 -07:00
Cameron Gutman
8590a0813b Stop testing after the first IPv6 relay server 2020-08-28 18:46:56 -07:00
Cameron Gutman
51ae1c8770 Fix socket errors being clobbered by closesocket() 2020-08-28 18:46:36 -07:00
Cameron Gutman
f1ca6a71f0 Version 5.3 v5.3 2020-08-14 18:35:19 -07:00
Cameron Gutman
ac92212464 Fix flip-flopped HTTP and HTTPS rule IDs 2020-08-14 17:57:45 -07:00
Cameron Gutman
dbf43ac7a1 Don't attempt to relocate WoL port 9 2020-08-14 17:54:48 -07:00
Cameron Gutman
893aa76c9c Replace hardcoded constant with #define 2020-08-14 17:52:59 -07:00
Cameron Gutman
21d8c71a2c Log the internal port for the UPnP mappings 2020-08-14 17:51:06 -07:00
Cameron Gutman
41ef072c9b Validate the port number of loopback traffic 2020-08-14 17:48:55 -07:00
Cameron Gutman
53246bd4c5 Don't redirect stdout for standalone exe invocation 2020-08-14 17:48:14 -07:00
Cameron Gutman
ac850e79d8 Add firewall rules for GameStream just in case GFE didn't 2020-08-12 20:54:34 -07:00
Cameron Gutman
944c8993e8 Elevate priorities for the UDP relay threads 2020-08-11 01:12:48 -07:00
Cameron Gutman
b6508d9024 Remove superfluous select() call 2020-08-11 00:59:13 -07:00
Cameron Gutman
ef5bb72d5c Version 5.2 v5.2 2020-08-10 22:05:43 -07:00
Cameron Gutman
3343ebb225 Don't allow testing while a stream is active 2020-08-10 21:50:52 -07:00
Cameron Gutman
05413a554c Work around IGDs that deduplicate entries based on the internal port
This is a violation of the UPnP IGD specification but we can relay through an alternate port as a workaround.
2020-08-10 21:16:21 -07:00
Cameron Gutman
5f015acdaa Improve robustness for broken UPnP IGDs 2020-08-09 16:01:39 -07:00
Cameron Gutman
df286ef56d Use indefinite mappings if the IGD returns unexpected error codes 2020-08-09 15:30:48 -07:00
Cameron Gutman
47d60b9f24 Leave permanent mappings alone during the update cycle 2020-08-09 15:16:05 -07:00
Cameron Gutman
659d3aea23 Open UDP 47009 for WoL
It may work where UDP 9 fails because it's an unprivileged port
2020-08-09 14:00:14 -07:00
Cameron Gutman
e4a4d42ece Version 5.1 v5.1 2020-08-08 16:57:06 -07:00
Cameron Gutman
189e861362 Fix systems where Windows Firewall has been improperly disabled 2020-08-08 16:37:38 -07:00
Cameron Gutman
fd022b67d3 Only test on the first reachable IPv4 and IPv6 relay servers 2020-08-07 21:58:36 -07:00
Cameron Gutman
14d27b4cf5 Use WinHTTP timeouts to avoid having to test HTTP ports twice 2020-08-04 02:03:14 -07:00
Cameron Gutman
17cb084968 Improve heuristic for distinguishing CGN vs double-NAT 2020-08-04 01:13:21 -07:00
Cameron Gutman
ad8ef228d5 Fix double-close of connection handle on failure 2020-07-19 10:08:26 -07:00
Cameron Gutman
8d2252c4ac Version 5.0 v5.0 2020-07-18 17:59:54 -07:00
Cameron Gutman
365b3ccd61 Remove redundant print 2020-07-18 17:55:45 -07:00
Cameron Gutman
74140a8511 Switch to the new loopback server protocol 2020-07-18 17:12:35 -07:00
Cameron Gutman
a9bf4ffd70 Always run the loopback server test
It appears that in rare cases NAT reflection can work where real WAN traffic fails
2020-07-18 16:13:56 -07:00
Cameron Gutman
164d8b5467 Fix testing on Windows 7 with GFE 3.20.4 2020-07-18 15:53:47 -07:00
Cameron Gutman
f1ebefa59c Add missing success print 2020-07-18 15:53:08 -07:00
Cameron Gutman
3e060fae54 Add supportedOS entries to the embedded manifest 2020-07-18 15:47:39 -07:00
Cameron Gutman
f97c04a8cc Switch to WinHTTP instead of WinInet for HTTP testing 2020-07-18 13:27:52 -07:00