RTLD_SELF
case (uintptr_t)RTLD_SELF:
if ((libproc_debugp = dlsym(RTLD_SELF, "_libproc_debug")) != NULL)
if ((libctf_debugp = dlsym(RTLD_SELF, "_libctf_debug")) != NULL)
if ((rd_logp = (void (*)())dlsym(RTLD_SELF, "rd_log")) != NULL)
if (dlinfo(RTLD_SELF, RTLD_DI_ORIGIN, &origin_root) == -1)
if (dlinfo(RTLD_SELF, RTLD_DI_ORIGIN, (void *)buffer) == -1)
} else if (handle == RTLD_SELF) {
(handle == RTLD_SELF) || (handle == RTLD_PROBE))
(handle != RTLD_SELF) && (handle != RTLD_PROBE) &&
if (handle == RTLD_SELF) {
if (dlinfo(RTLD_SELF, RTLD_DI_ARGSINFO, &argsinfo) == -1)
if (dlinfo(RTLD_SELF, RTLD_DI_ARGSINFO, &args) < 0 ||
if (dlinfo(RTLD_SELF, RTLD_DI_ARGSINFO, &args) < 0)
if (dlinfo(RTLD_SELF, RTLD_DI_LINKMAP, &lmp) == -1 || lmp == NULL) {
if (dlinfo(RTLD_SELF, RTLD_DI_LMID, &lmid) == -1) {