diff --git a/include/libXbSymbolDatabase.h b/include/libXbSymbolDatabase.h index 26a4a914..628bbdf5 100644 --- a/include/libXbSymbolDatabase.h +++ b/include/libXbSymbolDatabase.h @@ -46,13 +46,14 @@ extern "C" { #define LIB_XGRAPHC "XGRAPHC" #define SEC_XGRPH "XGRPH" #define LIB_XNET "XNET" +#define SEC_XNET LIB_XNET #define LIB_XNETN "XNETN" #define LIB_XNETS "XNETS" #define LIB_XONLINE "XONLINE" #define SEC_XONLINE LIB_XONLINE +#define LIB_XONLINEN "XONLINEN" #define LIB_XONLINES "XONLINES" #define LIB_XONLINLS "XONLINLS" -#define SEC_XNET "XNET" #define XBSDBLIB_D3D8 (1 << 0) #define XBSDBLIB_D3D8LTCG (1 << 1) @@ -66,15 +67,16 @@ extern "C" { #define XBSDBLIB_XNETN (1 << 9) #define XBSDBLIB_XNETS (1 << 10) #define XBSDBLIB_XONLINE (1 << 11) -#define XBSDBLIB_XONLINES (1 << 12) -#define XBSDBLIB_XONLINLS (1 << 13) +#define XBSDBLIB_XONLINEN (1 << 12) +#define XBSDBLIB_XONLINES (1 << 13) +#define XBSDBLIB_XONLINLS (1 << 14) // clang-format off // TODO: Need to find a way keep below intact. #define XBSDBLIB_ALL ( XBSDBLIB_D3D8 | XBSDBLIB_D3D8LTCG | XBSDBLIB_D3DX8 | XBSDBLIB_DSOUND \ | XBSDBLIB_JVS | XBSDBLIB_XACTENG | XBSDBLIB_XAPILIB | XBSDBLIB_XGRAPHC \ | XBSDBLIB_XNET | XBSDBLIB_XNETN | XBSDBLIB_XNETS | XBSDBLIB_XONLINE \ - | XBSDBLIB_XONLINES | XBSDBLIB_XONLINLS) + | XBSDBLIB_XONLINEN | XBSDBLIB_XONLINES | XBSDBLIB_XONLINLS) // clang-format on typedef enum _xb_output_message { diff --git a/src/lib/internal_functions.h b/src/lib/internal_functions.h index 76ee2314..023fe183 100644 --- a/src/lib/internal_functions.h +++ b/src/lib/internal_functions.h @@ -631,6 +631,7 @@ static eLibraryType XbSDBi_GetLibraryType(uint32_t library) case XBSDBLIB_XGRAPHC: return LT_GRAPHIC; case XBSDBLIB_XONLINE: + case XBSDBLIB_XONLINEN: case XBSDBLIB_XONLINES: case XBSDBLIB_XONLINLS: case XBSDBLIB_XNET: diff --git a/src/lib/libXbSymbolDatabase.c b/src/lib/libXbSymbolDatabase.c index 3b0e9287..bdb743a8 100644 --- a/src/lib/libXbSymbolDatabase.c +++ b/src/lib/libXbSymbolDatabase.c @@ -181,13 +181,13 @@ SymbolDatabaseList SymbolDBList[] = { // TODO: Do we need to keep SEC_XNET in here? // TODO: Need to find out which function is only part of XOnlines. // Fun fact, XONLINES are split into 2 header sections. - { XBSDBLIB_XONLINE | XBSDBLIB_XONLINES | XBSDBLIB_XONLINLS, { SEC_TEXT, SEC_XONLINE, SEC_XNET, SEC_FLASHROM }, &XONLINE_OOVPA }, + { XBSDBLIB_XONLINE | XBSDBLIB_XONLINEN | XBSDBLIB_XONLINES | XBSDBLIB_XONLINLS, { SEC_TEXT, SEC_XONLINE, SEC_XNET, SEC_FLASHROM }, &XONLINE_OOVPA }, // Added SEC_TEXT just in case. // TODO: Need to find out which function is only part of XNets. // XNETS only has XNET, might be true. // XNETN's test case: Stake - { XBSDBLIB_XNET | XBSDBLIB_XNETS | XBSDBLIB_XNETN | XBSDBLIB_XONLINE | XBSDBLIB_XONLINES | XBSDBLIB_XONLINLS, { SEC_TEXT, SEC_XNET, SEC_FLASHROM }, &XNET_OOVPA }, + { XBSDBLIB_XNET | XBSDBLIB_XNETS | XBSDBLIB_XNETN | XBSDBLIB_XONLINE | XBSDBLIB_XONLINEN | XBSDBLIB_XONLINES | XBSDBLIB_XONLINLS, { SEC_TEXT, SEC_XNET, SEC_FLASHROM }, &XNET_OOVPA }, }; // ****************************************************************** @@ -355,6 +355,9 @@ const char* XbSDB_LibraryToString(uint32_t library_flag) case XBSDBLIB_XONLINE: { return LIB_XONLINE; } + case XBSDBLIB_XONLINEN: { + return LIB_XONLINEN; + } case XBSDBLIB_XONLINES: { return LIB_XONLINES; } @@ -467,6 +470,9 @@ uint32_t XbSDB_LibraryToFlag(const char* library_name) if (strncmp(library_name, LIB_XONLINE, 8) == 0) { return XBSDBLIB_XONLINE; } + if (strncmp(library_name, LIB_XONLINEN, 8) == 0) { + return XBSDBLIB_XONLINEN; + } if (strncmp(library_name, LIB_XONLINES, 8) == 0) { return XBSDBLIB_XONLINES; } @@ -489,6 +495,7 @@ uint32_t XbSDB_GetLibraryDependencies(uint32_t library_flag, XbSDBLibraryHeader return XBSDBLIB_DSOUND; #if 0 // Disabled since internal scan will scan XNET(N|S) library anyway. case XBSDBLIB_XONLINE: + case XBSDBLIB_XONLINEN: case XBSDBLIB_XONLINES: case XBSDBLIB_XONLINLS: flag_dependencies = XBSDBLIB_XNET | XBSDBLIB_XNETN | XBSDBLIB_XNETS; diff --git a/src/test/libverify.cpp b/src/test/libverify.cpp index de774836..2269de64 100644 --- a/src/test/libverify.cpp +++ b/src/test/libverify.cpp @@ -623,11 +623,11 @@ void run_test_verify_symbols(lib_versions& lib_vers, getLibraryXNET(lib_db); constexpr auto XBSDBLIB_XNET_flags = XBSDBLIB_XNET | XBSDBLIB_XNETS | XBSDBLIB_XNETN | - XBSDBLIB_XONLINE | XBSDBLIB_XONLINES | XBSDBLIB_XONLINLS; + XBSDBLIB_XONLINE | XBSDBLIB_XONLINEN | XBSDBLIB_XONLINES | XBSDBLIB_XONLINLS; run_test_verify_symbol(symbols_list, LIB_XNET, lib_vers.xnet, XBSDBLIB_XNET_flags, lib_db, full_lib_count, error_count); getLibraryXONLINE(lib_db); constexpr auto XBSDBLIB_XONLINE_flags = - XBSDBLIB_XONLINE | XBSDBLIB_XONLINES | XBSDBLIB_XONLINLS; + XBSDBLIB_XONLINE | XBSDBLIB_XONLINEN | XBSDBLIB_XONLINES | XBSDBLIB_XONLINLS; run_test_verify_symbol(symbols_list, LIB_XONLINE, lib_vers.xonline, XBSDBLIB_XONLINE_flags, lib_db, full_lib_count, error_count); } diff --git a/src/test/main.cpp b/src/test/main.cpp index 5e650882..f374169b 100644 --- a/src/test/main.cpp +++ b/src/test/main.cpp @@ -511,6 +511,7 @@ static bool VerifyXbeIsBuiltWithXDK(const xbe_header* pXbeHeader, } break; case XBSDBLIB_XONLINE: + case XBSDBLIB_XONLINEN: case XBSDBLIB_XONLINES: case XBSDBLIB_XONLINLS: lib_vers.xonline = pLibraryVersion[i].wBuildVersion;