Skip to content

Releases: xtaci/kcptun

v20250730

30 Jul 06:07
Compare
Choose a tag to compare

using crypto/subtle.

$ go version
go version go1.24.5 linux/amd64

$ date
Wed Jul 30 01:53:20 PM CST 2025

$ ./build-release.sh
Setting GO111MODULE to on
20963a5520f5ffe61e133a94d2a2681eec246816  kcptun-linux-loong64-20250730.tar.gz
8d2a52c464fb5bac44aa02b9497cf7d7bee67d67  kcptun-linux-amd64-20250730.tar.gz
2500d5b411cb9579f225cc302465795a89be207d  kcptun-darwin-amd64-20250730.tar.gz
6c43847d6b4b6a58ebb1a32fbae61a481401ca81  kcptun-windows-amd64-20250730.tar.gz
6a9176a20987bd9b3272f6ae6bc534f51b988322  kcptun-freebsd-amd64-20250730.tar.gz
9f306131331063e447096b275a726bdbdc053679  kcptun-linux-386-20250730.tar.gz
44be25dcb274846012162a5f4eda4b0111754a6f  kcptun-windows-386-20250730.tar.gz
dbf73e1191417cc81c6657948ead5730a2272982  kcptun-linux-arm5-20250730.tar.gz
a36bca1cec90f2b734b47b2670b37d38f6cd7619  kcptun-linux-arm6-20250730.tar.gz
309002d3cb301aa1106128bc0870388f3d535c41  kcptun-linux-arm7-20250730.tar.gz
600a523b842e3ef9c6dabeeec12515455fe710aa  kcptun-linux-arm64-20250730.tar.gz
6c0c8420a3171d815b6b4796fb0a3b6e562a223f  kcptun-darwin-arm64-20250730.tar.gz
04a4428d971098baea8c922160a9f2a71947ad3a  kcptun-windows-arm64-20250730.tar.gz
35ea22aed1e05894f977ba4370e120667104e985  kcptun-linux-mipsle-20250730.tar.gz
8cbe0bb5dddfefde3b34377c73d81968f75105be  kcptun-linux-mips-20250730.tar.gz

What's Changed

Full Changelog: v20250612...v20250730

v20250612

12 Jun 03:12
Compare
Choose a tag to compare

Use ringbuffer and segment heap to optimize kcp packet flowing: xtaci/kcp-go@v5.6.21...v5.6.22
(Reduced CPU cost)

$ go version
go version go1.24.4 linux/amd64

$ date
Thu Jun 12 11:02:48 AM CST 2025
Setting GO111MODULE to on
a2aed5cc2367fc973d16acec90748cd6da27a20f  kcptun-linux-loong64-20250612.tar.gz
70699fc9ea308fb0464ead1e74622ccf06d4d413  kcptun-linux-amd64-20250612.tar.gz
363db98ab9078994642ad7972d4b8d1a70e78a56  kcptun-darwin-amd64-20250612.tar.gz
6a4c5827cb1c0de3c152ba25d139755438761694  kcptun-windows-amd64-20250612.tar.gz
eb750d32feeffa6423ba76ce80a6d80118f0f53e  kcptun-freebsd-amd64-20250612.tar.gz
e528f236f070486a5338c064e96057b0b7c50bbe  kcptun-linux-386-20250612.tar.gz
999408bdd1e1451d3c62dcca305109017feb3637  kcptun-windows-386-20250612.tar.gz
7c426286b0d7b7c095ac134dfcdfd0c16f35b22b  kcptun-linux-arm5-20250612.tar.gz
cb499e8510904319914dccaf131228c02afec5fc  kcptun-linux-arm6-20250612.tar.gz
9e1c92cbf212c9f34362405b7f9db985fc801669  kcptun-linux-arm7-20250612.tar.gz
b2dcd297474fc1aa1fd282292bfe5209c13f64dc  kcptun-linux-arm64-20250612.tar.gz
b13f31d8d9088f5a63c52e135a9e5dda9c21854e  kcptun-darwin-arm64-20250612.tar.gz
e54bb1c96330ff85e26a0cefedc7fac608111d4b  kcptun-windows-arm64-20250612.tar.gz
e8fb5a2a6ebfb9ea8d1644738ee880344a6d6152  kcptun-linux-mipsle-20250612.tar.gz
e821b94125370f6ebed58c60d833e91304254c05  kcptun-linux-mips-20250612.tar.gz

