diff options
author | kib <kib@FreeBSD.org> | 2009-11-26 13:57:20 +0000 |
---|---|---|
committer | kib <kib@FreeBSD.org> | 2009-11-26 13:57:20 +0000 |
commit | 8f8a9dcd1713ee26a3f4d2d33ff72b08588a6636 (patch) | |
tree | a464d37b19cfa5fbdc7be41babd28cbc81840e61 /libexec/rtld-elf/rtld.h | |
parent | 0dba9623fa5f6a9b3345180df9064e7a12807f33 (diff) | |
download | FreeBSD-src-8f8a9dcd1713ee26a3f4d2d33ff72b08588a6636.zip FreeBSD-src-8f8a9dcd1713ee26a3f4d2d33ff72b08588a6636.tar.gz |
Implement rtld part of the support for -z nodlopen (see ld(1)).
Reviewed by: kan
MFC after: 3 weeks
Diffstat (limited to 'libexec/rtld-elf/rtld.h')
-rw-r--r-- | libexec/rtld-elf/rtld.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/libexec/rtld-elf/rtld.h b/libexec/rtld-elf/rtld.h index 06086b4..6f51d7d 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. |