Commit Graph

916 Commits

Author SHA1 Message Date
Cthulhu-throwaway b59624adc8
(Netplay) Copy data on receive, even if the buffer is full (#14344) 2022-08-24 16:57:11 +02:00
Cthulhu-throwaway 620e048c52
(Netplay) Do not try to receive new data if the buffer is full (#14343) 2022-08-24 03:32:09 +02:00
LibretroAdmin 6f738d4fbd Gradually get rid of strcpy_literal
Reasons:
1 - Just a macro for strcpy
1.2 - doesn't have a return type unlike strlcpy, can't be used
for string concatenation
1.3 - unsafe compared to strlcpy

Do either manual string assignment per character or strlcpy, no
inbetween by resorting to strcpy
2022-08-23 15:04:47 +02:00
Cthulhu-throwaway c180560165
(Netplay) Improve check frames menu entry (#14320) 2022-08-13 22:28:43 +02:00
Cthulhu-throwaway 2d1c238c1d
Special functions for core serialization (#14317) 2022-08-13 02:24:28 +02:00
Cthulhu-throwaway 54f06c55f5
(Netplay) More removal of older unused code (#14314) 2022-08-12 01:36:55 +02:00
Cthulhu-throwaway 908667d97a
(Netplay) Removal of older unused code (#14312) 2022-08-11 23:17:33 +02:00
Cthulhu-throwaway c030e1c5dc
(Netplay) Support for customizing chat colors (#14305) 2022-08-08 20:09:06 +02:00
LibretroAdmin b2634ea588 * Create fill_pathname_join_special - and specify fill_pathname_join
as deprecated.
* Use fill_pathname_join_special in the vast majority of cases where
we can ensure out_path is a new empty string
* Get rid of some extension concatenation with strlcat where encountered
* Some general cleanups with NULL termination of strings that get immediately
passed to strlcpy/strlcpy-adjacent functions
2022-08-04 14:19:38 +02:00
Cthulhu-throwaway 3aa1811ca9
(Network) Add getnameinfo_retro (#14278) 2022-08-04 13:22:49 +02:00
Cthulhu-throwaway 8105688a99
(Netplay) Show client slowdown information (#14272) 2022-08-02 13:31:55 +02:00
Cthulhu-throwaway 20c4407928
Add HAVE_IFINFO macro (#14265) 2022-08-01 07:51:02 +02:00
Cthulhu-throwaway 9b10579a54
(Network) Fix getaddrinfo_retro (#14261) 2022-07-31 11:22:28 +02:00
Cthulhu-throwaway 83ac65d855
(Vita) Silence warnings (#14226) 2022-07-26 09:03:23 -07:00
Cthulhu-throwaway 29f0ba2e71
(Network/Vita) Add net_ifinfo support (#14225) 2022-07-26 16:10:23 +01:00
Cthulhu-throwaway acfe990ec6
(Netplay/Vita) Enable partial LAN discovery (#14222) 2022-07-26 12:16:53 +02:00
Cthulhu-throwaway e083c46d6e
(Netplay/Vita) Change default port (#14223) 2022-07-26 12:15:42 +02:00
Cthulhu-throwaway cc7c310aa1
(Netplay) Refactor fork arguments (#14208) 2022-07-24 04:26:50 +02:00
Cthulhu-throwaway eb36c35ebf
(Netplay) Fix content reload deadlocks on static core platforms #2 (#14202) 2022-07-23 03:08:26 +02:00
libretroadmin 2cf6f6ce8f * Don't do NULL termination on string if we pass it to strlcpy
* Cleanups in connmanctl.c - abuse of strlcat, strlcpy should
precede it first and/or other more optimal ways of setting the path
2022-07-21 01:47:34 +02:00
Cthulhu-throwaway ee9cb6cb1b
(Netplay) Fix NAT traversal announce for HAVE_SOCKET_LEGACY platforms (#14191) 2022-07-21 01:30:38 +02:00
libretroadmin 05622ebe85 Some trivial strlen usage simplifications where possible, removing
the need for strlen
2022-07-20 17:23:28 +02:00
libretroadmin 62fd667f41 (netplay_frontend.c) Remove unused variable 2022-07-19 10:35:38 +02:00
libretroadmin e4b33fd0e6 (formats/json/rjson.c) Get rid of some implicit strlens and pass
size parameter to the functions instead˜
2022-07-17 06:58:22 +02:00
libretroadmin 0a12062e1c Remove unnecessary content_crc in bsv_movie_init_playback 2022-07-17 04:26:49 +02:00
libretroadmin c7c42409f1 Revert "Attempt to silence warnings by casting to socklen_t"
This reverts commit 6c8f649b02.
2022-07-14 22:51:17 +02:00
libretroadmin 6c8f649b02 Attempt to silence warnings by casting to socklen_t 2022-07-14 21:27:34 +02:00
Cthulhu-throwaway af71dcb893
(Netplay) Memory leak fix (#14154) 2022-07-07 21:14:38 +02:00
Cthulhu-throwaway a87e95ad8f
(Netplay) Fix input for some cores when hosting (#14153) 2022-07-07 20:59:12 +02:00
Cthulhu-throwaway c6e0e7e198
(Netplay) Support for banning clients (#14146) 2022-07-07 13:40:38 +02:00
Cthulhu-throwaway 0b2be028ca
(Netplay) Fix client info devices index (#14142) 2022-07-04 04:00:55 +02:00
Cthulhu-throwaway b55fa28896
(Netplay/Menu) Localize relay servers (#14136) 2022-07-03 13:45:13 +02:00
Cthulhu-throwaway 42f75e7f72
(Netplay/Menu) Add client devices info to the kick sub-menu (#14138) 2022-07-03 13:44:46 +02:00
Cthulhu-throwaway ab208fca91
(Netplay) Ensure current content is reloaded before joining a host (#14117) 2022-07-01 01:02:04 +02:00
Cthulhu-throwaway 58fc77850c
(Netplay/Lobby) Hide older (incompatible) rooms (#14118) 2022-07-01 01:01:24 +02:00
barbudreadmon e9d67f2bbe
savestates: implement an api call for context awareness (#14101) 2022-06-30 10:45:59 +02:00
Cthulhu-throwaway a5ebfc442a
(Netplay) Disallow clients from loading states and resetting (#14114) 2022-06-30 09:48:51 +02:00
Cthulhu-throwaway 6aa16442db
(Network/Wii) Enable net_ifinfo for some features (#14106) 2022-06-26 16:37:05 +02:00
Cthulhu-throwaway a7dc57f68f
(Network) Move the addr_6to4 function to a proper place (#14100) 2022-06-25 09:18:32 +02:00
Cthulhu-throwaway 8c6c399a01
(Network) Move the HAVE_INET6 macro to a proper place (#14096) 2022-06-25 00:54:39 +01:00
Cthulhu-throwaway c1e8925f87
(Netplay) Find content task refactor (#14089) 2022-06-23 14:48:57 +02:00
Cthulhu-throwaway 2a0fce77d3
(Wii) Silence some warnings (#14092) 2022-06-23 14:46:53 +02:00
libretroadmin e954a69708 Truncation is intentional - see if using the return value and storing it
in a local var can work around the warning
2022-06-19 19:20:19 +02:00
libretroadmin a06f3b98ce For Griffin builds it is important this define does not get redefined
Note to Cthulhu: We should probably put this in a header file somewhere
2022-06-19 18:43:25 +02:00
libretroadmin 01eab0fba5 (3DS/CTR) Take out HAVE_SOCKET_LEGACY for 3DS as per Cthulhu recommendation
and instead put in the extra conditional for natt.c and netplay_frontend.c
2022-06-19 18:32:26 +02:00
libretroadmin e0c7e78e27 netplay_frontend.c - show_chat() - prevent warning 'format truncation' -
snprintf output between 3 and 129 bytes into a destination of size 96
2022-06-19 18:19:47 +02:00
libretroadmin f0e340fd23 (3DS/CTR) Now that 3DS/CTR defines HAVE_SOCKET_LEGACY, we don't need
this conditional anymore
2022-06-19 17:57:50 +02:00
Cthulhu-throwaway 216489512c
(UPnP) Support for IPv4 tunneling (#14067) 2022-06-19 14:40:14 +02:00
Cthulhu-throwaway dabd9cb996
(Netplay/LAN Discovery) Task refactor (#14070) 2022-06-19 03:41:04 +02:00
Cthulhu-throwaway e6e5e46be3 (Netplay) Buildfix for some "dumber" compilers 2022-06-18 12:10:01 -03:00
Cthulhu-throwaway 7e798d04ba (Netplay) Some refactoring and fixes 2022-06-17 18:00:48 -03:00
Cthulhu-throwaway 43ad2b64b2 (Network) Replace socket_select calls 2022-06-12 02:13:34 -03:00
LibretroAdmin 9ea46f34fb
Merge pull request #13997 from Cthulhu-throwaway/lan-discovery-ipv4-tunneling
(Netplay/LAN Discovery) Support for IPv4 tunneling (6to4)
2022-06-02 08:43:24 +01:00
Cthulhu-throwaway bcc31be6da (Netplay/LAN Discovery) Support for IPv4 tunneling (6to4) 2022-06-01 06:34:43 -03:00
LibretroAdmin a92a37e3f4
Merge pull request #13996 from Cthulhu-throwaway/netplay-cleanup-2
(Netplay) Some cleaning
2022-06-01 10:00:09 +01:00
Cthulhu-throwaway 9fab981317 (Netplay) Some cleaning 2022-06-01 04:31:33 -03:00
LibretroAdmin 4a21553f06
Merge pull request #13994 from fr500/master
fix previous PR
2022-06-01 07:37:37 +01:00
Cthulhu-throwaway 2abf42515b (UPnP) Fix for zero-length datagrams 2022-06-01 03:24:46 -03:00
radius 109cd28a6f fix previous PR 2022-06-01 01:00:28 -05:00
Andrés cf2ecf506c
Fix lan rooms on android
This simple change makes lan discovery work on android again.
The is_lan_address function was meant to filter out duplicate rooms only anyway and this change shouldn't harm anything

The responses on android are seen as IPv6 mapped IPv4 addresses so this is needed for this to work anyway

I/RetroArch: [Discovery] Responnse received on LAN interface ::ffff:192.168.1.241.
I/RetroArch: [Netplay]: Connecting to ::ffff:192.168.1.241|55435 (deferred)
2022-05-31 22:39:10 -05:00
Cthulhu-throwaway 8f7b5a1050 (Networking) Define isinprogress function 2022-05-31 05:07:23 -03:00
Cthulhu-throwaway 17b7b1322e (Netplay) Some cleaning 2022-05-30 22:02:24 -03:00
Cthulhu-throwaway de30f212bc (Netplay) Enforce a timeout during connection 2022-05-30 05:23:39 -03:00
Cthulhu-throwaway e4f8b531d5 (Netplay) Some refactoring and cleaning 2022-05-27 17:21:34 -03:00
libretroadmin 9590fdd0d4 Cleanups pt.2 2022-05-22 20:29:53 +02:00
Antonio Jose Ramos Marquez 4dd779467d [ORBIS] add debugnet support 2022-05-21 16:31:10 +02:00
Cthulhu-throwaway f0baf977fa (Network) Move natt files to "network" 2022-05-18 23:23:40 -03:00
Cthulhu-throwaway 82c9773e0d (Netplay) Chat supported info for the host kick submenu 2022-05-15 19:38:44 -03:00
Cthulhu-throwaway cb2d6b3d8e (Netplay) Free client_info when it's no longer in use 2022-05-14 12:06:57 -03:00
twinaphex a577d7d224 (netplay_frontend) Small style nits/cleanups 2022-05-14 04:34:11 +02:00
Cthulhu-throwaway 6d96df0e49 (Netplay) Support for gathering client info and kicking
Client info and kicking (by the host) is now implemented through netplay_driver_ctl and can be used by future features.
2022-05-13 22:42:08 -03:00
Cthulhu-throwaway f29256bb0d (Netplay) More cleaning and organization 2022-05-13 10:22:55 -03:00
Cthulhu-throwaway 99e517d2a9 (Netplay) Fixes and cleanup
(Netplay) Buildfix and warnings
2022-05-12 14:26:53 -03:00
Cthulhu-throwaway 796bc15837
C89 buildfix (#13923)
* C89 buildfix

* More buildfixes
2022-05-10 07:37:33 +02:00
Cthulhu-throwaway b57a1b0c72
(Netplay) Fix possible deadlock (#13919) 2022-05-07 00:40:46 +02:00
Cthulhu-throwaway 9a3b8f4a0a
(Netplay) Disable netplay for unsupported cores (#13916)
With stateless mode being disabled for now, there is no reason not to include this.

Refuse to initialize netplay when the current core is not supported (no proper savestates support).
2022-05-06 04:31:37 +02:00
Cthulhu-throwaway 0a52964015
(Netplay) Disable and hide stateless mode (#13915)
Stateless mode is nonfunctional at the moment, despite my attempts to get it working.
A significant amount of work is required to get it working.

For now, force-disable stateless mode and hide it from menus and the CLI's help text.
2022-05-05 20:46:48 +02:00
Cthulhu-throwaway 4674241bf9
(Networking) Move macro to its correct place (#13904) 2022-04-30 03:39:10 +02:00
Cthulhu-throwaway 7c3dfa5e3a
(Netplay/LAN Discovery) Ensure fixed width ints on packet struct (#13901) 2022-04-29 20:26:34 +02:00
Cthulhu-throwaway a268ffe6ce
(Netplay) Replace sscanf with safer strtol and strtoul (#13897) 2022-04-28 14:14:00 +02:00
Cthulhu-throwaway 669af1d9c6
(Netplay) Initialize client's allow_pausing to true (#13873) 2022-04-22 15:37:11 +02:00
Alexander Trufanov 7f0cf651f1
Fix gamecrc parsing (#13872) 2022-04-22 14:31:37 +02:00
Mats 4a1a1e2fa7
(steam) Introduce Steam Rich Presence (#13798) 2022-04-02 08:07:40 +01:00
Autechre 4c3a4d66df
Cxx buildfixes (#13803)
* CXX_BUILD buildfixes
* (D3D11) Buildfixes for CXX_BUILD
* (Linux/qb) Disable KMS for Linux when building for C89, headers use inline which is not
available for C89
2022-03-30 17:30:20 +02:00
twinaphex a7569b5712 More CXX_BUILD buildfixes 2022-03-30 15:45:48 +02:00
Vladimir Serbinenko 4a53c6771c
Several fixes and improvements do NGC and Wii (#13698)
* Support new elf2dol path in Makefile.griffin

* Fix NULL pointer dereference when no core info is available

* Fix double include of different versions of libogc

* Move ngc and wii to Makefile.common

Resulting binary is 60K *smaller*. This is surprising but probably due to
less inlining happening

* gx_gfx: Fix hang on gfx initialization

* Remove sthread_isself on NGC/Wii

It relies on pthread_equal that is not there for either legacy pthreads
or normal pthreads on those platforms

* Wii networking

* Missing includes in split

* Network fixes

* Fix logging of non-format string as a format

* Support for gx netlogger

* Network fix

* Network fixes

* Network info

* gx: Move config files to app directory

Otherwise it clashes between wiiU and vWii version with unpredictable
effects
2022-03-04 13:43:00 +01:00
Cthulhu-throwaway b0928cd0f8
[Netplay] Disable savestates on stateless mode (#13634)
Stateless mode is currently not working correctly and still using savestates.
2022-02-18 17:08:18 +01:00
Cthulhu-throwaway cd74221d33
[Networking] GetBestRoute refactor (#13553)
Refactor to support UWP.
2022-01-27 11:38:31 +01:00
Cthulhu-throwaway b71be7efd2
(Netplay/LAN Discovery) Disable GetBestRoute for UWP (#13518) 2022-01-20 14:52:11 +01:00
Cthulhu-throwaway 0c0d19e3f1 (Netplay) Fix dummy notification
No longer shows a netplay initialization failed notification when netplay is not enabled.
2022-01-13 01:49:51 +01:00
Cthulhu-throwaway 4dda10b86d
(Netplay) Disable netplay on init failure (#13479)
* (Netplay) Disable netplay on init failure

Make sure netplay is disabled and properly deinitialized after an initialization failure.

* missing comma
2022-01-11 13:50:09 +01:00
Cthulhu-throwaway 4cf1bcf70f
(Netplay/UPnP) Delay lobby server announcing (#13473)
Delay the announcing in order to give UPnP's port forwarding more time.

Fix the remaining truncation warnings.
2022-01-11 08:48:59 +01:00
twinaphex 18dae9ce73 remove unused variables 2021-12-27 19:57:32 +01:00
Autechre 68713b46b0
Revert "Netplay clean-up (#13421)" (#13422)
This reverts commit 5efd2a64a4.
2021-12-26 16:54:19 +01:00
Cthulhu-throwaway 5efd2a64a4
Netplay clean-up (#13421) 2021-12-26 16:30:38 +01:00
Cthulhu-throwaway 9579810579
Build fix for --disable-menu (#13419) 2021-12-26 15:18:57 +01:00
Cthulhu-throwaway 26132a2330
Netplay and NAT struct improvements (#13416)
Reordered netplay and NAT structs to follow the coding guidelines more closely.

Moved part of the chat struct out of the program's image and into the heap.
2021-12-25 13:42:22 +01:00
Cthulhu-throwaway 9e208198f2
Endianness fix for netplay_is_lan_address (#13413) 2021-12-25 04:07:55 +01:00
Cthulhu-throwaway 98bed89d6f
Netplay custom relay server to use default port (#13411)
Allow the custom server to use the default port if a port was not provided.
2021-12-25 02:30:33 +01:00
Cthulhu-throwaway 6a100272a8
Netplay spectator notification fix (#13409)
Fix double notification when the host switches to spectator.
2021-12-24 16:42:16 +01:00
Cthulhu-throwaway 736ab4c964
MSVC 2005 build fix (#13408) 2021-12-24 14:58:18 +01:00
Cthulhu-throwaway b67b93ebfe
Enable GetBestRoute for MSVC 2005 (#13407) 2021-12-24 14:15:20 +01:00
Cthulhu-throwaway ec97c86756
Attempt to fix UPnP for some Windows devices (#13402)
Yet another attempt at it.
2021-12-23 23:52:01 +01:00
Cthulhu-throwaway c6369b7861
MSVC 2005 Build Fix (#13401) 2021-12-23 22:08:13 +01:00
Cthulhu-throwaway c4049b9597
NAT and netplay Fixes (#13400)
* NAT and netplay Fixes

Fix a crash when announcing your room to the internet without being in a tunnel.

Fix improper interface for UPnP for some Windows devices.

* Final edits
2021-12-23 21:28:30 +01:00
Cthulhu-throwaway c752f9b0de
Custom relay server support (#13395)
* Custom relay server support

Add support for custom user-ran relay servers.

* snprintf NULL fix
2021-12-23 13:54:52 +01:00
Cthulhu-throwaway b9041995f0
Add asian relay server (#13393)
Replace the canadian server with an asian one.
2021-12-22 16:33:41 +01:00
Cthulhu-throwaway eff6f41a38
Netplay protocol macro (#13391)
Wrap protocol checks inside of a guard macro.
2021-12-22 03:05:35 +01:00
Jamiras 3d84a9960e
(cheevos) check netplay status when unlocking achievements (#13379)
* check netplay status when unlocking achievements instead of permanently disabling them in spectate mode

* fix c89 build

* add RARCH_NETPLAY_CTL_IS_SPECTATING
2021-12-21 15:58:42 +01:00
Cthulhu-throwaway 966335e367
Smaller Netplay Changes (#13387)
Lobby Viewer: Filter out rooms that are not running RetroArch
Lobby Viewer: Display a non-connectable tag to non-connectable rooms.
Host: Display warning if we are announcing to the internet but our room isn't connectable from there.
2021-12-21 15:58:25 +01:00
Cthulhu-throwaway 568a30380b Buildfix for some platforms
Buildfix for some platforms that do not have HAVE_TRANSLATE defined aswell as platforms that define sockaddr_storage as sockaddr/sockaddr_in.
2021-12-20 14:26:50 +01:00
Cthulhu-throwaway cae793e39f
Update netplay readme (#13380)
Fixes typos, removes outdated info and adds new commands for protocol 6.
2021-12-20 14:15:52 +01:00
Cthulhu-throwaway cda66d09c3
Netplay Stuff - Addendum (#13378)
Prevents long-term pausing from clients dishonoring allow pausing.

Missing crediting.
2021-12-19 20:43:59 +01:00
Cthulhu-throwaway 690c802921
Netplay Stuff (#13375)
* Netplay Stuff

## PROTOCOL FALLBACK
In order to support older clients a protocol fallback system was introduced.
The host will no longer send its header automatically after a TCP connection is established, instead, it awaits for the client to send his before determining which protocol this connection is going to operate on.
Netplay has now two protocols, a low protocol and a high protocol; the low protocol is the minimum protocol it supports, while the high protocol is the highest protocol it can operate on.
To fully support older clients, a hack was necessary: sending the high protocol in the unused client's header salt field, while keeping the protocol field to the low protocol. Without this hack we would only be able to support older clients if a newer client was the host.
Any future system can make use of this system by checking connection->netplay_protocol, which is available for both the client and host.

## NETPLAY CHAT
Starting with protocol 6, netplay chat is available through the new NETPLAY_CMD_PLAYER_CHAT command.
Limitations of the command code, which causes a disconnection on unknown commands, makes this system not possible on protocol 5.
Protocol 5 connections can neither send nor receive chat, but other netplay operations are unaffected.
Clients send chat as a string to the server, and it's the server's sole responsability to relay chat messages.
As of now, sending chat uses RetroArch's input menu, while the display of on-screen chat uses a widget overlay and RetroArch's notifications as a fallback.
If a new overlay and/or input system is desired, no backwards compatibility changes need to be made.
Only clients in playing mode (as opposed to spectating mode) can send and receive chat.

## SETTINGS SHARING
Some settings are better used when both host and clients share the same configuration.
As of protocol 6, the following settings will be shared from host to clients (without altering a client's configuration file): input latency frames and allow pausing.

## NETPLAY TUNNEL/MITM
With the current MITM system being defunct (at least as of 1.9.X), a new system was in order to solve most if not all of the problems with the current system.
This new system uses a tunneling approach, which is similar to most VPN and tunneling services around.

Tunnel commands:
RATS[unique id] (RetroArch Tunnel Session) - 16 bytes -> When this command is sent with a zeroed unique id, the tunnel server interprets this as a netplay host wanting to create a new session, in this case, the same command is returned to the host, but now with its unique session id. When a client needs to connect to a host, this command is sent with the unique session id of the host, causing the tunnel server to send a RATL command to the host.
RATL[unique id] (RetroArch Tunnel Link) - 16 bytes -> The tunnel server sends this command to the host when a client wants to connect to the host. Once the host receives this command, it establishes a new connection to the tunnel server, sending this command together with the client's unique id through this new connection, causing the tunnel server to link this connection to the connection of the client.
RATP (RetroArch Tunnel Ping) - 4 bytes -> The tunnel server sends this command to verify that the host, whom the session belongs to, is still around. The host replies with the same command. A session is closed if the tunnel server can not verify that the host is alive.

Operations:
Host -> Instead of listening and accepting connections, it connects to the tunnel server, requests a new session and then monitor this connection for new linking requests. Once a request is received, it establishes a new connection to the tunnel server for linking with a client. The tunnel server's address and port are obtained by querying the lobby server. The host will publish its session id together with the rest of its info to the lobby server.
Client -> It connects to the tunnel server and then sends the session id of the host it wants to connect to. A host's session id is obtained from the json data sent by the lobby server.

Improvements (from current MITM system):
No longer a risk of TCP port exhaustion; we only use one port now at the tunnel server.
Very little cpu usage. About 95% net I/O bound now.
Future backwards compatible with any and all changes to netplay as it no longer runs any netplay logic at MITM servers.
No longer operates the host in client mode, which was a source of many of the current problems.
Cleaner and more maintainable system and code.

Notable functions:
netplay_mitm_query -> Grabs the tunnel's address and port from the lobby server.
init_tcp_socket -> Handles the creation and operation mode of the TCP socket based on whether it's host, host+MITM or client.
handle_mitm_connection -> Creates and completes linking connections and replies to ping commands (only 1 of each per call to not affect performance).

## MISC
Ping Limiter: If a client's estimated latency to the server is higher than this value, connection will be dropped just before finishing the netplay handshake.
Ping Counter: A ping counter (similar to the FPS one) can be shown in the bottom right corner of the screen, if you are connected to a host.
LAN Discovery: Refactored and moved to its own "Refresh Netplay LAN List" button.

## FIXES
Many minor fixes to the current netplay implementation are also included.

* Remove NETPLAY_TEST_BUILD
2021-12-19 16:58:01 +01:00
Autechre 3b1a1ac8da
Remove miniupnpc dependency (#13340)
* use custom libretro-common UPNP

* Remove miniupnpc
2021-12-09 05:52:42 +01:00
Autechre fbbe351f7d
UPnP cleanups and refactorings (#13325) 2021-12-04 21:16:34 +01:00
twinaphex bfeffb2423 Fix local header path includes 2021-12-04 16:11:02 +01:00
Autechre a44f5bbf78
Fix UPNP port mapping failed error - switch to a permanent lease time, (#13324)
but request it to be removed when we do netplay_free
2021-12-04 15:45:29 +01:00
Autechre b6695d8921
Netplay changes proposed for 1.9.14 (#13314)
* Added setting to allow/disallow players other than the host from pausing the game.
* Added a sublabel for netplay max connections.
* Fixed port override macro from not being set immediately after the port setting.
* Fixed memory leaks.
2021-12-04 02:34:21 +01:00
Jamiras b6fef13109
disallow achievement when spectating netplay (#13318) 2021-12-04 02:00:53 +01:00
Autechre 5f49899343
Bluetooth refactor (#13266)
* Use HAVE_BLUETOOTH ifdef to strip out this code when not defined

* Split up bluetooth code into its own file
2021-11-21 20:44:08 +01:00
Autechre 71b30d7846
Split up wifi networking code - move it into separate file (#13262) 2021-11-21 12:37:39 +01:00
twinaphex 680b631ad6 Revert "(Netplay) Cthulhu88 - Remove forced disconnection on unknown netplay command -"
This reverts commit 65a421d90f.
2021-11-12 19:08:34 +01:00
twinaphex a6ed23d031 Revert "(cthulhu88) Add netplay chat command"
This reverts commit 6a490c0383.
2021-11-12 19:01:31 +01:00
twinaphex efa16a8fca Revert "(Netplay) Cthulhu88 -"
This reverts commit cb4028fd3d.
2021-11-12 19:00:42 +01:00
twinaphex 4025b678bf Revert "Add missing netplay_protocol.h"
This reverts commit 1fc73f11b5.
2021-11-12 19:00:33 +01:00
twinaphex d7a8bc55a3 Revert "(Cthulhu88) Add netplay hotkey bind"
This reverts commit deaf116d38.
2021-11-12 19:00:24 +01:00
twinaphex 3b6196144f Revert "Bump NETPLAY_PROTOCOL_VERSION up to 6"
This reverts commit 823c54a39d.
2021-11-12 19:00:16 +01:00
twinaphex 9c7a55352d Revert "(Cthulhu88) Netplay polishing patch"
This reverts commit 82b8c0a60e.
2021-11-12 18:59:59 +01:00
twinaphex 62a8b13b1a Revert "(Cthulhu88) Netplay - initial netplay tunnel"
This reverts commit 369cafe1ad.
2021-11-12 18:59:52 +01:00
twinaphex 9fe56d6865 Revert "(Cthulhu88) Fix build errors of previous commit"
This reverts commit 393f9bdd48.
2021-11-12 18:59:42 +01:00
twinaphex 753332ff18 Revert "(Cthulhu88) Fix for multi-char arrays"
This reverts commit e64cd24715.
2021-11-12 18:59:35 +01:00
twinaphex fc460dbb9c Revert "Fix final warning and remove unused variables"
This reverts commit 5dd0e90fca.
2021-11-12 18:59:29 +01:00
twinaphex 70ee3fbca7 Revert "(Cthulhu88) New Netplay MITM Part 2"
This reverts commit 34c374737c.
2021-11-12 18:58:40 +01:00
twinaphex 34c374737c (Cthulhu88) New Netplay MITM Part 2 2021-11-12 06:31:54 +01:00
twinaphex 5dd0e90fca Fix final warning and remove unused variables 2021-11-11 05:48:29 +01:00
twinaphex e64cd24715 (Cthulhu88) Fix for multi-char arrays 2021-11-11 05:38:45 +01:00
twinaphex 393f9bdd48 (Cthulhu88) Fix build errors of previous commit 2021-11-11 05:04:17 +01:00
twinaphex 369cafe1ad (Cthulhu88) Netplay - initial netplay tunnel 2021-11-11 04:55:37 +01:00
twinaphex 82b8c0a60e (Cthulhu88) Netplay polishing patch 2021-11-11 03:37:14 +01:00
twinaphex 823c54a39d Bump NETPLAY_PROTOCOL_VERSION up to 6 2021-11-10 05:11:17 +01:00
twinaphex deaf116d38 (Cthulhu88) Add netplay hotkey bind 2021-11-10 04:58:59 +01:00
twinaphex 1fc73f11b5 Add missing netplay_protocol.h 2021-11-10 02:50:29 +01:00
twinaphex cb4028fd3d (Netplay) Cthulhu88 -
* Netplay Chat menu
* Toggleable bind for chat (bound to ~ [tilde] by default)
2021-11-10 02:41:02 +01:00
twinaphex 6a490c0383 (cthulhu88) Add netplay chat command 2021-11-09 02:52:04 +01:00
twinaphex 0af9b72388 (network) Cleanups 2021-11-06 00:27:51 +01:00
twinaphex 65a421d90f (Netplay) Cthulhu88 - Remove forced disconnection on unknown netplay command -
will be backwards compatible with any version that removed this
disconnect. instead of disconnecting, we just read the data and
ignore, like most network implementations do
2021-11-05 22:49:59 +01:00
twinaphex c912619653 * Move port_map to runloop_state
* Get rid of p_rarch dependencies in functions
2021-11-05 22:03:13 +01:00
twinaphex 0a209c4564 Last suggested fix 2021-11-05 19:22:22 +01:00
twinaphex a50cd1105e Hopefully fixes it 2021-11-05 19:18:26 +01:00