What's Changed

Full Changelog: v20250427...v20250612

v20250427

27 Apr 07:40
Compare
Choose a tag to compare

Rebuild with go1.24 and fixed the issue of http security(only if pprof is enabled) in https://go.dev/doc/devel/release#go1.24.minor

$ go version
go version go1.24.2 linux/amd64

$ date
Sun Apr 27 15:30:52 +08 2025
Setting GO111MODULE to on
4e65bccc0fc0ef2a848c2bff90dd8a554083ba02  kcptun-linux-loong64-20250427.tar.gz
f6403f783dd0e52559f6e4b6b139288de5fd2b7d  kcptun-linux-amd64-20250427.tar.gz
9a0a8f3fd5f1b4d8f7c40e56f2ce57070bda4a1c  kcptun-darwin-amd64-20250427.tar.gz
9d5575fd6c5d42801bd877f99d0140b4b6557394  kcptun-windows-amd64-20250427.tar.gz
1f05078828eebf244ca3d766266cb1a239ff842b  kcptun-freebsd-amd64-20250427.tar.gz
61ba189d5707eff70d85405a5b7aafb40d0b9fcc  kcptun-linux-386-20250427.tar.gz
e19d13879747851aa50224f5b2248e0f99e5e6f4  kcptun-windows-386-20250427.tar.gz
07cdafb6ab18b8c8b10d584e41ca5dc7b2368d4e  kcptun-linux-arm5-20250427.tar.gz
9d7191607ca56a0e2913dec94f892f61793b9946  kcptun-linux-arm6-20250427.tar.gz
dc6c16882e35201c09a3ea403c2a65ee69f2517a  kcptun-linux-arm7-20250427.tar.gz
2a5d4ce6dc503b760bedfff4a87449dc4655f926  kcptun-linux-arm64-20250427.tar.gz
8923024700ddc6d6eb78e1f6f70d182273c8cd45  kcptun-darwin-arm64-20250427.tar.gz
cda0f689486efe1b1ce3ea7932d99d98b3a4e9b9  kcptun-windows-arm64-20250427.tar.gz
9cf856f73a81765165609d2abb70778e38c1625f  kcptun-linux-mipsle-20250427.tar.gz
9f511992d1306a04ca91c247fbabcd4748bd9041  kcptun-linux-mips-20250427.tar.gz

What's Changed

Full Changelog: v20241227...v20250427

v20241227

27 Dec 14:37
Compare
Choose a tag to compare

Fix smux nil pointer exception: #977

$ go version
go version go1.23.4 linux/amd64

