aboutsummaryrefslogtreecommitdiff
path: root/library.h
diff options
context:
space:
mode:
Diffstat (limited to 'library.h')
-rw-r--r--library.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/library.h b/library.h
index 017b6b2..cea9156 100644
--- a/library.h
+++ b/library.h
@@ -39,6 +39,13 @@ enum toplt {
unsigned int target_address_hash(const void *key);
int target_address_cmp(const void *key1, const void *key2);
+/* For handling -l. */
+struct library_exported_name {
+ struct library_exported_name *next;
+ const char *name;
+ int own_name : 1;
+};
+
struct library_symbol {
struct library_symbol *next;
struct library *lib;
@@ -134,6 +141,12 @@ struct library {
* symbols that don't have a breakpoint attached (yet). */
struct library_symbol *symbols;
+ /* List of names that this library implements, and that match
+ * -l filter. Each time a new library is mapped, its list of
+ * exports is examined, and corresponding PLT slots are
+ * enabled. */
+ struct library_exported_name *exported_names;
+
const char *soname;
const char *pathname;