Commit graph

39 commits

Author SHA1 Message Date
turleypol
695096213b print error also to console and not only into pol.log 2019-10-11 19:56:00 +02:00
Fernando Rozenblit
9ed6524e03 Changed socket error from an exception to only log + disconnect client 2019-10-11 19:32:05 +02:00
Fernando Rozenblit
7157c92f56 Improved connection handling:
- Linux isn't limited to 1024 connections anymore
 - Windows may have some slight performance boost

Windows XP support had to be dropped. Let us know if you still used it.
2019-04-26 20:24:30 +02:00
Fernando Rozenblit
1d256c6886 Removed one use of inet_ntoa, need to remove the rest later. There may be compatibility issues with older windows. 2019-03-08 00:12:47 +01:00
Fernando Rozenblit
ef3707affb Reorganized singlepoller code 2019-03-04 22:27:06 +01:00
Fernando Rozenblit
bc79dc046e Moved basic network files to clib 2019-03-04 21:41:27 +01:00
turleypol
d2034347e7 removed more dead singlethread functions 2019-02-22 21:02:55 +01:00
Fernando Rozenblit
f76829b206 Started refactoring the way the client thread polls sockets 2019-02-22 00:33:51 +01:00
Fernando Rozenblit
8d0909c617 Quick workaround to avoid crashing POL when too many connections are active at the same time. This will work as a soft limit of about 1000 clients on Linux until we change it to use poll() instead of select(). 2019-02-20 17:25:08 +01:00
turleypol
ceefed49ef connection log lines now not only print total number of clients but
also number of clients in login state if singlethreadlogin is active.
container used for login state is now also part of memoryusage.
2019-02-17 12:29:50 +01:00
turleypol
b541f64c6f more network specific code moved 2018-12-30 21:58:07 +01:00
turleypol
9cfb4ec5a5 moved pkt headers into network folder 2018-12-30 21:35:54 +01:00
turleypol
1f53191218 fixed critical bug in the internal clock system which prevents uptimes greater 20 days without
undefined behaviour.
Changed ReadMilliSecondClock() to return a double.
2018-10-22 20:29:55 +02:00
esdete
b9a31d3560 clang formatting 2018-07-31 16:16:19 +02:00
esdete
dc2d29b433 NULL to nullptr 2018-07-31 14:30:29 +02:00
Fernando Rozenblit
02b966d64d Refactoring to make adding entered/leftarea events to items easier 2018-06-17 17:08:00 +02:00
Gabriele Tozzi
b72f725e02 Whitespace fixes 2018-04-03 04:13:03 +02:00
turleypol
dbb25bdb62
Include and buildsystem cleanup (#45)
Include cleanup
Reworked buildsystem (Linux only)
Removed dynamic libs, Linux now again uses static linking (like windows)
2018-01-29 21:55:48 +01:00
turleypol
798eda5b63 Cleanup of header includes. 2018-01-01 21:52:14 +01:00
Fernando Rozenblit
772162d0c9 3rd time is the charm? 2017-06-10 16:09:24 +02:00
Fernando Rozenblit
c0da4e9e10 Added missing passert includes ;) 2017-06-10 15:55:50 +02:00
Fernando Rozenblit
7e7960635f Added more checks to avoid possible overflow in FD_SET 2017-06-10 15:40:08 +02:00
turley
dfccaa0ae8 avoid some copies 2016-12-15 16:59:58 +01:00
turley
a983d25e4e removed bool members and replaced them with flags.
Further decrease memory foodprint.
2016-12-07 23:34:16 +01:00
turley
f59ae94545 removed senseless function
corrected comparison
2016-03-27 00:22:44 +01:00
frozenblit
6e9de4f7e4 Fixed crashes when handling very big packets 2016-03-25 21:59:55 +01:00
frozenblit
d86cbee187 Fix bug where clients would be stuck at "Verifying account..." 2016-03-04 00:37:43 +01:00
frozenblit
324a877626 Improved ref_ptr and weak_ptr, clients are now deleted by the message queue 2016-02-28 03:51:16 +01:00
turley
d2afa82969 changed clienttransmit thread to hold a weakptr,
in addition only this thread deletes clients. should fix all
dataraces in this area.
2016-02-25 18:29:59 +01:00
turley
189cad3479 Formating everything
Authors are not forced to use the clang-format setting, but should
atleast be inspired by the style.
The only thing which is now not allowed are tabs for ident/alignment!
2016-02-19 19:26:35 +01:00
Gabriele Tozzi
ff64e3b2b4 Minor: forcing SpinLock to be used only via SpinLockGuard 2016-02-03 06:08:26 +01:00
Gabriele Tozzi
17c45a8fd2 New Client object properties last_packet_at and last_activity_at 2015-11-28 11:12:52 +01:00
frozenblit
ab592b0bf6 Instead of .c_str(), the log will take a copy of the formatter string 2015-05-16 16:00:26 +02:00
turley
b77a13073c corrected several data races 2015-03-14 11:45:14 +01:00
turley
b191039ffd protected pktlog identifier by spinlock, fixes racecondition 2015-02-14 12:56:19 +01:00
turley
79dff37246 Splitted gamestate external. 2015-01-02 14:46:44 +01:00
turley
88ec380941 Moved globals into separate directory. 2014-12-30 15:20:59 +01:00
turley
2737393f2a Tried to put all global vars into centralized structures.
Currently plib/systemstate, pol/uvars, pol/ucfg, pol/multi/multidef

Next step should be to split them based on usage, since its currently a bit of include hell...
2014-12-30 14:14:41 +01:00
frozenblit
2681b5f29a Moving the client thread from pol.cpp to own file 2014-11-15 00:12:04 +01:00