$ date
Fri Dec 27 10:36:51 PM CST 2024
Setting GO111MODULE to on
e48bffccced2bb009a58b2d00b33ec5648ae333b  kcptun-linux-loong64-20241227.tar.gz
1b9fca060339be160dd7b71cbf0f38ffbec95602  kcptun-linux-amd64-20241227.tar.gz
3e7a4343439cef1a9839a74d2c227d566259b829  kcptun-darwin-amd64-20241227.tar.gz
17e740c0e51076ab1a0ccdba92013c5a7a0efa86  kcptun-windows-amd64-20241227.tar.gz
2ad986286956e9e19a906d038a6ce9e95951c84e  kcptun-freebsd-amd64-20241227.tar.gz
f773e02bfab7528d485714b2585bf56ca9b452f4  kcptun-linux-386-20241227.tar.gz
0b55f11a737e584fe501f305998ff95392e3199b  kcptun-windows-386-20241227.tar.gz
c9e2d0bab2914efe72fc6373a560a653af3e77a5  kcptun-linux-arm5-20241227.tar.gz
978357c0a51c6033b9413007ec6e9697de70ad4d  kcptun-linux-arm6-20241227.tar.gz
0591d66d5e7f39f40bac8d92552776f3b3438396  kcptun-linux-arm7-20241227.tar.gz
87201737959387f7f9fd57ba9a931d8a2f047a05  kcptun-linux-arm64-20241227.tar.gz
d851655aecd8b6283803595cb0d2a401c995c10f  kcptun-darwin-arm64-20241227.tar.gz
68230b30c42d963d7ea502350762fafd9d401806  kcptun-windows-arm64-20241227.tar.gz
98e0f8fc5a06b6f17580ff5804db675bd648e17b  kcptun-linux-mipsle-20241227.tar.gz
48f81380b744c0ffe6b2b5a8cbd55d0d8e0a4c34  kcptun-linux-mips-20241227.tar.gz

What's Changed

Full Changelog: v20241119...v20241227

v20241119

19 Nov 06:21
Compare
Choose a tag to compare

Fix #977

$ go version
go version go1.23.2 linux/amd64

$ date
Tue Nov 19 02:13:15 PM CST 2024
Setting GO111MODULE to on
7b3f829df563f3899df56cbecdd9eaccfbbe4bb6  kcptun-linux-loong64-20241119.tar.gz
4c24d43a9b0c52d13b86e43bb6e1ad0edaac1704  kcptun-linux-amd64-20241119.tar.gz
e90bd2cad6d97c186495b5c053087362fa48645b  kcptun-darwin-amd64-20241119.tar.gz
6a21a8aad314abf3c6774ded968edb09460044e9  kcptun-windows-amd64-20241119.tar.gz
a796cbcf82b559a690fe91d535465654ce06bb2f  kcptun-freebsd-amd64-20241119.tar.gz
f0956cf5347a2cbb7e83abd72e29f9745cfbe2f0  kcptun-linux-386-20241119.tar.gz
4e6b6d1d94d09310c07afa015e9f166a716315f8  kcptun-windows-386-20241119.tar.gz
0fe824576aefd2344d5549c18e04ecd5ec310201  kcptun-linux-arm5-20241119.tar.gz
7bf4977d86dbcfece9b38d05171a760ce44e963c  kcptun-linux-arm6-20241119.tar.gz
33bb3532f724d71d6ff33a661a401db875413c46  kcptun-linux-arm7-20241119.tar.gz
6a70cb1839a30d4079543f4df28dc14c4f3c7d5b  kcptun-linux-arm64-20241119.tar.gz
06fae814a910a9d89087b39eebb2cd962c126a8c  kcptun-darwin-arm64-20241119.tar.gz
58931cab0b16246c862f2dfa822081541fdcaca8  kcptun-windows-arm64-20241119.tar.gz
11d153608af23dacc90747df84b31fa3f5d870d6  kcptun-linux-mipsle-20241119.tar.gz
250e9becce47566a24abab9b85f3c976bee12f39  kcptun-linux-mips-20241119.tar.gz

What's Changed

  • Update README.md, fix typo(s) by @BobConanDev in #976

New Contributors

  • @BobConanDev made their first contribution in #976

Full Changelog: v20241031...v20241119

Recompiled

31 Oct 11:58
003bd44
Compare
Choose a tag to compare

What's Changed

Full Changelog: v20240919...v20241031

$ go version
go version go1.23.2 linux/amd64

