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

253 Commits

Author SHA1 Message Date
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
Daniel Collins
0e3a9e556a Updated changelog. 2012-12-01 16:20:13 +00:00
Daniel Collins
318aa3e588 Append the IPs of ALL interfaces to the wildcard IP address list. 2012-12-01 15:52:25 +00:00
Daniel Collins
3c42e513ed Populate the wildcard interface IP list with the IPs of each enabled interface
rather than 0.0.0.0/0.0.0.0 as the behaviour of broadcasting to 255.255.255.255
is unreliable.
2012-12-01 14:44:18 +00:00
Daniel Collins
fab32bf974 Use get_main_config() to load correct log level from registry in stub DLLs. 2012-12-01 14:34:14 +00:00
Daniel Collins
8cf1f4eaa4 More detailed debug messages when sending packets. 2012-12-01 14:09:02 +00:00
Daniel Collins
4b67b33dfa Only skip _ONE_ interface when a disabled one is encountered. 2012-12-01 13:08:05 +00:00
Daniel Collins
d95b7d92b5 Replaced BIN_FILES/SRC_FILES variables in Makefile with external manifest files
and updated for current tree.
2012-11-30 21:01:32 +00:00
Daniel Collins
e3d0726208 Added ipxwrapper.log to .gitignore file. 2012-11-30 20:22:48 +00:00
Daniel Collins
466c0e3f0d Implemented basic testing framework and tests for bind behaviour. 2012-11-30 20:21:10 +00:00
Daniel Collins
07275d870c Dump interfaces at startup to aid with debugging. 2012-11-30 17:14:12 +00:00
Daniel Collins
3558f2196e Periodically update the address table and correctly remove entries. 2012-11-18 18:29:05 +00:00
Daniel Collins
0faeb985d2 Properly initialise address table. 2012-11-18 17:00:36 +00:00
Daniel Collins
d9ee86d985 Updated changelog and readme. 2012-11-17 23:07:27 +00:00
Daniel Collins
7b6501526c Removed config_version, cleaned up config code and implemented set_primary_iface. 2012-11-12 20:59:32 +00:00
Daniel Collins
50bb5a3868 Implemented reg_check_value to check if a value exists. 2012-11-12 20:42:55 +00:00
Daniel Collins
f29bbb7f06 Updated ipxconfig to use some C utility functions and new config variables. 2012-11-11 23:57:35 +00:00
Daniel Collins
d921d206f0 Create main config key before attempting to create interface config key. 2012-11-11 22:48:56 +00:00