Commit Graph

227 Commits

Author SHA1 Message Date
Unknown W. Brackets dea9cac16c Core: Add range checks to some helpers and similar. 2023-01-09 16:56:18 -08:00
Unknown W. Brackets a7b7bf7826 Global: Set many read-only params as const.
This makes what they do and which args to use clearer, if nothing else.
2022-12-10 21:13:36 -08:00
lainon 3cdf72b68b Better readability and optimization insertion into container by replacing 'insert' -> 'emplace', 'push_back' -> 'emplace_back' 2022-09-30 12:35:28 +03:00
lainon c953bf7fc7 Fixed bug and memleaks 2022-09-30 12:32:49 +03:00
lainon b304551747 Code readability, vec reserve() and remove excess c_str() 2022-09-30 12:31:32 +03:00
Henrik Rydgård e6403d7157 Split GetPointer into two versions, to help with const correctness 2022-07-24 13:26:19 +02:00
ANR2ME ea6e5c8f74 Mask some part of public IP in the logs for security reason. 2022-06-23 00:41:41 +07:00
ANR2ME a10271dc1d Detects connection establishment to AdhocServer by combining select and getpeername to increase accuracy. 2022-05-18 06:18:16 +07:00
ANR2ME ff8b5d53f4 We might be missing this in the past. 2022-05-18 06:18:16 +07:00
ANR2ME 1aa56ec942 Added a note regarding SO_NOSIGPIPE 2022-05-18 01:14:01 +07:00
ANR2ME f3dd1d908b Avoid compilation warning 2022-05-18 01:13:49 +07:00
ANR2ME ee2a24b19a Avoid a possibility of fatal signal on non-Windows 2022-05-18 01:11:57 +07:00
ANR2ME 799c721fa6 Added a note regarding select on Linux. 2022-05-18 01:11:56 +07:00
Unknown W. Brackets 4ee9292d23 NetAdhoc: Fix warning. 2022-04-02 16:35:24 -07:00
ANR2ME 1a6c889906 Increase the timeout when the connection to the AdhocServer is already in progress, avoids cutting off the connection if it took longer than expected but almost completed. 2022-03-24 08:34:03 +07:00
ANR2ME d5152752d2 Added a function to get SO_ERROR on a socket. 2022-03-24 08:34:03 +07:00
ANR2ME 86315fed3d Updated getLocalIp function to detects local IP better. 2022-03-24 08:34:03 +07:00
ANR2ME 267757a5e4 Caches IP-specific Port Offset to avoid recalculating them. 2022-03-24 08:34:02 +07:00
ANR2ME 5e739f32b2 Use reference when possible to avoid copying. 2022-03-24 08:34:02 +07:00
ANR2ME 2b09f81ff8 Initialize some socket-related structs to avoid unexpected behavior. (May fix Unknown Source Port issue) 2022-03-24 08:34:02 +07:00
Unknown W. Brackets 2479d52202 Global: Reduce includes of common headers.
In many places, string, map, or Common.h were included but not needed.
2022-01-30 16:35:33 -08:00
ANR2ME 0755dc0bbd Updated notifyMatchingHandler comments 2022-01-20 03:00:23 +07:00
ANR2ME 3b8eb6b04e Added a note regarding FIONREAD behavior on different platforms. 2021-12-08 08:49:35 +07:00
ANR2ME 5b010afff3 oops need to typecast metasocket 2021-09-28 20:44:03 +07:00
ANR2ME 9a714249a6 Changing most frequently used global vars to atomic to avoid possible multi-threading issue on friendFinder thread which communicates with AdhocServer in background.
PS: There are more global vars being used here (too many actually), so we should find a better approach in the future (ie. using PSPThread instead).
2021-09-28 20:44:03 +07:00
ANR2ME 15d3e69c4c Fix possible crash issue 2021-09-23 12:22:57 +07:00
Henrik Rydgård b8ea95bec1 Merge pull request #14904 from ANR2ME/adhoc
[Adhoc] Do not resolve Pro Adhoc Server address when WLAN is turned off
2021-09-21 13:46:12 +02:00
ANR2ME 4e8a9fda63 Do not resolve Pro Adhoc Server address when WLAN is turned off 2021-09-21 17:12:01 +07:00
ANR2ME ee7383193b Fix race condition issue on AdhocMatching 2021-09-21 15:32:41 +07:00
ANR2ME 2bda9c1c84 Keep tracks of the sender/source port on GameMode for further communication, in case it was remapped by router or ISP for some reason. 2021-09-19 10:55:03 +07:00
Unknown W. Brackets c79bb6ba71 Net: Fix various chat threading hazards. 2021-09-14 18:08:17 -07:00
Unknown W. Brackets 9403947b67 UI: Decouple new chat display and tracking logic. 2021-09-14 18:08:16 -07:00
Unknown W. Brackets be0b0cd88d UI: Track chat log changes more clearly.
This also makes it easier to have multiple views or etc. reading from it.
We want data flowing a single direction, chat system -> UI.
2021-09-14 18:08:16 -07:00
iota97 4205ce7c42 Trim username on join as well 2021-07-26 21:11:21 +02:00
ANR2ME 7a06103cc6 Create GameMode's socket after Master and all Replicas have been created so we will know the largest buffer size. 2021-05-31 04:37:09 +07:00
Henrik Rydgård f4a6d291e1 Common: Capitalize setCurrentThreadName(). 2021-04-30 23:02:36 -07:00
ANR2ME 206ab4345e Attempts to reconnect to Adhoc Server only when Creating/Joining/Connecting to a group or Scanning for groups, instead of on 2 seconds interval. 2021-04-02 12:19:02 +07:00
ANR2ME e508885cc4 Show the socket error code when failed to connect to adhoc server 2021-04-02 12:18:59 +07:00
ANR2ME e3228ca1b5 Use a function to check for loopback address 2021-04-02 12:18:12 +07:00
M4xw 4cc322466a Switch: Workaround several missing toolchain defs. 2021-03-04 21:24:57 -08:00
ANR2ME 36a9fb7645 Replacing the deprecated gethostbyname function with getaddrinfo function to prevent getting deprecated warnings 2021-03-01 01:45:28 +07:00
ANR2ME 758fb12fc3 Making sure there are no warnings related to deprecated inet_ntoa function 2021-03-01 01:45:27 +07:00
ANR2ME cb61b34b53 Minor changes. 2021-02-21 20:05:50 +07:00
Unknown W. Brackets 9d22297a90 Windows: Use CommonWindows more consistently.
Also, make sure WinSock2.h is included beforehand where it's needed.
2021-02-14 10:30:10 -08:00
ANR2ME 0ce2c2c6e9 Windows recvfrom doesn't support MSG_TRUNC, so we're using dummy buffer with max size as alternative for peeking actual size of the next pending message. 2021-02-11 07:40:35 +07:00
ANR2ME 04434ea68e Fix possible race condition issue. 2021-02-05 21:54:00 +07:00
ANR2ME 79c30ee716 We don't really need to allocate a buffer when using MSG_TRUNC on recvfrom 2021-02-05 21:53:59 +07:00
ANR2ME 849fe4ade1 Updated PdpStat to prevent rcv_sb_cc from exceeding the buffer size arg (since we use larger buffer size to prevent micro stutters or disconnection issue due to too many dropped packets with small buffer size).
TODO: May need to improve it to be able to calculate the correct size if there are multiple datagram messages
2021-02-04 10:31:01 +07:00
ANR2ME d907906c74 Fix connection issue on Dynasty Warriors (Shin Sangoku Musou) games when playing with more than 2 players. 2021-01-30 15:20:24 +07:00
ANR2ME dbce1a4c1d Prevent access violation when running out of userMemory due to piling up AdhocMatching events. 2021-01-09 00:55:11 +07:00