$ date
Thu Oct 31 19:54:21 CST 2024
Setting GO111MODULE to on
e054db66c1343f57ebc71b8b3b1d118b8a7bd532  kcptun-linux-loong64-20241031.tar.gz
666ec4e25b0bbdc600950c8efed2d73c9933fa1a  kcptun-linux-amd64-20241031.tar.gz
209ffe5e65e97850e5c678174777b771c2ed90a2  kcptun-darwin-amd64-20241031.tar.gz
e391e4da9569524fee8a2749c35feab24934e941  kcptun-windows-amd64-20241031.tar.gz
07600292294f3bc4f4a20a88a7ea6b137ca4d87b  kcptun-freebsd-amd64-20241031.tar.gz
428642cf9fee5a28e99853f35411fbf58d3aadb8  kcptun-linux-386-20241031.tar.gz
28d822dece8c2dffa01c68220d4f9f7bf882bd3c  kcptun-windows-386-20241031.tar.gz
f051af3726f18288f5826c4526842797ba6a0f3a  kcptun-linux-arm5-20241031.tar.gz
7a7a2402af0186e1c1df3d47e17894625b7fa4bb  kcptun-linux-arm6-20241031.tar.gz
9caafa09513f918ee840611211a2c2e174c4e8b5  kcptun-linux-arm7-20241031.tar.gz
2612d6407c5fbfceb78418090f3f48511b6d8ab7  kcptun-linux-arm64-20241031.tar.gz
49959089ae608e6eef83307c130dee92bb93d4b7  kcptun-darwin-arm64-20241031.tar.gz
2b308341ee4274d3ed3fd8f2b68d01501c4059b6  kcptun-windows-arm64-20241031.tar.gz
bb72f6dfeae97ddaab3cca2fe7f134d252d7afc4  kcptun-linux-mipsle-20241031.tar.gz
57403db3776de7b4a44e49349c92ea0d6cc27ad9  kcptun-linux-mips-20241031.tar.gz

fix signal handler

19 Sep 10:39
Compare
Choose a tag to compare

What's New?

  1. Fixed signal handling in systemd: #969
  2. Special loong64οΌˆδΈ­ε›½ιΎ™θŠ―οΌ‰(updated 20241001) :
    kcptun-linux-loong64-20240919.tar.gz

Building information

