From patchwork Fri Dec 22 13:05:28 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Florian Weimer X-Patchwork-Id: 25074 Received: (qmail 17915 invoked by alias); 22 Dec 2017 13:05:33 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Delivered-To: mailing list libc-alpha@sourceware.org Received: (qmail 17893 invoked by uid 89); 22 Dec 2017 13:05:32 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-25.9 required=5.0 tests=BAYES_00, GIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3, KAM_LAZY_DOMAIN_SECURITY, SPF_HELO_PASS, T_RP_MATCHES_RCVD autolearn=ham version=3.3.2 spammy= X-HELO: mx1.redhat.com To: GNU C Library From: Florian Weimer Subject: Proposal: Deprecate static dlopen Message-ID: Date: Fri, 22 Dec 2017 14:05:28 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.5.0 MIME-Version: 1.0 See this thread for some background: https://sourceware.org/ml/libc-alpha/2017-12/msg00521.html The only useful application for dlopen is access to NSS functionality because static dlopen binaries are more tightly tied to a specific glibc version than dynamically linked binaries. If we provide NSS access through a helper program (e.g., a special mode of getent), then the need for dlopen goes away, and static linking even becomes more usable. Thanks, Florian commit f70309a186e5ab045c9808ff10ca9ba5eb9f6b58 Author: Florian Weimer Date: Fri Dec 22 14:03:00 2017 +0100 NEWS: Deprecate static dlopen diff --git a/NEWS b/NEWS index 0a162f6643..d8e4c890c3 100644 --- a/NEWS +++ b/NEWS @@ -71,6 +71,10 @@ Major new features: Deprecated and removed features, and other changes affecting compatibility: +* Support for statically linked applications which call dlopen is deprecated + and will be removed in a future version of glibc. Applications which call + dlopen need to be linked dynamically instead. + * Support for old programs which use internal stdio data structures and functions is deprecated. This includes programs which use the C++ streams provided by libstdc++ in GCC 2.95. Programs which use the internal