mirror of
https://github.com/acidicoala/SmokeAPI.git
synced 2026-01-24 21:42:53 -05:00
Refactored linux exports generator with inja
This commit is contained in:
@@ -213,17 +213,7 @@ namespace smoke_api {
|
||||
original_steamapi_handle = kb::lib::load_original_library(self_path, STEAM_API_MODULE);
|
||||
|
||||
#ifdef KB_LINUX
|
||||
// We need to enable writing into the instruction memory
|
||||
// TODO: Move to generated file
|
||||
const auto code_section = kb::lib::get_section_or_throw(module_handle, kb::lib::CODE_SECTION);
|
||||
PLH::MemAccessor mem_accessor;
|
||||
PLH::MemoryProtector const protector(
|
||||
reinterpret_cast<uint64_t>(code_section.start_address),
|
||||
code_section.size,
|
||||
PLH::ProtFlag::RWX,
|
||||
mem_accessor
|
||||
);
|
||||
proxy_exports::init(original_steamapi_handle);
|
||||
proxy_exports::init(module_handle, original_steamapi_handle);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
@@ -2,12 +2,6 @@
|
||||
|
||||
#include "smoke_api/types.hpp"
|
||||
|
||||
constexpr auto STEAM_APPS = "STEAMAPPS_INTERFACE_VERSION";
|
||||
constexpr auto STEAM_CLIENT = "SteamClient";
|
||||
constexpr auto STEAM_HTTP = "STEAMHTTP_INTERFACE_VERSION";
|
||||
constexpr auto STEAM_USER = "SteamUser";
|
||||
constexpr auto STEAM_INVENTORY = "STEAMINVENTORY_INTERFACE_V";
|
||||
constexpr auto STEAM_GAME_SERVER = "SteamGameServer";
|
||||
|
||||
// IMPORTANT: DLL_EXPORT is hardcoded in windows_exports_generator.cpp & linux_exports_generator.cpp,
|
||||
// so any name changes here must be reflected there as well.
|
||||
|
||||
@@ -9,7 +9,6 @@
|
||||
#include "smoke_api/steamclient/steamclient.hpp"
|
||||
|
||||
#include "steam_api/steam_interfaces.hpp"
|
||||
#include "smoke_api/smoke_api.hpp"
|
||||
#include "virtuals/steam_api_virtuals.hpp"
|
||||
|
||||
namespace {
|
||||
@@ -37,7 +36,7 @@ namespace {
|
||||
|
||||
return {
|
||||
{
|
||||
STEAM_APPS,
|
||||
"STEAMAPPS_INTERFACE_VERSION",
|
||||
interface_data_t{
|
||||
.fallback_version = "STEAMAPPS_INTERFACE_VERSION008",
|
||||
.entry_map = {
|
||||
@@ -49,7 +48,7 @@ namespace {
|
||||
}
|
||||
},
|
||||
{
|
||||
STEAM_CLIENT,
|
||||
steam_interfaces::STEAM_CLIENT,
|
||||
interface_data_t{
|
||||
.fallback_version = "SteamClient021",
|
||||
.entry_map = {
|
||||
@@ -61,7 +60,7 @@ namespace {
|
||||
}
|
||||
},
|
||||
{
|
||||
STEAM_GAME_SERVER,
|
||||
"SteamGameServer",
|
||||
interface_data_t{
|
||||
.fallback_version = "SteamGameServer015",
|
||||
.entry_map = {
|
||||
@@ -70,7 +69,7 @@ namespace {
|
||||
}
|
||||
},
|
||||
{
|
||||
STEAM_HTTP,
|
||||
"STEAMHTTP_INTERFACE_VERSION",
|
||||
interface_data_t{
|
||||
.fallback_version = "STEAMHTTP_INTERFACE_VERSION003",
|
||||
.entry_map = {
|
||||
@@ -81,7 +80,7 @@ namespace {
|
||||
}
|
||||
},
|
||||
{
|
||||
STEAM_INVENTORY,
|
||||
"STEAMINVENTORY_INTERFACE_V",
|
||||
interface_data_t{
|
||||
.fallback_version = "STEAMINVENTORY_INTERFACE_V003",
|
||||
.entry_map = {
|
||||
@@ -96,7 +95,7 @@ namespace {
|
||||
}
|
||||
},
|
||||
{
|
||||
STEAM_USER,
|
||||
"SteamUser",
|
||||
interface_data_t{
|
||||
.fallback_version = "SteamUser023",
|
||||
.entry_map = {
|
||||
|
||||
@@ -9,6 +9,8 @@
|
||||
)
|
||||
|
||||
namespace steam_interfaces {
|
||||
constexpr auto STEAM_CLIENT = "SteamClient";
|
||||
|
||||
void hook_virtuals(const void* interface_ptr, const std::string& version_string);
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user