$ go version
[kcptun-linux-loong64-20240919.tar.gz](https://github.com/user-attachments/files/17202697/kcptun-linux-loong64-20240919.tar.gz)

go version go1.23.1 linux/amd64

$ date
Thu Sep 19 18:36:24 CST 2024

$ ./build-release.sh
Setting GO111MODULE to on
a8399090fac384754517652c83ead8b4522bf128  kcptun-linux-amd64-20240919.tar.gz
ed8cc19921fd4700d1494f53c991c25f47620ecf  kcptun-darwin-amd64-20240919.tar.gz
c0035c83d85d13aa700723823a0fd194cd4c3852  kcptun-windows-amd64-20240919.tar.gz
95a7f42d3ef686d3013a7099ceaf0dbeb579ce67  kcptun-freebsd-amd64-20240919.tar.gz
d5cf1623e1750cc21441df878d84bfe024893185  kcptun-linux-386-20240919.tar.gz
448a6e4e588afd1f1c1a256adfb590c5aa533105  kcptun-windows-386-20240919.tar.gz
c26962b4ab962e3d15ea0f2382284d005c962d72  kcptun-linux-arm5-20240919.tar.gz
064b0c4c56c8721f174883a0e8479f3a9660ee44  kcptun-linux-arm6-20240919.tar.gz
a0be1028abf3ff578f15b09bc32c8989f1290de0  kcptun-linux-arm7-20240919.tar.gz
eb4e21cb0cdc19fcfa7412393d22bd23047c64d6  kcptun-linux-arm64-20240919.tar.gz
3803c499486241f24ac3cc2a91f5cbadd86076a6  kcptun-darwin-arm64-20240919.tar.gz
f6cf4032d3d445794491a55ea9be7292bab5bd8b  kcptun-windows-arm64-20240919.tar.gz
c3d26504b916acb4e87da78702ed82fcba42b441  kcptun-linux-mipsle-20240919.tar.gz
92177273155e611fd9a3196b5391e513533afe80  kcptun-linux-mips-20240919.tar.gz
(ιΎ™θŠ―οΌ‰
3786cd29e5ed943acc0823af38e8aeb820af1e3f332f556d9d9ccfe5bb1abbcc  build/kcptun-linux-loong64-20240919.tar.gz

What's Changed

Full Changelog: v20240906...v24240919

better FIN

06 Sep 06:27
Compare
Choose a tag to compare

What's New?

  1. make 'FIN' cmd as normal data instead of control message in xtaci/smux@f4519fc , if some TCP sender send and close, smux will terminate prior than receiving data stream.

Building information

$ go version
go version go1.23.1 freebsd/amd64

$ date
Fri Sep  6 14:22:19 CST 2024

$ ./build-release.sh
Setting GO111MODULE to on
eb0c384817fa01587de5965d5c15dea995f349bf  kcptun-linux-amd64-20240906.tar.gz
5e3c280c9773318ffd05262cb7350af08dd54b72  kcptun-darwin-amd64-20240906.tar.gz
54b61bb6481061796569c00484d3511d401ff355  kcptun-windows-amd64-20240906.tar.gz
ae8ae58c6ee51e78957b3bf6a2161109dea23e02  kcptun-freebsd-amd64-20240906.tar.gz
e1d0dbc69742a3878979383ad77f00bad8694c98  kcptun-linux-386-20240906.tar.gz
51d71f0322f1bb88a1825a1f290282d16878534e  kcptun-windows-386-20240906.tar.gz
7f5b0cf4ba676d8fee5b130fd9beeda19c18baa7  kcptun-linux-arm5-20240906.tar.gz
3192dd9fba51b8ad829c0260920af2efc15c096b  kcptun-linux-arm6-20240906.tar.gz
7c1d375a66d8dfb0eabc3abd127531bd8ff11882  kcptun-linux-arm7-20240906.tar.gz
d7a037839bca38834c56d893a7bb6971562cc42b  kcptun-linux-arm64-20240906.tar.gz
b673b99ff51182f7fd776a532c8d65d56bf496ff  kcptun-darwin-arm64-20240906.tar.gz
7202a7ab539a882ca900de2315fb88d059aeac34  kcptun-windows-arm64-20240906.tar.gz
3588e3df47b3742ab761ba03d2c78f9632bb01d4  kcptun-linux-mipsle-20240906.tar.gz
bcbd6f009609da727b7c395a980251c81f62517a  kcptun-linux-mips-20240906.tar.gz

Full Changelog: v20240831...v20240906

Parameterized 'closewait'

31 Aug 04:55
Compare
Choose a tag to compare

What's New?

  1. parameterized 'closeWait' #967

client:

   --closewait value                the seconds to wait before tearing down a connection (default: 0)

server:

   --closewait value                the seconds to wait before tearing down a connection (default: 30)

Building information

$ go version
go version go1.23.0 linux/amd64

$ date
Sat Aug 31 12:52:47 CST 2024

$ ./build-release.sh
Setting GO111MODULE to on
9b8ef102adafbf09bd06fa7a3249583860b26ad7  kcptun-linux-amd64-20240831.tar.gz
3fe250ea94cf759bd101681dca8d2ff2d5447afb  kcptun-darwin-amd64-20240831.tar.gz
4a1a08887092f2d5a195f906a64f44fd23bcb366  kcptun-windows-amd64-20240831.tar.gz
04223caf6ca932a1837ec5ce8ff568e879c6462f  kcptun-freebsd-amd64-20240831.tar.gz
171116d4228a5d77ae292f72becfe9630ee287a2  kcptun-linux-386-20240831.tar.gz
cdca188bb2a3d68c5e87711b113a50078fa47c3e  kcptun-windows-386-20240831.tar.gz
0c61febcb057f051b1b315cca6bf9c24fdcbd976  kcptun-linux-arm5-20240831.tar.gz
df3cd407f21c4b269d80fc8150b8a04b499bd43b  kcptun-linux-arm6-20240831.tar.gz
19675b34ee3812865ce2fc1bdd3a023c32e0a810  kcptun-linux-arm7-20240831.tar.gz
3ec763f8644993fcf0dec70886a5d3c5d766b74d  kcptun-linux-arm64-20240831.tar.gz
2c239170c3a862a555c35b5f34a5083a3f10eac7  kcptun-darwin-arm64-20240831.tar.gz
8b42ce3d5ae64f0909a052652f507a19899b5e7e  kcptun-windows-arm64-20240831.tar.gz
3835f35f7d78dcaa0bce49dff858fbc79c5d38f2  kcptun-linux-mipsle-20240831.tar.gz
f84530d21ff3fb1bd09156125925a1e62d7046da  kcptun-linux-mips-20240831.tar.gz

Full Changelog: v20240828...v20240831

Transport&Security Enhancement!

28 Aug 07:53
Compare
Choose a tag to compare

🌻🌻IMPORTANT NOTICE: THIS VERSION IS THE LATEST STABLE RELEASE DURING SUMMER VACATION 2024 .🌻🌻
🌻🌻AFTER THIS, I'LL BE BUSIER
🌻🌻

What's New?

  1. Enhanced autotune stability.
  2. Fixed an FEC boundary issue in timely-non-continuous packet.(Link is more stable)
  3. Support for Quantum Permutation Pad for quantum-resistent communication, based on the implementation in https://github.com/xtaci/qpp .
   --QPP                            enable Quantum Permutation Pads(QPP)
   --QPPCount value                 the prime number of pads to use for QPP: The more pads you use, the more secure the encryption. Each pad requires 256 bytes. (default: 61)

Your could also specify

     "qpp":true,
     "qpp-count":61,

in your client and server side json file. These 2 parameters must be identical on both sides.
4. Added a closeWait(30 seconds) before terminating a connection pair, mitigating Firefox PR_END_OF_FILE_ERROR issue.
5. Fix socket-fd closing in '-tcp' mode, only available under linux, previous release may leak socket fds.
6. Build with well-organized codes.

Building information

$ go version
go version go1.23.0 freebsd/amd64

$ date
Wed Aug 28 14:07:08 CST 2024

$ ./build-release.sh
Setting GO111MODULE to on
30bfe2554a7de1404bc45810857f126ee4f3ae5f  kcptun-linux-amd64-20240828.tar.gz
39dc276530259a1d774d4001957568f5196e7252  kcptun-darwin-amd64-20240828.tar.gz
1750037cee5fb702c13d8e82c43dd8542ef844b2  kcptun-windows-amd64-20240828.tar.gz
25bdedf357fe88c11a53df18f0713b046fcde720  kcptun-freebsd-amd64-20240828.tar.gz
87336156b0ec18a3e03055efbd74758f7b6ae61c  kcptun-linux-386-20240828.tar.gz
8c73f9383800f3a0df5eca984f384463778d0cc8  kcptun-windows-386-20240828.tar.gz
45a094102aa2460141ee0a9ae7044194808b6203  kcptun-linux-arm5-20240828.tar.gz
e9189d2beefbe3e429b2ddb6a6bf18e7ea549319  kcptun-linux-arm6-20240828.tar.gz
911a6d0d52b925ee770b90e8647cf9ee7f4be4a5  kcptun-linux-arm7-20240828.tar.gz
e616ba81205444882a570251189d766409f88f9d  kcptun-linux-arm64-20240828.tar.gz
10335058862f8ea9a6ac513278ffe0f04dc0e940  kcptun-darwin-arm64-20240828.tar.gz
0c5b558ed5226a8a108a9f9a98bf52cf0de9b482  kcptun-windows-arm64-20240828.tar.gz
1a2a68079796118d677f1d23e6b217e3f5755de3  kcptun-linux-mipsle-20240828.tar.gz
a72acab6883e51615e319c4886a87e7ebd71843c  kcptun-linux-mips-20240828.tar.gz

What's Changed

New Contributors

Full Changelog: v20240107...v20240828