Commit graph

548 commits

Author SHA1 Message Date
Ash Logan
f7b5d4f186 feat(test): Add "pcap replay" ability 2024-12-14 01:17:12 +11:00
Jonathan Barrow
a035545093
Merge pull request #70 from wolfendale/performance-tweaks 2024-07-07 13:55:06 -04:00
Michael Wolfendale
feee2dd599
fix: allocate buffers for incoming packets 2024-07-07 16:36:34 +01:00
Michael Wolfendale
4fab7a2c86
fix: fix kerberos key derivation 2024-07-07 16:36:34 +01:00
Jonathan Barrow
d633dca018
Merge pull request #69 from wolfendale/performance-tweaks 2024-07-05 12:55:28 -04:00
Michael Wolfendale
22d2698cef
chore: add comment to TimeoutManager
Co-authored-by: Daniel López Guimaraes <112760654+DaniElectra@users.noreply.github.com>
2024-07-05 17:48:47 +01:00
Michael Wolfendale
ad488be838
chore: update kerberos key derivation to reduce allocations 2024-07-05 17:39:29 +01:00
Michael Wolfendale
abfca9a10d
chore: remove unnecessary goroutines 2024-07-05 17:15:17 +01:00
Michael Wolfendale
c214a2a7a5
chore: reduce buffer allocations when receiving packets 2024-07-05 16:37:52 +01:00
Michael Wolfendale
4fefb05f86
chore: limit the scope of connection locking in TimeoutManager 2024-07-05 16:37:52 +01:00
Michael Wolfendale
348c37df5d
fix: removed double lock from reliable ping packet handling 2024-07-05 16:37:52 +01:00
Jonathan Barrow
293c20d6be
Merge pull request #68 from wolfendale/timeout-rework 2024-07-02 12:47:24 -04:00
Michael Wolfendale
0502cc64b1
chore: renamed GetRTO to RTO to match style rules 2024-07-02 17:31:42 +01:00
Michael Wolfendale
9997fb672a
chore: rename ResendScheduler TimeoutManager 2024-07-02 17:29:28 +01:00
Michael Wolfendale
0d8506dd52
chore: updated documentation 2024-07-02 17:28:31 +01:00
Michael Wolfendale
680abd3cb0
chore: update max silence time 2024-07-02 16:54:47 +01:00
Michael Wolfendale
18380590ab
feat: rework resending packets to be more accurate 2024-07-02 16:54:47 +01:00
Daniel López Guimaraes
2b6ea02749
Merge pull request #67 from wolfendale/master 2024-06-25 23:00:43 +02:00
Michael Wolfendale
83e5157350
feat: add delay to outgoing fragmented data packets 2024-06-25 21:58:40 +01:00
Daniel López Guimaraes
090cfb5568
Merge pull request #65 from wolfendale/connection-state-checks
Connection State Changes
2024-06-14 22:29:19 +02:00
Michael Wolfendale
de3610deaf
fix: added Purge method to PacketDispatchQueue 2024-06-12 23:03:41 +01:00
Michael Wolfendale
1258086480
fix: modify connection state checks 2024-06-11 12:49:10 +01:00
Daniel López Guimaraes
f7b8a549ba
Merge pull request #64 from wolfendale/revert-ack-changes 2024-06-06 22:51:36 +02:00
Michael Wolfendale
a638798255
fix: remove reliable check from ack packets 2024-06-06 21:24:17 +01:00
Daniel López Guimaraes
b0c937dbe4
Merge pull request #62 from wolfendale/fix-ping-ack 2024-06-03 23:25:55 +02:00
Michael Wolfendale
ae41e77566
fix: prevented ping packets from acknowledging reliable packets 2024-06-02 12:07:52 +01:00
Daniel López Guimaraes
4f59501d31
Merge pull request #59 from wolfendale/packet-dispatch-queue 2024-05-27 23:05:08 +02:00
Michael Wolfendale
a597a37d41
chore: update godoc comments 2024-05-27 21:59:51 +01:00
Michael Wolfendale
f66fae8827
chore: remove Purge from PacketDispatchQueue as it is unneeded 2024-05-27 21:59:51 +01:00
Michael Wolfendale
07dda5708e
chore: remove logic in SlidingWindow for incoming packets 2024-05-27 21:59:51 +01:00
Michael Wolfendale
75c402b7ee
feat: use PacketDispatchQueue in PRUDPEndpoint 2024-05-27 21:59:51 +01:00
Michael Wolfendale
24d542506c
feat: add PacketDispatchQueue 2024-05-27 20:39:28 +01:00
Jonathan Barrow
26c9159397
Merge pull request #57 from wolfendale/connectivity-issues 2024-05-25 17:47:56 -04:00
Michael Wolfendale
363cc7b5bf
fix: prevent multi-fragment messages being lost 2024-05-25 20:42:54 +01:00
Jonathan Barrow
8e0b1a2be4
Merge pull request #51 from wolfendale/sliding-window-lock 2024-05-22 18:24:56 -04:00
Daniel López Guimaraes
39b2b55f08
fix: Tidy go modules 2024-05-19 18:41:43 +01:00
Daniel López Guimaraes
d23ec239ba
chore: Update go modules 2024-05-19 18:40:12 +01:00
Michael Wolfendale
4315467d6a
fix: fixed race condition in SlidingWindow 2024-05-18 09:08:07 +01:00
Jonathan Barrow
5f38bf34bf
Merge pull request #46 from PabloMK7/disconnectbyid 2024-04-19 13:05:05 -04:00
PabloMK7
ba656ff75b Rename callback to predicate 2024-04-19 19:03:37 +02:00
PabloMK7
10235684fb Fix typo 2024-04-18 18:21:28 +02:00
Daniel López Guimaraes
e2d333d597
Merge pull request #44 from DaniElectra/thread-scheduler 2024-04-18 17:12:30 +02:00
PabloMK7
90d81f6eb9 Implement and use deleteConnectionByID 2024-04-18 14:51:01 +02:00
Daniel López Guimaraes
eb3f1be3ae
resend_scheduler: Restructure finished check 2024-04-13 20:43:48 +01:00
Daniel López Guimaraes
edb4f2fc7a
resend_scheduler: Fix memory leaks
When a packet gets acknowledged, the goroutine timer doesn't return, and
instead waits forever for the timer that has already been stopped.
Return if the packet has been acknowledged of if the connection has
timed out to avoid wasting resources.
2024-04-13 16:50:16 +01:00
Daniel López Guimaraes
509b274086
station-url: Set flags when calling FromString 2024-04-10 19:38:29 +01:00
Daniel López Guimaraes
d5df60ef58
chore: Update module version to v2 2024-04-07 23:40:51 +01:00
Daniel López Guimaraes
cde307e583
Merge pull request #42 from PretendoNetwork/rewrite 2024-04-08 00:19:36 +02:00
Jonathan Barrow
dff47f8748
prudp: remove unused ReliablePacketSubstreamManager 2024-04-02 18:02:43 -04:00
Jonathan Barrow
58526f8a1a
prudp: fix StationURL.PlatformType comment 2024-04-01 22:00:02 -04:00