190 Commits

Author SHA1 Message Date
Tixx
7a439bb5b9
Add mod hash caching and mod protection 2025-03-31 08:04:15 +02:00
Tixx
73e9595d14
Switch C-Style int cast to c++ style uint16 cast 2025-03-29 20:17:25 +01:00
Tixx
71b8a61c97
Add custom IP bind option 2025-03-15 20:45:48 +01:00
Tixx
00560f7646
Wait for the server to start before loading plugins or allowing connections 2025-02-15 21:47:17 +01:00
Tixx
a7eeda0569
Add size header to information packet 2025-01-12 16:55:38 +01:00
Tixx
26f1be0a51
Switch to curl 2025-01-11 22:18:50 +01:00
Tixx
d7f3bc8b9f
Debug log responses from auth and backend 2024-12-23 18:18:42 +01:00
Mathijs
9046b5a4d3 Fix build failure with Boost >= v1.87.0
Closes #401
2024-12-18 14:12:38 +01:00
Tixx
99a51808a0
Fix postPlayerAuth not running until after leaving 2024-11-25 00:33:10 +01:00
Tixx
1c07cf83b2
Fix postPlayerAuth and add reason value 2024-11-24 22:28:32 +01:00
Lion
9ad4f61209
Information packet (#382)
This PR adds an "I" packet which returns the server information. This
can be used by external programs and the launcher to get information
about a server without having to connect it to. It can be toggled in the
config and in lua.
2024-11-01 12:27:31 +01:00
Tixx
956d6f50e1 Add setting for the information packet 2024-10-14 00:39:12 +02:00
Tixx
6aeb2eb736 Add server identification packet 2024-10-14 00:39:12 +02:00
Lion Kortlepel
f40d4c1ddd
add 'P' packet on UDP
this can be used to check if UDP works :)
2024-10-13 22:13:05 +02:00
Lion
c39beb5b72
reuse minclientversion where possible
Co-authored-by: Tixx <83774803+WiserTixx@users.noreply.github.com>
2024-10-09 18:03:01 +02:00
Lion Kortlepel
7dd2d89ad9
clarify auth version reject message 2024-10-09 16:48:40 +02:00
Lion Kortlepel
3403c8acba
fix version check on auth 2024-10-09 16:44:38 +02:00
Lion
077bb6b1cd
Add player limit bypass to onPlayerAuth (#372)
With this PR, returning 2 in onPlayerAuth will allow the player to join
without checking if the server is full. This makes it easier for plugin
developers to allow for example their staff to join without having to
change the max player count.
2024-10-05 16:07:53 +02:00
Lion Kortlepel
88ca17236a
remove two-socket download 2024-09-29 01:15:48 +02:00
Lion Kortlepel
a4b62d013c
implement mod hashing + new download 2024-09-29 00:32:52 +02:00
Tixx
bb3c762d68 Add player limit bypass to onPlayerAuth 2024-09-28 14:52:04 +02:00
Lion Kortlepel
73f494041a
fix exception propagation on packet decompression 2024-09-19 16:59:17 +02:00
Lion
63b2a8e4a3
Add post event(s) (#364)
Adds `post*` events which are triggered after the respective `on*` event
has completed and the results have been sent.

They have the same arguments as the `on*` function, with the exception
that another argument is added in the beginning which contains whether
the `on*` variant was cancelled.
2024-09-19 01:37:17 +02:00
Lion Kortlepel
3068a0e5c4
add back car deletion 2024-09-18 16:46:11 +02:00
Lion Kortlepel
86b37e8ae1
move postPlayerAuth later again, after client insert 2024-09-18 16:26:26 +02:00
Lion Kortlepel
8f9db10474
move postPlayerAuth to after kick 2024-09-18 16:26:20 +02:00
Lion Kortlepel
afa5a04043
add postPlayerAuth 2024-09-18 16:26:16 +02:00
SaltySnail
9d67838f8f fix #225 2024-09-15 20:26:20 +02:00
Lion
ce5f2e666d
Download Refactoring (#356)
Limits download RAM usage (to zero) on Linux by use of `sendfile(2)`
2024-08-31 20:32:23 +02:00
SaltySnail
f5f6b8534d
Add IPv6 support (#349)
Adds IPv6 support.

FreeBSD users beware: From this point forward, you will have to set
`sysctl net.inet6.ip6.v6only=0` so that the BeamMP-Server continues to
work. The server also prints this information.
2024-08-20 20:35:48 +02:00
Lion Kortlepel
e1aaaf5e63
Merge branch 'fix-little-issues' into minor 2024-07-28 10:52:33 +02:00
Lion Kortlepel
49ed82bea1 add more info to debug print for freebsd ipv6 support 2024-07-16 17:30:45 +02:00
Lion Kortlepel
0d848fda7c add warning about IPV6_V6ONLY=false not working on FreeBSD 2024-07-16 17:25:29 +02:00
Lion Kortlepel
82a6d4af60
repeat sendfile() until all data is sent 2024-07-14 17:01:24 +02:00
Lion Kortlepel
8b753ab6ea
ignore SIGPIPE in sendfile() implementation of mod sending 2024-07-14 17:01:08 +02:00
Lion Kortlepel
b097acfd4a
use sendfile64 2024-07-14 16:17:39 +02:00
Lion Kortlepel
bd76e28ca6
use sendfile to send mods on linux 2024-07-14 15:33:26 +02:00
Lion Kortlepel
eaedeb5324
add IPv6 support 2024-07-12 15:45:50 +02:00
Lucca Jiménez Könings
29f4d0d286 run clang-format 2024-06-26 14:06:06 +02:00
Lucca Jiménez Könings
2451e08b01 update remaining sections of code after merge 2024-06-26 12:31:47 +02:00
Lucca Jiménez Könings
25739cb1bd Merge branch 'minor' into 158-bug-running-settings-help-returns-nothing 2024-06-26 11:43:38 +02:00
Lion Kortlepel
07a8d49046
fix tcp send also 2024-06-22 23:56:18 +02:00
Lion Kortlepel
bfb0675efa
send large packets over tcp 2024-06-22 23:51:01 +02:00
SaltySnail
e94cfd641d remove debug print 2024-06-10 23:16:45 +02:00
SaltySnail
91bc7dea79
Update src/TNetwork.cpp
Co-authored-by: Lion <development@kortlepel.com>
2024-06-10 23:12:23 +02:00
SaltySnail
5dab48af92 fix #247, add allow guests config setting. 2024-06-10 22:06:09 +02:00
sla-ppy
566f0b55f7 remove debug info 2024-05-28 14:53:19 +02:00
sla-ppy
58a7e39419 add more info to return to pkToUser endpoint 2024-05-28 14:15:41 +02:00
Lucca Jiménez Könings
8c15b87628
Refactor all references to settings to use new Settings type
Signed-off-by: Lucca Jiménez Könings <development@jimkoen.com>
2024-05-15 12:52:09 +02:00
Lucca Jiménez Könings
13e641b3a3
Remove interfering legacy code (http,password,etc)
Signed-off-by: Lucca Jiménez Könings <development@jimkoen.com>
2024-05-15 12:45:19 +02:00