about summary refs log tree commit diff stats
path: root/src/include
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2022-03-04 14:41:17 +0100
committerptitSeb <sebastien.chev@gmail.com>2022-03-04 14:41:17 +0100
commit9d65062d35381320c4b0b82b012936ecf97f8ba3 (patch)
treea5666b024e6f8b67305c305fb8a7146b6ecd6cec /src/include
parent2bd78e25fd992f0e1f4f98d1ab0c2027d60def7f (diff)
downloadbox64-9d65062d35381320c4b0b82b012936ecf97f8ba3.tar.gz
box64-9d65062d35381320c4b0b82b012936ecf97f8ba3.zip
Various changes and improvement centered around steam (but still not good enough)
Diffstat (limited to 'src/include')
-rwxr-xr-xsrc/include/box64context.h2
-rwxr-xr-xsrc/include/elfloader.h2
-rwxr-xr-xsrc/include/librarian.h2
3 files changed, 5 insertions, 1 deletions
diff --git a/src/include/box64context.h b/src/include/box64context.h
index 9d660664..371fdce3 100755
--- a/src/include/box64context.h
+++ b/src/include/box64context.h
@@ -15,6 +15,7 @@ typedef struct bridge_s bridge_t;
 typedef struct dlprivate_s dlprivate_t;
 typedef struct kh_symbolmap_s kh_symbolmap_t;
 typedef struct library_s library_t;
+typedef struct linkmap_s linkmap_t;
 typedef struct kh_threadstack_s kh_threadstack_t;
 typedef struct atfork_fnc_s {
     uintptr_t prepare;
@@ -154,6 +155,7 @@ typedef struct box64context_s {
     library_t           *pulse;
     library_t           *d3dadapter9;
     library_t           *libglu;
+    linkmap_t           *linkmap;
 
     int                 deferedInit;
     elfheader_t         **deferedInitList;
diff --git a/src/include/elfloader.h b/src/include/elfloader.h
index 4e06546b..86efe061 100755
--- a/src/include/elfloader.h
+++ b/src/include/elfloader.h
@@ -64,4 +64,6 @@ int SameVersionnedSymbol(const char* name1, int ver1, const char* vername1, cons
 
 void* GetNativeSymbolUnversionned(void* lib, const char* name);
 
+void AddMainElfToLinkmap(elfheader_t* lib);
+
 #endif //__ELF_LOADER_H_
diff --git a/src/include/librarian.h b/src/include/librarian.h
index a135edf5..d2f0740c 100755
--- a/src/include/librarian.h
+++ b/src/include/librarian.h
@@ -37,7 +37,7 @@ int GetNoWeakSymbolStartEnd(lib_t *maplib, const char* name, uintptr_t* start, u
 elfheader_t* GetGlobalSymbolElf(lib_t *maplib, const char* name, int version, const char* vername);
 int IsGlobalNoWeakSymbolInNative(lib_t *maplib, const char* name, int version, const char* vername);
 
-const char* FindSymbolName(lib_t *maplib, void* p, void** start, uint64_t* sz, const char** libname, void** base);
+const char* FindSymbolName(lib_t *maplib, void* p, void** start, uint64_t* sz, const char** libname, void** base, library_t** lib);
 
 void AddOffsetSymbol(lib_t *maplib, void* offs, const char* name);
 const char* GetNameOffset(lib_t *maplib, void* offs);