Daniel Collins
098cb76ff4
Fix dropping of broadcast packets in some situations.
...
...by which I mean make it drop the packets depending on the socket options of
the receiving socket.
2014-05-29 23:32:24 +01:00
Daniel Collins
4694ce8850
Use correct WinPcap timeout value.
...
A timeout of zero is infinite, so was blocking for traffic on interfaces that
didn't have any in the router main loop.
2014-04-20 17:26:23 +01:00
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