1
0
mirror of https://github.com/lidgren/lidgren-network-gen3.git synced 2026-05-15 22:56:30 +09:00
Commit Graph

371 Commits

Author SHA1 Message Date
Pieter-Jan Briers
f0e5bb4515 IPv6: Space Wizard Edition.
This PR fixes the IPv6 support *properly*. The two previous PRs, #123 and #126, both made a mess out of it:

PR #123 implemented IPv6 by breaking non-dualstack IPv4 support.
PR #126 fixed IPv4 support by breaking non-dualstack IPv6 support.

This change fixes the mess entirely. IPv4, IPv6 and IPv6-dual-stack are now all independently supported and work as expected.
Namely IPv4 can't receive IPv6, IPv6 can only receive IPv4 if NetPeerConfiguration.DualStack is set. You can still have an IPv6-only socket.

I'll leave some review comments on the PR for less-immediately obvious changes.
2020-02-15 00:22:38 +01:00
Vladimir Kozlov
bbf05b991b Fixed an issue #132 (Incorrect network messages/malformed packets could easily overwhelm the server). NetPeer.Heartbeat() method will no longer prematurely return from the method in case of encountering an incorrect packet. 2019-12-24 23:43:52 +04:00
Badartefact
b9bfbb0be5 Fixed problem with setting correct local address when we change DualStack property. Do not use any IPv6 features by default. 2019-06-14 22:39:29 +03:00
Badartefact
37cd6ac2c3 Fixed null ref exception. Fixed problem with wrong ip address. 2019-06-14 12:13:14 +03:00
CallumDev
85ad100f89 Can configure to be dual-mode, or plain IPv4/6 2019-06-10 02:28:38 +09:30
CallumDev
1a2301ddbc Implement IPv6 Dual Mode 2019-05-03 03:20:58 +09:30
Laurent Giroud
14d15b0f9c Fix: Connection.Connect() now correctly updates the Connection.Status property when needed.
Previously, it would never update it, even when users had opted to not receive status update change messages.
It now properly calls SetStatus() instead of modifying the m_status field directly.
2019-02-20 14:54:07 -05:00
viacheslav.butkovskyi
c04204d012 Fix NetUnreliableSenderChannel enqueuing packets when SuppressUnreliableUnorderedAcks enabled in configuration 2019-01-23 11:58:51 +02:00
lidgren
f9a56e4325 global mutex on bind added 2018-10-20 10:53:23 +02:00
lidgren
e26203f652 Merge pull request #106 from chrisnobrega/master
Fixed NetServer missing SendToAll override with sequence channel parameter
2018-10-20 10:43:41 +02:00
Simon Hartfield
0e9da42ce0 Allow separate internal and external ports on port forwarding
Rename property on delete forwarding function
2018-10-04 21:08:08 +01:00
chrisnobrega
14df22ff9a Fixed NetServer missing SendToAll with sequence channel parameter 2018-08-30 22:59:04 -04:00
Gordon Alexander MacPherson
0249d92acb Merge branch 'master' of github.com:lidgren/lidgren-network-gen3 2018-01-06 16:13:41 +00:00
Gordon Alexander MacPherson
94c9d502bd fixed project not opening in visual studio 2017 2018-01-06 15:54:21 +00:00
Callum
259822fc24 Fix sending broadcast packets
The `==` operator for IPAddress compares references not values, so `target.Address` will always not equal `ba`. Switching to `IPAddress.Equals` fixes this and allows broadcast packets to be sent on Linux.
2017-12-06 13:39:56 +10:30
Gordon MacPherson
ed0a3efe9f updated project files to vs2017 and forced net framework 4.6.2 2017-11-16 14:09:52 +00:00
Gordon MacPherson
c455f260c7 Merge pull request #2 from forestrf/master
Less GC when reading floats and doubles thanks to a pool of byte[] + Removed a unnecessary array creation and destruction
2017-11-11 20:23:48 +00:00
Gordon MacPherson
b696ecde1d added some debug information for SIO_UDP_CONNRESET 2017-11-10 15:30:01 +00:00
RevoluPowered
9e5525711e disable socket.IOControl(SIO_UDP_CONNECT) on unix but not windows 2017-11-10 14:52:45 +00:00
RevoluPowered
4c81cf3c03 disabled code causes crash on OSX, but not on linux even though it's not supporte on unix. 2017-11-10 15:13:17 +00:00
Andrés Leone
cc673f3364 Support for AOT 2016-08-26 17:46:50 +02:00
Andrés Leone
37d03863bb Added a const variable to set the default size of the buffer array
Using the buffer with readstring
2016-06-25 21:28:04 +02:00
Andrés Leone
d14d3e0d2d Avoid array duplication of an array that is not accesible.
Avoid extra array allocations with reads that require a byte array. (corrected with the comment of @Inverness)
2016-06-25 20:47:29 +02:00
lidgren
a7468f4f1c Merge pull request #63 from fversnel/master
Added improved NAT punch.
2016-03-15 12:08:04 +01:00
boonkerz
80fc1edc6c Fix Compile Error 2016-03-01 21:28:05 +01:00
Frank Versnel
ee5e9fb809 Converted to Windows line endings. 2016-02-29 16:45:16 +01:00
Frank Versnel
32ed1a91e9 Fixed compile error.
Removed misplaced static keyword.
2016-02-29 16:42:31 +01:00
Michael Lidgren
6594a4a41f Unity serialization helpers by Frank Versnel 2016-02-29 16:19:19 +01:00
AgentFire
f6a4bcc5b3 Added bool ReadMessage(out NetIncomingMessage message)
Added `bool ReadMessage(out NetIncomingMessage message)` for simplifying cases like this:

