abcdefg30
c664af4fe2
Seal the Server.Connection class
...
Solves CA1816
2022-10-31 12:19:34 +01:00
penev92
216029dc27
Fix a crash with BlockingCollection in Connection
...
The BlockingCollection would have `IsAddingCompleted` to true, but `IsComplete` to false, slipping through the cracks and causing an InvalidOperationException ("The collection has been marked as complete with regards to additions.") when trying to add to it.
We now add a check on `(Try)SendData` to only try to add if we can. The collection is still viable for reading until empty/`IsComplete`.
2022-09-04 13:04:17 +03:00
abcdefg30
6a31b1f9f3
Update the copyright header year
2022-05-28 00:35:10 -05:00
Matthias Mailänder
0260884369
Added translation support for server orders.
2022-04-03 19:23:26 +02:00
Paul Chote
defaf92752
Send order queue length in ping responses.
2021-10-02 21:03:00 +02:00
Paul Chote
8588af1001
Disable chat for the first 5s (configurable) after joining a server.
2021-09-23 12:52:20 +02:00
Paul Chote
df798fb620
Overhaul client latency calculations.
...
The ping/pong orders are replaced with a dedicated
(and much smaller) Ping packet that is handled
directly in the client and server Connection wrappers.
This allows clients to respond when the orders are
processed, instead of queuing the pong order to be
sent in the next frame (which added an extra 120ms
of unwanted latency).
The ping frequency has been raised to 1Hz, and pings
are now routed through the server events queue in
preparation for the future dynamic latency system.
The raw ping numbers are no longer sent to clients,
the server instead evaluates a single ConnectionQuality
value that in the future may be based on more than
just the ping times.
2021-09-21 15:12:36 +02:00
Paul Chote
67face8cf0
Rename connection packet handling.
2021-09-21 15:12:36 +02:00
Paul Chote
54c08748e0
Overhaul player disconnect notifications.
2021-09-12 22:53:50 +02:00
Andre Mohren
6810469634
Updated copyright years.
2021-06-29 18:33:21 -05:00
Paul Chote
2a26ddc622
Replace server Select loop with individual client threads.
...
This guarantees that any unexpected blocking calls due to network
issues cannot stall the main server thread.
2021-05-30 14:37:25 +02:00
Paul Chote
6535411744
Move SendData to Connection.
2021-05-30 14:37:25 +02:00
Paul Chote
7c02b4d264
Add Connection.EndPoint property.
2021-05-30 14:37:25 +02:00
Paul Chote
7e79e69eae
Remove public mutable state from Connection.
2021-05-30 14:37:25 +02:00
teinarss
4a1e4f3e16
Use expression body syntax
2021-03-07 13:00:52 +00:00
abcdefg30
23b3c237b7
Update the year numbers in all license headers to 2020
2020-01-05 17:00:34 +00:00
Paul Chote
c253aaeb9d
Replace for(;;) with while (true).
2019-06-08 18:46:03 +02:00
Paul Chote
353db73381
Fix a collection of minor style violations.
...
This enables several new StyleCopAnalyzer rules to
be enabled immediately during migration.
2019-05-09 20:40:08 +02:00
abcdefg30
cadbd0d9ab
Change the year number in all cs headers from 2018 to 2019
2019-01-26 23:15:21 +01:00
Paul Chote
c74159e549
Add player authentication backend.
2018-07-29 00:30:17 +02:00
Peter Antal
9ce0bcb0b7
Mop up active Stylecop nits.
...
Style consistency cleanup.
2018-03-03 11:45:35 +00:00
Arular101
8a60918841
Update copyright notice year to 2018
2018-01-17 00:47:34 +01:00
Paul Chote
4c64a37e1d
Reject invalid orders from unvalidated clients.
2017-12-23 21:48:59 +01:00
Paul Chote
07c9c9ee8c
Only update MostRecentFrame if the frame is the most recent.
...
This fixes it being reset to 0 after an immediate order
and not being set before dispatching (which may use it).
2017-02-04 16:35:51 +00:00
Taryn Hill
43317e0f5d
Update copyright notice year to 2017
2016-12-31 23:46:13 -06:00
RoosterDragon
2ffea5db54
Change Game.RunTime to a long to prevent overflow.
2016-09-20 19:06:10 +01:00
Paul Chote
e71225496b
Clarify GPL version.
2016-02-21 16:30:48 +00:00
Paul Chote
b396965fd9
Update licence header year.
2016-02-21 16:27:31 +00:00
RoosterDragon
bfe1804bf6
Fix some spellings.
2015-11-27 16:19:59 +00:00
abcdefg30
8ca61aa917
Updated all year numbers
2015-01-09 21:18:05 +01:00
Matthias Mailänder
44cd174a8d
StyleCop clean OpenRA.Game
2015-01-03 19:00:48 +01:00
Hellhake
5a97a4b63b
Fix StyleCop warnings in OpenRA.Game
2015-01-02 12:11:01 +01:00
huwpascoe
d150ea1721
Fix server freeze on client absence.
2014-09-28 16:27:40 +01:00
Alexander Fast
070d00c678
Fixes year numbers in license text in file headers.
2014-08-21 11:27:52 +02:00
ScottNZ
00ec1ca87a
Remove unused usings
2013-11-12 19:39:33 +13:00
Paul Chote
57a27eb948
Restore packet size restriction with 128k limit.
2013-07-14 17:00:44 +12:00
Paul Chote
567b1967cf
Revert "restrict packet size to 4K in server"
...
This reverts commit edb08d6fec .
2013-07-13 21:03:44 +12:00
Chris Forbes
edb08d6fec
restrict packet size to 4K in server
...
- Sending a negative length no longer crashes the server
- Sending very large lengths can't force us to buffer stupid amounts of data
The offending client just gets kicked if they do this.
2013-07-08 14:58:07 +12:00
Matthias Mailänder
8ddc840370
fix some plenks
...
no logic changes
2013-06-22 15:17:10 +02:00
Matthias Mailänder
dab3d99890
write another socket error catch into server.log
2013-06-22 15:16:32 +02:00
Paul Chote
9f4b323287
Remove ICMP based pinger
2013-04-23 21:35:57 +12:00
Matthias Mailänder
7f835cf438
display ping when player joins lobby, closes #2124
2013-04-18 16:18:17 +02:00
James Dunne
8eb4782a49
Fixed socket code constantly throwing exceptions about non-blocking.
2012-06-21 09:29:02 +12:00
Chris Forbes
55036cd58c
fix trailing whitespace everywhere
2011-09-26 08:40:39 +13:00
Paul Chote
094907c1a9
Update copyright header. Normalize line endings to LF.
2011-02-13 10:38:57 +13:00
Chris Forbes
54cf2e7993
add kick command to LobbyCommands
2010-12-24 12:31:36 +13:00
Bob
6cf9939ab3
remove staticness on Server
2010-11-14 21:26:50 +13:00
Paul Chote
a98d20ea72
Start hacking on a server traits model
2010-11-10 10:30:25 +13:00
Paul Chote
047a09bbbd
Excise previous server extensions code
2010-11-10 10:30:24 +13:00
geckosoft
298314626e
Added: Dedicated server support
...
Added: The ability to not render anything when using the client as a dedicated server
Added: The basic server extension (NullServerExtension)
Exposed: Made some fields public, so that the server extension can access it
2010-11-01 17:55:31 +13:00