Commit graph

324 commits

Author SHA1 Message Date
Little Cat
84866701b7 BACKENDS: CURL: Timeout if send/recv takes too long 2023-03-06 00:07:13 +01:00
Little Cat
1cf1f302ad BACKENDS: LIBCURL: URL Parsing. 2023-03-06 00:07:13 +01:00
Little Cat
b8ac9ed46e BACKENDS: ENET: Revert back to using "get_host_ip" 2023-03-06 00:07:13 +01:00
Little Cat
239f1f6760 BACKENDS: ENET: call both get_host and get_host_ip 2023-03-06 00:07:13 +01:00
Little Cat
13616c37ec BACKENDS: ENET: Fix casting. 2023-03-06 00:07:13 +01:00
Little Cat
200402852e BACKENDS: ENET: Replace get_host_ip to get_host.
This resolves issues when connecting to peers via domain names.
2023-03-06 00:07:13 +01:00
Little Cat
3e29d0bea4 BACKENDS: CURL: Fix compiling on Windows. 2023-03-06 00:07:13 +01:00
Little Cat
f42930ba66 BACKENDS: CURL: Ability to create raw sockets.
This can be used to create custom protocols with an SDL_net like
interface while being able to connect to SSL/TLS servers.
2023-03-06 00:07:13 +01:00
Little Cat
bd1872c2ab BACKENDS: ENET: Now compiles on Windows. 2023-03-06 00:07:13 +01:00
Little Cat
cef3054212 BACKENDS: ENET: Check and set additional defines. 2023-03-06 00:07:13 +01:00
Little Cat
c16244a23a BACKENDS: ENET: Compile stable 1.3.17 source. 2023-03-06 00:07:13 +01:00
Little Cat
9329f8c3d6 BACKENDS: ENET: Hosts can connect to peers.
Useful for connecting to a "rendezvous" server or some sort.
2023-03-06 00:07:13 +01:00
Little Cat
f9ec21c27a BACKENDS: ENET: Fix naming convention 2023-03-06 00:07:13 +01:00
Little Cat
06b69d3480 BACKENDS: ENET: Remove trailing whitespace. 2023-03-06 00:07:13 +01:00
Little Cat
1a50e10a83 BACKENDS: ENET: Now compiles and works on MSVC. 2023-03-06 00:07:13 +01:00
Little Cat
747b28504a BACKENDS: ENET: Use delayMillis for disconnection. 2023-03-06 00:07:13 +01:00
Little Cat
8a673b4a0c BACKENDS: ENET: Ability to disconnect peers. 2023-03-06 00:07:13 +01:00
Little Cat
5f5de8122b BACKENDS: ENET: Fix pointer formatting. 2023-03-06 00:07:13 +01:00
Little Cat
619daae936 BACKENDS: ENET: Code formatting. 2023-03-06 00:07:13 +01:00
Little Cat
6305d74464 BACKENDS: ENET: Host data send and retrieval. 2023-03-06 00:07:13 +01:00
Little Cat
64200c8643 BACKENDS: ENET: Raw UDP socket creation. 2023-03-06 00:07:13 +01:00
Little Cat
7bc36d05fc BACKENDS: ENET: Client host creation. 2023-03-06 00:07:13 +01:00
Little Cat
129b56cd3e BACKENDS: ENET: Host creation. 2023-03-06 00:07:13 +01:00
Little Cat
68425432ab BACKENDS: ENET: Preliminary ENet backend. 2023-03-06 00:07:13 +01:00
Le Philousophe
98a0aab3f4 BACKENDS: NETWORKING: Set pointer to nullptr when it's deleted
This avoids a UAF when file failed to open.
2023-02-26 12:20:13 +01:00
Martin Gerhardy
f101941710 NETWORKING: fixed mixed malloc/delete/delete[]
==84284== Mismatched free() / delete / delete []
==84284==    at 0x484371B: operator delete(void*) (vg_replace_malloc.c:923)
==84284==    by 0x5BFBBF: Networking::CurlRequest::~CurlRequest() (curlrequest.cpp:38)
==84284==    by 0x5C0963: Networking::CurlJsonRequest::~CurlJsonRequest() (curljsonrequest.cpp:40)
==84284==    by 0x5ACF0B: Cloud::GoogleDrive::GoogleDriveTokenRefresher::~GoogleDriveTokenRefresher() (googledrivetokenrefresher.cpp:37)
==84284==    by 0x5ACF27: Cloud::GoogleDrive::GoogleDriveTokenRefresher::~GoogleDriveTokenRefresher() (googledrivetokenrefresher.cpp:37)
==84284==    by 0x5BC2FC: Networking::ConnectionManager::interateRequests() (connectionmanager.cpp:189)
==84284==    by 0x5BC0FA: Networking::ConnectionManager::handle() (connectionmanager.cpp:158)
==84284==    by 0x5BBF45: Networking::connectionsThread(void*) (connectionmanager.cpp:127)
==84284==    by 0x5E6932: DefaultTimerManager::handler() (default-timer.cpp:110)
==84284==    by 0x5D7F04: timer_handler(unsigned int, void*) (sdl-timer.cpp:32)
==84284==    by 0x49283D3: ??? (in /usr/lib/x86_64-linux-gnu/libSDL2-2.0.so.0.2600.1)
==84284==    by 0x4927F64: ??? (in /usr/lib/x86_64-linux-gnu/libSDL2-2.0.so.0.2600.1)
2023-01-17 23:17:17 +01:00
Eugene Sandulenko
40c93bde64
BACKENDS: NETWORKING: Slightly speed up downloads 2023-01-08 16:32:25 +01:00
Orgad Shaneh
f937755c6c BACKENDS: Disable curl deprecation warnings
We still need to support older versions, so mute the warnings as long as
the old APIs can still be used.
2022-12-25 10:32:44 +02:00
Cameron Cawley
28d7b361ea COMMON: Move more file format code into common/formats 2022-12-11 22:33:23 +01:00
Eugene Sandulenko
fb7095f5a4
COMMON: Move all compression-related files to a separate directory 2022-12-01 11:53:02 +01:00
Eugene Sandulenko
a670a17480
NETWORKING: Properly process TLS errors.
Now, when HTTPS is not supported, we will indicate it to the user.
2022-10-10 22:37:22 +02:00
Donovan Watteau
5b1ec56f96 JANITORIAL: Fix some lost or outdated URLs in comments 2022-05-19 07:57:31 +03:00
Paweł Kołodziejski
fb3a63c78c
PS3: Implemented getting IP address for local web server 2022-02-06 21:20:49 +01:00
Eugene Sandulenko
abea37c9bb
ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
Eugene Sandulenko
92ec44b6ab
BACKENDS: NETWORKING: Preparations for aborting the request
Looks like we need API for removing DumpFile, but that must be done
in a safe way.
2021-11-20 00:55:44 +01:00
Eugene Sandulenko
1507559a66
BACKENDS: NETWORKING: Fix local file downloading when stream is reused 2021-11-18 22:38:44 +01:00
Eugene Sandulenko
5df691a3a6
BACKENDS: NETWORKING: Properly signal end of downloaded file 2021-11-18 22:38:43 +01:00
Eugene Sandulenko
db7cec6935
CLOUD: SessionRequest now can save downloaded files to disk 2021-11-18 22:38:43 +01:00
Eugene Sandulenko
768cac42f9
BACKENDS: NETWORKING: Make SessionRequest correctly process HTTP error codes 2021-11-18 22:38:42 +01:00
Eugene Sandulenko
a89cb7f85e
BACKENDS: NETWORKING: Added binary mode to SessionRequest 2021-11-18 22:38:42 +01:00
Orgad Shaneh
44219dfa1a BACKENDS: Use nullptr
Using clang-tidy modernize-use-nullptr
2021-11-14 15:51:59 +02:00
Alexander Tkachev
5636ffb180 CLOUD: Tweak Networking::Reader pattern-matching logic
Instead of doing linear strcmp-like operation after every byte read, Reader now computes a "hash" of the needle it searches for and updates "hash" of the window contents. Now, it only does strcmp if window has the same "hash" as the needle, which also improves file upload speed for ScummVM's local webserver.
2021-11-01 12:15:27 +01:00
Alexander Tkachev
7a43994545 CLOUD: Fix Networking::Reader's window logic
Instead of shifting bytes in the array every time we read 1 byte, Reader now has two "pointers": where it reads from and writes into. This makes the buffer "circular", and removes the unnecessary bytes shifting, which results in increased file upload speed (only for the LAN server; libcurl side stays intact).
2021-11-01 12:15:27 +01:00
sluicebox
f3b04519a6 CLOUD: Fix crash on HTTP request with unparsed path
Occurred during an nmap scan. Fixes bug #12997
2021-10-13 19:18:43 -05:00
SupSuper
c9d67e48a9 BACKENDS: Use FSNode::getName in string operations 2021-08-23 21:22:27 +01:00
Orgad Shaneh
89f05c4bf1 BACKENDS: Fix compiler warning
size is int64, lu is for unsigned long, which depends on the platform.
2021-07-17 09:20:44 +03:00
D G Turner
696de01630 BACKENDS: NETWORKING: Fix for GCC Warnings from 64-bit Stream API Changes 2021-07-09 04:35:47 +01:00
Orgad Shaneh
a05e54f00c JANITORIAL: Remove trailing whitespaces 2021-05-04 11:46:30 +03:00
Thierry Crozat
bbff87e74e NETWORKING: Fix unknow key error when using local server 2021-03-31 22:01:23 +01:00
SupSuper
70dc08f46e JANITORIAL: Cleanup inconsistent includes 2021-02-22 10:54:07 +00:00