NetIncomingMessage msg;
while ((msg = NetClient.ReadMessage()) != null) { }

**into this**:

NetIncomingMessage msg;
while (NetClient.ReadMessage(out msg)) { }
2016-02-28 11:54:19 +03:00
Michael Lidgren
2a6470bd61 Merge branch 'master' of https://github.com/lidgren/lidgren-network-gen3 2016-02-25 07:35:18 +01:00
Michael Lidgren
38c1c60311 Fix for __CONSTRAINED__ and __ANDROID__ 2016-02-25 07:34:39 +01:00
Frank Versnel
27b3d8e386 Added improved NAT punch.
Clients that request an introduction now first request a confirmation from
the server to make sure unconnected messages can be sent in both
directions before attempting to make a connection. Similarly the server
automatically sends a confirmation to the client to reduce the possiblity
that either one of the endpoints has issues with sending messages to the
other.
2016-02-15 16:58:06 +01:00
Michael Lidgren
c8e2b011e0 Unnecessary code removed 2016-02-05 11:44:46 +01:00
lidgren
f58745c99d Merge pull request #46 from hide1202/master
Removed goto statement in NetPeer.Internal.
2016-02-05 11:33:32 +01:00
Andrés Leone
22369d6fa9 Merge branch 'master' of https://github.com/lidgren/lidgren-network-gen3 2015-12-19 12:46:20 +01:00
lidgren
8c7b5fb775 Merge pull request #55 from AgentFire/patch-4
Added a 64-bit version of ReadRangedInteger.
2015-12-18 20:49:53 +01:00
Andrés Leone
208f129e3f Unity Support. Just compile with __CONSTRAINED__ and UNITY keyworkds and add a reference to UnityEngine.dll 2015-12-13 03:42:39 +01:00
Andrés Leone
6dac4d7457 Added byte to WriteAt 2015-12-13 03:10:25 +01:00
Andrés Leone
8edbf7c424 Fix Now messages sent from a server without clients are recycled 2015-12-10 03:03:57 +01:00
Michael Lidgren
1414e34291 Added missing NetUtility.BitsToHoldUInt64 2015-11-25 00:15:39 +01:00
AgentFire
13963ec875 Added a 64-bit version of ReadRangedInteger.
`public long ReadRangedInteger(long min, long max)` is now available for reads of LONG values.
2015-11-21 13:41:17 +03:00
AgentFire
7664490fcf Added Int-64 version of WriteRangedInteger
`WriteRangedInteger(long min, long max, long value)` is now available for ranged writings of Int-64 values.
2015-11-21 13:35:55 +03:00
AgentFire
dbf6331577 Update NetPeer.MessagePools.cs
Added a null check. Had been experiencing exception throws by the internal network thread due to null-reference in this method.
2015-10-24 13:35:17 +03:00
AgentFire
f9053998cd Update NetPeer.cs
Fixed an issue in the `WaitMessage(int)` when `MessageReceivedEvent` is signaled, yet `ReadMessage()` returns null.
2015-10-05 16:33:46 +03:00
lidgren
af0b32e93d Merge pull request #41 from Therzok/patch-1
Use UTF8 instead of ASCII decoding for heartbeats
2015-10-05 07:28:52 +02:00
hide1202
53f4383555 Remove goto statement in NetPeer.Internal. 2015-10-04 10:01:24 +09:00
Michael Lidgren
69618284a6 GetSetMethod instead of SetMethod 2015-09-27 10:55:09 +02:00
Michael Lidgren
6570c44fa0 Merge branch 'master' of https://github.com/lidgren/lidgren-network-gen3 2015-09-27 10:52:15 +02:00
Michael Lidgren
1c1fc902f3 misc fixes 2015-09-27 10:51:53 +02:00
Michael Lidgren
2f0477e6bf Now sets NeedFlushSendQueue whenever a stored message exists in any channel 2015-09-25 10:20:12 +02:00