aboutsummaryrefslogtreecommitdiff
path: root/src/network
Commit message (Collapse)AuthorAgeFilesLines
* [cmake] Simplify DetectPlatform and normalize platform names (#4183)crueter2026-08-101-2/+2
| | | | | | | | | Since 3.25 introduced `LINUX` and `BSD`, use them, and standardize other platforms to that style Signed-off-by: crueter <crueter@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4183 Reviewed-by: Samuel <lizzie@eden-emu.dev> Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
* [common] unify std::random_device (#3801)lizzie2026-03-311-3/+1
| | | | | | | | Signed-off-by: lizzie <lizzie@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3801 Reviewed-by: CamilleLaVey <camillelavey99@gmail.com> Co-authored-by: lizzie <lizzie@eden-emu.dev> Co-committed-by: lizzie <lizzie@eden-emu.dev>
* [common/logging] Simplify logging logic and fix issues when logging before ↵lizzie2026-03-123-4/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | system is created (#3688) - our logging code was bigger than spdlog itself, why???? just keep it simple - fix issues when logging before logging system is even started - removes the "initialized logging twice" issue - removes uneeded indirection in file logging - uses direct formatting instead of jumping hoopla-around the fmt::format() ressult - code duplication and dead code removal as usual I did explore dup2() but I think it's not worth the hassle I did try `fwopen()` but it's better if things are just kept as-is. there is a lot of noise because I removed a bunch of redundant files on logging and just put everything in one file now normally this wouldn't be a good idea, however consider: the complexity of logging; it's less than 500 lines... does it really need a whole subsystem?!?!?! ITS JUST LOGGING Signed-off-by: lizzie <lizzie@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3688 Reviewed-by: crueter <crueter@eden-emu.dev> Reviewed-by: DraVee <chimera@dravee.dev> Reviewed-by: CamilleLaVey <camillelavey99@gmail.com> Co-authored-by: lizzie <lizzie@eden-emu.dev> Co-committed-by: lizzie <lizzie@eden-emu.dev>
* [network, qt] use jthread and use std::vector for packet list instead of ↵lizzie2026-02-114-247/+224
| | | | | | | | | | | std::list (#254) Signed-off-by: lizzie <lizzie@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/254 Reviewed-by: DraVee <dravee@eden-emu.dev> Reviewed-by: Maufeat <sahyno1996@gmail.com> Co-authored-by: lizzie <lizzie@eden-emu.dev> Co-committed-by: lizzie <lizzie@eden-emu.dev>
* [chore] Fixed a couple memory leaks using up ~15 MB each iteration (#398)Gamer642025-12-261-1/+4
| | | | | | | | | | | Co-authored-by: Jarrod Norwell <official.antique@gmail.com> Co-authored-by: Gamer64 <76565986+Gamer64ytb@users.noreply.github.com> Co-authored-by: Caio Oliveira <caiooliveirafarias0@gmail.com> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/398 Reviewed-by: Caio Oliveira <caiooliveirafarias0@gmail.com> Reviewed-by: Lizzie <lizzie@eden-emu.dev> Co-authored-by: Gamer64 <gamer64@eden-emu.dev> Co-committed-by: Gamer64 <gamer64@eden-emu.dev>
* [network] Fix potential infinite hang when generating fake IPs (#2898)lizzie2025-10-311-8/+9
| | | | | | | | | | | ALWAYS bound your loops :) Signed-off-by: lizzie <lizzie@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2898 Reviewed-by: Caio Oliveira <caiooliveirafarias0@gmail.com> Reviewed-by: MaranBr <maranbr@eden-emu.dev> Co-authored-by: lizzie <lizzie@eden-emu.dev> Co-committed-by: lizzie <lizzie@eden-emu.dev>
* nuke: Goodbye PCH, you will not be missed (#2821)Caio Oliveira2025-10-272-11/+0
| | | | | | | | Signed-off-by: Caio Oliveira <caiooliveirafarias0@gmail.com> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2821 Reviewed-by: crueter <crueter@eden-emu.dev> Co-authored-by: Caio Oliveira <caiooliveirafarias0@gmail.com> Co-committed-by: Caio Oliveira <caiooliveirafarias0@gmail.com>
* [cmake] feat: FFmpeg CI, allow 16kb android builds, update translations for ↵crueter2025-09-231-1/+1
| | | | | | | | | | | | | | | | transifex (#2543) Uses an FFmpeg CI for Android and Windows, also available for Linux. Saves compile time on Linux and is more consistent on Windows/Android. Also, updates VVL and FFmpeg to allow for a fully 16kb-compliant Android build. Bonus: APK size is down 30% Updated all localization files for Transifex while I was at it TODO for future: Android 8.0 with vp9_vulkan et al. Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2543 Reviewed-by: Maufeat <sahyno1996@gmail.com> Reviewed-by: Lizzie <lizzie@eden-emu.dev>
* [meta] fix license headers (#2547)lizzie2025-09-213-9/+6
| | | | | | | Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2547 Reviewed-by: MaranBr <maranbr@eden-emu.dev> Co-authored-by: lizzie <lizzie@eden-emu.dev> Co-committed-by: lizzie <lizzie@eden-emu.dev>
* [cmake] enable clang-cl and WoA builds (#348)lizzie2025-09-091-1/+1
| | | | | | | | | | | | | | Compilation and CMake fixes for both Windows on ARM and clang-cl, meaning Windows can now be built on both MSVC and clang on both amd64 and aarch64. Compiling on clang is *dramatically* faster so this should be useful for CI. Co-authored-by: crueter <crueter@eden-emu.dev> Co-authored-by: crueter <crueter@crueter.xyz> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/348 Reviewed-by: CamilleLaVey <camillelavey99@gmail.com> Reviewed-by: crueter <crueter@eden-emu.dev> Co-authored-by: lizzie <lizzie@eden-emu.dev> Co-committed-by: lizzie <lizzie@eden-emu.dev>
* [cmake] CPMUtil: formatting, git_host, new repos, more system deps, libusb ↵crueter2025-09-081-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | (#392) I promise I'm a UI developer - mbedtls can now be used as a system package - zycore can now be used as a system package - cleaned up dynarmic externals - fixed libusb incorrectly showing as bundled - add version/tag formatting to JSON - add custom GIT_HOST option for packages - moved some of my repos to my new git - slightly better version identification - combined VUL/VH since they are codependent (using my combo vendor) - fix cpmfile inclusion - remove libusb submodule This PR succeeds #383 since it includes it Co-authored-by: SDK Chan <sdkchan@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/392 Co-authored-by: crueter <crueter@crueter.xyz> Co-committed-by: crueter <crueter@crueter.xyz>
* [ci, cmake] openssl updates, fix drpc and ci scripts (#283)crueter2025-08-191-1/+1
| | | | | | | | | | | | | | | - Add bundled OpenSSL libs for Solaris, FreeBSD, Linux - Fix CPMUtil default on msvc - Update CI scripts (thanks dravee) - PLATFORM_<OS> helpers for non-ANDROID UNIX Co-authored-by: Caio Oliveira <caiooliveirafarias0@gmail.com> Signed-off-by: crueter <crueter@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/283 Reviewed-by: Lizzie <lizzie@eden-emu.dev> Co-authored-by: crueter <crueter@crueter.xyz> Co-committed-by: crueter <crueter@crueter.xyz>
* [compat] fix solaris Qt build (#194)lizzie2025-08-151-4/+5
| | | | | | | | Co-authored-by: crueter <crueter@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/194 Reviewed-by: crueter <crueter@eden-emu.dev> Co-authored-by: lizzie <lizzie@eden-emu.dev> Co-committed-by: lizzie <lizzie@eden-emu.dev>
* [cmake] refactor: CPM over vcpkg (#250)crueter2025-08-141-1/+1
| | | | | | | | | Completely replaces vcpkg with CPM for all "system" dependencies. Primarily needed for Android and Windows. Also uses my OpenSSL CI for those two platforms. In theory, improves configure and build time by a LOT and makes things much easier to manage Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/250 Reviewed-by: Lizzie <lizzie@eden-emu.dev>
* [cmake, frontend] feat: CPMUtil + dependency viewer (#238)crueter2025-08-111-6/+6
| | | | | | | | - creates a CPMUtil.cmake module that makes my job 10x easier and removes boilerplate - also lets us generate dependency names/versions at compiletime, thus letting the frontend display each dependency's versions. Signed-off-by: crueter <crueter@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/238
* [build, cmake] port to solaris (#96)lizzie2025-07-231-0/+5
| | | | | | | Co-authored-by: crueter <crueter@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/96 Co-authored-by: lizzie <lizzie@eden-emu.dev> Co-committed-by: lizzie <lizzie@eden-emu.dev>
* [frontend, web] refactor: web service frontend rewrite (#221)crueter2025-07-011-15/+15
| | | | | | | | | | | | | | - Automatic verification based on regex - Token generation button - Removed unneeded links - public lobby creation [android] Signed-off-by: crueter <swurl@swurl.xyz> Co-authored-by: Aleksandr Popovich <alekpopo@pm.me> Co-authored-by: Aleksandr Popovich <alekpopo@proton.me> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/221 Co-authored-by: crueter <swurl@swurl.xyz> Co-committed-by: crueter <swurl@swurl.xyz>
* Fix License headers & CI (#168)crueter2025-06-092-8/+6
| | | | | | | Signed-off-by: crueter <swurl@swurl.xyz> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/168 Co-authored-by: crueter <swurl@swurl.xyz> Co-committed-by: crueter <swurl@swurl.xyz>
* Added the public lobby to android. (#125)Aleksandr Popovich2025-06-056-47/+45
| | | | | | | | | | | | | | | | | | | This is adapted from kleidis old PR to Azahar. Changes from it: - Fixed inconsistent button styling in the dialog for connection - Allowed to hide both empty and full rooms. - Proper serving of preferred games - Enables web service for android by default - Better implementation of multiplayer.cpp that works with oop Also fixes the room network class and turns it into a static namespace in network Signed-off-by: Aleksandr Popovich <alekpopo@pm.me> Co-authored-by: swurl <swurl@swurl.xyz> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/125 Co-authored-by: Aleksandr Popovich <alekpopo@pm.me> Co-committed-by: Aleksandr Popovich <alekpopo@pm.me>
* android: Add initial frontend for LAN network rooms (#76)Briar2025-05-032-6/+19
| | | | | | Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/76 Co-authored-by: Briar <205427297+icy-briar@users.noreply.github.com> Co-committed-by: Briar <205427297+icy-briar@users.noreply.github.com>
* Fix more typosViktor Szépe2024-01-152-2/+2
|
* msvc: set warning level to /W4 globallyDanila Malyutin2023-09-031-1/+1
| | | | And fix a bunch of warnings
* general: fix spelling mistakesLiam2023-03-123-10/+10
|
* cmake: use correct boost imported targetsAlexandre Bouvier2023-02-281-1/+1
|
* cmake: prefer system librariesAlexandre Bouvier2022-12-041-1/+1
|
* CMake: Consolidate common PCH headersameerj2022-11-301-7/+1
|
* CMake: Use precompiled headersameerj2022-11-292-0/+17
|
* Merge pull request #8876 from FearlessTobi/multiplayer-part3bunnei2022-10-014-1/+155
|\ | | | | ldn: Implement "local wireless" networked multiplayer
| * Address some review commentsFearlessTobi2022-09-201-1/+1
| |
| * ldn: Initial implementationFearlessTobi2022-09-094-1/+155
| |
* | chore: fix some typosAndrea Pappacoda2022-09-231-1/+1
|/ | | | Fix some typos reported by Lintian
* yuzu: Display current game version in multiplayer roomFearlessTobi2022-08-273-6/+12
| | | | Makes it easier for users to recognize connection errors caused by different game versions.
* network: Use lower timeout for enet_host_serviceFearlessTobi2022-08-272-2/+2
| | | | This allows us to have a 10x higher throughput of packets by using a much shorter waiting time.
* yuzu_room: Remove dependency on coreFearlessTobi2022-08-273-0/+268
|
* core, network: Add ability to proxy socket packetsFearlessTobi2022-08-154-209/+168
|
* chore: make yuzu REUSE compliantAndrea Pappacoda2022-07-271-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [REUSE] is a specification that aims at making file copyright information consistent, so that it can be both human and machine readable. It basically requires that all files have a header containing copyright and licensing information. When this isn't possible, like when dealing with binary assets, generated files or embedded third-party dependencies, it is permitted to insert copyright information in the `.reuse/dep5` file. Oh, and it also requires that all the licenses used in the project are present in the `LICENSES` folder, that's why the diff is so huge. This can be done automatically with `reuse download --all`. The `reuse` tool also contains a handy subcommand that analyzes the project and tells whether or not the project is (still) compliant, `reuse lint`. Following REUSE has a few advantages over the current approach: - Copyright information is easy to access for users / downstream - Files like `dist/license.md` do not need to exist anymore, as `.reuse/dep5` is used instead - `reuse lint` makes it easy to ensure that copyright information of files like binary assets / images is always accurate and up to date To add copyright information of files that didn't have it I looked up who committed what and when, for each file. As yuzu contributors do not have to sign a CLA or similar I couldn't assume that copyright ownership was of the "yuzu Emulator Project", so I used the name and/or email of the commit author instead. [REUSE]: https://reuse.software Follow-up to b2eb10382941bef0914f4a0a4685b9033440aa9f
* network: Address review commentsFearlessTobi2022-07-254-195/+195
|
* network, yuzu: Make copyright headers SPDX-compliantFearlessTobi2022-07-2510-30/+20
|
* network, yuzu: Improve variable naming and style consistencyFearlessTobi2022-07-256-30/+32
|
* yuzu_cmd: Fix compilationFearlessTobi2022-07-251-12/+0
|
* network: Move global state into a seperate classFearlessTobi2022-07-252-15/+25
| | | | Co-Authored-By: Narr the Reg <5944268+german77@users.noreply.github.com>
* common: multiplayer: Use GameInfo typegerman772022-07-253-8/+5
|
* Address second part of review commentsFearlessTobi2022-07-253-29/+14
|
* Address first part of review commentsFearlessTobi2022-07-251-1/+1
|
* Fix compilation on linux gccFearlessTobi2022-07-252-18/+19
|
* yuzu: Add ui files for multiplayer roomsFearlessTobi2022-07-254-19/+20
|
* network: Add initial files and enet dependencyFearlessTobi2022-07-2511-0/+2889
|
* Massive removal of unused modulesJames Rowe2018-01-129-1792/+0
|
* Fixed type conversion ambiguityHuw Pascoe2017-09-301-1/+1
|
* Added missing parts in libnetwork (#2838)B3n302017-08-196-36/+296
| | | | | * Network: Set and send the game information over enet Added Callbacks for RoomMember and GetMemberList to Room in preparation for web_services.