From cbadd82b21a85713972079f89bd6a91598016915 Mon Sep 17 00:00:00 2001 From: CraftyBoss <43161115+CraftyBoss@users.noreply.github.com> Date: Sun, 19 Jun 2022 23:56:37 -0700 Subject: [PATCH] Revert "remove fixed buffer size from logger (+ run clang-format)" --- source/server/logger.cpp | 72 +++++++++++++++++----------------------- 1 file changed, 31 insertions(+), 41 deletions(-) diff --git a/source/server/logger.cpp b/source/server/logger.cpp index d63d62b..8291219 100644 --- a/source/server/logger.cpp +++ b/source/server/logger.cpp @@ -1,26 +1,25 @@ #include "logger.hpp" #include "helpers.hpp" #include "nn/result.h" -#include "nn/util.h" -#include "nx/svc.h" Logger* Logger::sInstance = nullptr; void Logger::createInstance() { -#ifdef SERVERIP + #ifdef SERVERIP sInstance = new Logger(TOSTRING(SERVERIP), 3080, "MainLogger"); -#else + #else sInstance = new Logger(0, 3080, "MainLogger"); -#endif + #endif } nn::Result Logger::init(const char* ip, u16 port) { + sock_ip = ip; - + this->port = port; - - in_addr hostAddress = {0}; - sockaddr serverAddress = {0}; + + in_addr hostAddress = { 0 }; + sockaddr serverAddress = { 0 }; if (this->socket_log_state != SOCKET_LOG_UNINITIALIZED) return -1; @@ -28,24 +27,23 @@ nn::Result Logger::init(const char* ip, u16 port) { nn::nifm::Initialize(); nn::nifm::SubmitNetworkRequest(); - while (nn::nifm::IsNetworkRequestOnHold()) { - } + while (nn::nifm::IsNetworkRequestOnHold()) { } -// emulators make this return false always, so skip it during init -#ifndef EMU + // emulators make this return false always, so skip it during init + #ifndef EMU if (!nn::nifm::IsNetworkAvailable()) { this->socket_log_state = SOCKET_LOG_UNAVAILABLE; return -1; } -#endif - + #endif + if ((this->socket_log_socket = nn::socket::Socket(2, 1, 0)) < 0) { this->socket_log_state = SOCKET_LOG_UNAVAILABLE; return -1; } - + nn::socket::InetAton(this->sock_ip, &hostAddress); serverAddress.address = hostAddress; @@ -54,13 +52,11 @@ nn::Result Logger::init(const char* ip, u16 port) { nn::Result result; - if ((result = - nn::socket::Connect(this->socket_log_socket, &serverAddress, sizeof(serverAddress))) - .isFailure()) { + if ((result = nn::socket::Connect(this->socket_log_socket, &serverAddress, sizeof(serverAddress))).isFailure()) { this->socket_log_state = SOCKET_LOG_UNAVAILABLE; return result; } - + this->socket_log_state = SOCKET_LOG_CONNECTED; this->isDisableName = false; @@ -68,7 +64,7 @@ nn::Result Logger::init(const char* ip, u16 port) { return 0; } -void Logger::log(const char* fmt, va_list args) { // impl for replacing seads system::print +void Logger::log(const char *fmt, va_list args) { // impl for replacing seads system::print if (!sInstance) return; char buf[0x500]; @@ -77,7 +73,7 @@ void Logger::log(const char* fmt, va_list args) { // impl for replacing seads s } } -s32 Logger::read(char* out) { +s32 Logger::read(char *out) { return this->socket_read_char(out); } @@ -87,35 +83,29 @@ void Logger::log(const char* fmt, ...) { va_list args; va_start(args, fmt); - size_t bufSize = nn::util::VSNPrintf(nullptr, 0, fmt, args); - size_t prefixSize = bufSize += 3 /* "[] " */ + strlen(sInstance->sockName); - if (!sInstance->isDisableName) - bufSize += prefixSize; - char buf[bufSize]; + char buf[0x500]; - if (sInstance->isDisableName) - nn::util::VSNPrintf(buf, bufSize, fmt, args); - else { - nn::util::VSNPrintf(buf + prefixSize, bufSize - prefixSize, fmt, args); - nn::util::SNPrintf(buf, prefixSize, "[%s] ", sInstance->sockName); + if (nn::util::VSNPrintf(buf, sizeof(buf), fmt, args) > 0) { + if (!sInstance->isDisableName) { + char prefix[0x510]; + nn::util::SNPrintf(prefix, sizeof(prefix), "[%s] %s", sInstance->sockName, buf); + sInstance->socket_log(prefix); + } else { + sInstance->socket_log(buf); + } } - sInstance->socket_log(buf); -#ifdef EMU - svcOutputDebugString(buf, bufSize); -#endif - va_end(args); } bool Logger::pingSocket() { - return socket_log("ping") > 0; // if value is greater than zero, than the socket recieved our - // message, otherwise the connection was lost. + return socket_log("ping") > 0; // if value is greater than zero, than the socket recieved our message, otherwise the connection was lost. } void tryInitSocket() { __asm("STR X20, [X8,#0x18]"); -#ifdef DEBUGLOG + #ifdef DEBUGLOG Logger::createInstance(); // creates a static instance for debug logger -#endif + #endif } +