From 0d3bc8a93018675df53cac34f18a833d3debb6ee Mon Sep 17 00:00:00 2001 From: Konstantin Belousov Date: Thu, 26 Nov 2009 13:57:20 +0000 Subject: Implement rtld part of the support for -z nodlopen (see ld(1)). Reviewed by: kan MFC after: 3 weeks --- libexec/rtld-elf/rtld.h | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'libexec/rtld-elf/rtld.h') diff --git a/libexec/rtld-elf/rtld.h b/libexec/rtld-elf/rtld.h index 06086b4b92e3..6f51d7db7820 100644 --- a/libexec/rtld-elf/rtld.h +++ b/libexec/rtld-elf/rtld.h @@ -218,6 +218,7 @@ typedef struct Struct_Obj_Entry { bool phdr_alloc : 1; /* Phdr is allocated and needs to be freed. */ bool z_origin : 1; /* Process rpath and soname tokens */ bool z_nodelete : 1; /* Do not unload the object and dependencies */ + bool z_noopen : 1; /* Do not load on dlopen */ bool ref_nodel : 1; /* Refcount increased to prevent dlclose */ bool init_scanned: 1; /* Object is already on init list. */ bool on_fini_list: 1; /* Object is already on fini list. */ @@ -240,6 +241,10 @@ typedef struct Struct_Obj_Entry { #define SYMLOOK_DLSYM 0x02 /* Return newes versioned symbol. Used by dlsym. */ +/* Flags for load_object(). */ +#define RTLD_LO_NOLOAD 0x01 /* dlopen() specified RTLD_NOLOAD */ +#define RTLD_LO_DLOPEN 0x02 /* load_object() called from dlopen(). */ + /* * Symbol cache entry used during relocation to avoid multiple lookups * of the same symbol. -- cgit v1.3