1
0
mirror of https://github.com/solemnwarning/ipxwrapper synced 2024-12-30 16:45:37 +01:00

270 Commits

Author SHA1 Message Date
Daniel Collins
ecda2ba0a4 Fix testing of source address in UDP-encapsulated unicast packets. 2014-04-20 17:26:23 +01:00
Daniel Collins
79d41c0001 Don't open unnecessary UDP sockets when using Ethernet encapsulation.
Don't need the shared UDP socket at all and the private is only used for sending
packets to the local emulated sockets.
2014-04-20 17:24:51 +01:00
Daniel Collins
5d9a3cb143 Allocate the UDP socket recv buffer on the stack.
Default (per-thread) stack limit on Windows is 1MB, this buffer may shrink in
the future but will never grow.
2014-04-20 14:05:21 +01:00
Daniel Collins
7c19414c37 Use appropriate MTU for packet size limits. 2014-04-18 14:45:11 +01:00
Daniel Collins
c69aac3586 Don't allow creating SPX sockets when using Ethernet encapsulation. 2014-04-18 14:45:09 +01:00
Daniel Collins
4fd24354a5 Refactored ipxconfig, allow enabling Ethernet encapsulation. 2014-04-18 14:45:09 +01:00
Daniel Collins
35d853ae54 Implemented support for receiving real (Ethernet II) IPX frames. 2014-04-18 14:45:07 +01:00
Daniel Collins
41637269fb Refactored IPX packet delivery. 2014-04-18 14:45:06 +01:00
Daniel Collins
ab62a68187 Implemented support for sending real (Ethernet II) IPX frames. 2014-04-18 14:44:59 +01:00
Daniel Collins
4cf1ec88aa Implemented support for loading interfaces from WinPcap. 2014-04-18 00:31:59 +01:00
Daniel Collins
3974a2337c Added stub calls for WinPcap. 2014-04-14 23:19:36 +01:00
Daniel Collins
fdc1204426 Updated changelog. 2014-03-11 21:44:19 +00:00
Daniel Collins
fa8d0479ea Updated readme. 2014-01-26 14:27:40 +00:00
Daniel Collins
377c208af9 Fix and extend SPX connect tests. 2014-01-26 00:10:42 +00:00
Daniel Collins
e5315890fd Use GetTickCount64() for connect timeouts where available. 2014-01-25 23:34:33 +00:00
Daniel Collins
b5a92e00ad Updated changelog. 2014-01-25 23:17:15 +00:00
Daniel Collins
880024b8c8 Added workarounds for Jane's Combat Simulations: WWWII Fighters 2014-01-25 23:16:47 +00:00
Daniel Collins
85edba72c4 Add extra debug output in setsockopt and closesocket. 2014-01-25 23:14:46 +00:00
Daniel Collins
3be40b6e63 Bodge asynchronous connects to almost work as they should. 2014-01-25 23:14:46 +00:00
Daniel Collins
a930a972df Log entry and target of stub calls. 2014-01-25 23:14:29 +00:00
Daniel Collins
7c83726b14 Refactored EnumProtocols and added SPX protocols. 2014-01-25 23:12:48 +00:00
Daniel Collins
09aacc71f9 Wrote unit tests for connecting to SPX sockets. 2014-01-25 22:32:28 +00:00
Daniel Collins
390f83ddc0 Wrote unit tests for sending/receiving IPX packets. 2014-01-25 22:32:28 +00:00
Daniel Collins
942848cd4f Wrote socket creation unit tests. 2014-01-25 22:32:27 +00:00
Daniel Collins
018c66873f Fixed segfault in recvfrom when called with NULL addrlen. 2014-01-25 22:32:27 +00:00
Daniel Collins
34ae708491 Updated sendto to work with SPX sockets. 2014-01-25 22:32:27 +00:00
Daniel Collins
b342f6c68d Removed send/connect -> ws2_32 stubs from ipxwrapper.dll. 2014-01-25 22:32:26 +00:00
Daniel Collins
33071b40dd Initialise ptype of IPX sockets correctly. 2014-01-25 22:32:26 +00:00
Daniel Collins
d98c830877 Updated bind to work with SPX sockets. 2014-01-25 22:32:25 +00:00
Daniel Collins
ef65d64edc Updated WSARecvEx to work with SPX sockets. 2014-01-25 22:32:25 +00:00
Daniel Collins
714543fac5 Updated recvform to work with SPX sockets. 2014-01-25 22:32:25 +00:00
Daniel Collins
499bb4659c Updated recv to work with SPX sockets. 2014-01-25 22:32:24 +00:00
Daniel Collins
e31d0d51a9 Updated send to work with SPX sockets. 2014-01-25 22:32:24 +00:00
Daniel Collins
938d95a450 Implemented accept function. 2014-01-25 22:32:23 +00:00
Daniel Collins
9114f0fb88 Updated connect to work with SPX sockets. 2014-01-25 22:32:19 +00:00
Daniel Collins
8786088252 Implemented SPX address resolution in router.
The router will search the socket table of the process for a listening SPX
socket with the correct address when a special packet is received.
2014-01-12 00:34:26 +00:00
Daniel Collins
b408f4e4e9 Implemented listen function. 2014-01-12 00:26:29 +00:00
Daniel Collins
0819a324c1 Refactored address table code.
- Use process+socket as key rather than local port number.

- Store socket protocol in table.

- Removed ADDR_TABLE_ENTRY_REUSE flag.
2014-01-12 00:25:10 +00:00
Daniel Collins
1f733315d6 Implemented ipx_interface_by_subnet function. 2014-01-12 00:25:10 +00:00
Daniel Collins
6c2a93e542 Updated ioctlsocket to work with SPX sockets. 2014-01-12 00:25:09 +00:00
Daniel Collins
2ad2707f89 Filter out SPX sockets when relaying IPX packets. 2014-01-12 00:25:09 +00:00
Daniel Collins
ae2837258f Updated shutdown to work with SPX sockets. 2014-01-12 00:07:58 +00:00
Daniel Collins
94d3a6cbbd Create SPX (TCP) sockets when requested. 2014-01-12 00:07:57 +00:00
Daniel Collins
68d13baac2 Allow address sharing when the existing socket doesn't have SO_REUSEADDR.
The IPX/SPX protocol versions in 98/2000/XP only require the second socket to
have SO_REUSEADDR when attempting to bind to an already-used address. The state
of the option on the first socket is ignored.

The ADDR_TABLE_ENTRY_REUSE flag is kept and set on all sockets in the address
table to keep compatibility with previous versions.
2014-01-12 00:07:52 +00:00
Daniel Collins
533e35729d Refactored bind tests to use Test::More and prove. 2014-01-03 21:14:59 +00:00
Daniel Collins
e7c19c3d42 Fixed addr32_from_string and addr48_from_string. 2014-01-03 21:12:50 +00:00
Daniel Collins
574094050c Moved reg_{get,set}_addr{32,48} from src/addr.[ch] to src/common.[ch] 2014-01-03 01:19:24 +00:00
Daniel Collins
7f01666d34 Forgot to add new sources to the manifest in previous commit. 2013-12-11 20:47:18 +00:00
Daniel Collins
223bfeb35a Automatically add exceptions to Windows Firewall
If enabled (default is off) and running as an admin, add the running executable
to the Windows Firewall exception list during DLL initialisation.
2013-12-11 20:23:48 +00:00
Daniel Collins
7cbde56f1a Implemented workaround for PPP links. 2013-10-12 19:23:09 +01:00