diff options
author | Aaron Roney <twitchax@gmail.com> | 2023-04-19 07:37:30 +0200 |
---|---|---|
committer | Aaron Roney <twitchax@gmail.com> | 2023-04-19 07:37:30 +0200 |
commit | 34d0d94df0749850f7e3e77620a73c5692ad3b24 (patch) | |
tree | dbff1fb1e43e2a794aeb175c1d81489ee2083d43 /src/dedicated_room/yuzu_room.cpp | |
parent | Merge pull request #10030 from Wollnashorn/botw-amd-fix (diff) | |
download | yuzu-34d0d94df0749850f7e3e77620a73c5692ad3b24.tar yuzu-34d0d94df0749850f7e3e77620a73c5692ad3b24.tar.gz yuzu-34d0d94df0749850f7e3e77620a73c5692ad3b24.tar.bz2 yuzu-34d0d94df0749850f7e3e77620a73c5692ad3b24.tar.lz yuzu-34d0d94df0749850f7e3e77620a73c5692ad3b24.tar.xz yuzu-34d0d94df0749850f7e3e77620a73c5692ad3b24.tar.zst yuzu-34d0d94df0749850f7e3e77620a73c5692ad3b24.zip |
Diffstat (limited to 'src/dedicated_room/yuzu_room.cpp')
-rw-r--r-- | src/dedicated_room/yuzu_room.cpp | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/src/dedicated_room/yuzu_room.cpp b/src/dedicated_room/yuzu_room.cpp index 359891883..e1cf8a76d 100644 --- a/src/dedicated_room/yuzu_room.cpp +++ b/src/dedicated_room/yuzu_room.cpp @@ -49,6 +49,7 @@ static void PrintHelp(const char* argv0) { " [options] <filename>\n" "--room-name The name of the room\n" "--room-description The room description\n" + "--bind-address The bind address for the room\n" "--port The port used for the room\n" "--max_members The maximum number of players for this room\n" "--password The password for the room\n" @@ -195,6 +196,7 @@ int main(int argc, char** argv) { std::string web_api_url; std::string ban_list_file; std::string log_file = "yuzu-room.log"; + std::string bind_address; u64 preferred_game_id = 0; u32 port = Network::DefaultRoomPort; u32 max_members = 16; @@ -203,6 +205,7 @@ int main(int argc, char** argv) { static struct option long_options[] = { {"room-name", required_argument, 0, 'n'}, {"room-description", required_argument, 0, 'd'}, + {"bind-address", required_argument, 0, 's'}, {"port", required_argument, 0, 'p'}, {"max_members", required_argument, 0, 'm'}, {"password", required_argument, 0, 'w'}, @@ -222,7 +225,7 @@ int main(int argc, char** argv) { InitializeLogging(log_file); while (optind < argc) { - int arg = getopt_long(argc, argv, "n:d:p:m:w:g:u:t:a:i:l:hv", long_options, &option_index); + int arg = getopt_long(argc, argv, "n:d:s:p:m:w:g:u:t:a:i:l:hv", long_options, &option_index); if (arg != -1) { switch (static_cast<char>(arg)) { case 'n': @@ -231,6 +234,9 @@ int main(int argc, char** argv) { case 'd': room_description.assign(optarg); break; + case 's': + bind_address.assign(optarg); + break; case 'p': port = strtoul(optarg, &endarg, 0); break; @@ -295,6 +301,9 @@ int main(int argc, char** argv) { PrintHelp(argv[0]); return -1; } + if (bind_address.empty()) { + LOG_INFO(Network, "Bind address is empty: defaulting to 0.0.0.0"); + } if (port > UINT16_MAX) { LOG_ERROR(Network, "Port needs to be in the range 0 - 65535!"); PrintHelp(argv[0]); @@ -358,7 +367,7 @@ int main(int argc, char** argv) { if (auto room = network.GetRoom().lock()) { AnnounceMultiplayerRoom::GameInfo preferred_game_info{.name = preferred_game, .id = preferred_game_id}; - if (!room->Create(room_name, room_description, "", port, password, max_members, username, + if (!room->Create(room_name, room_description, bind_address, port, password, max_members, username, preferred_game_info, std::move(verify_backend), ban_list, enable_yuzu_mods)) { LOG_INFO(Network, "Failed to create room: "); |