From owner-cvs-all@FreeBSD.ORG Tue Sep 19 12:47:13 2006 Return-Path: X-Original-To: cvs-all@FreeBSD.org Delivered-To: cvs-all@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D182216A412; Tue, 19 Sep 2006 12:47:13 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 54BC843D5E; Tue, 19 Sep 2006 12:47:13 +0000 (GMT) (envelope-from kib@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k8JClDhQ048714; Tue, 19 Sep 2006 12:47:13 GMT (envelope-from kib@repoman.freebsd.org) Received: (from kib@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k8JClDaT048713; Tue, 19 Sep 2006 12:47:13 GMT (envelope-from kib) Message-Id: <200609191247.k8JClDaT048713@repoman.freebsd.org> From: Konstantin Belousov Date: Tue, 19 Sep 2006 12:47:13 +0000 (UTC) To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org X-FreeBSD-CVS-Branch: HEAD Cc: Subject: cvs commit: src/libexec/rtld-elf rtld.c X-BeenThere: cvs-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: CVS commit messages for the entire tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 19 Sep 2006 12:47:13 -0000 kib 2006-09-19 12:47:13 UTC FreeBSD src repository Modified files: libexec/rtld-elf rtld.c Log: Fix the buggy rev. 1.117. dagmembers are only initialized for dlopen'ed dso that are actually loading. If dso a.so depends on b.so, then dlsym with handle from dlopen("b.so") will fail unconditionally. Correct implementation shall use the Obj_Entry.needed list to walk dependencies DAG. Test provided by: jkim Tested (prev. version) by: jkim, Nicolas Blais , h.blanke at chello nl Pointy hat to: kib Approved by: kan (mentor) Revision Changes Path 1.118 +63 -5 src/libexec/rtld-elf/rtld.c