From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [216.205.24.124]) by sourceware.org (Postfix) with ESMTP id 31AA6399C021 for ; Thu, 15 Jul 2021 05:00:00 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 31AA6399C021 Received: from mail-qk1-f200.google.com (mail-qk1-f200.google.com [209.85.222.200]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-475-Bht66gNVPdWIYG_SrXlLZQ-1; Thu, 15 Jul 2021 00:59:58 -0400 X-MC-Unique: Bht66gNVPdWIYG_SrXlLZQ-1 Received: by mail-qk1-f200.google.com with SMTP id r190-20020a375dc70000b02903acea04c19fso2891410qkb.8 for ; Wed, 14 Jul 2021 21:59:58 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:references:from:organization :message-id:date:user-agent:mime-version:in-reply-to :content-language:content-transfer-encoding; bh=sQ//VOFsHGB5sswnNL3vg9tP75i5czJbdxWVej270CI=; b=TmEDqlR/jgm7DaSk1QKJ3gtlJQAT0WcvL5qJJ5HULp9xsVsPUZwf5r5uTNQgGRcbQ8 OtOe3d2Q0yQPrp9RXtJ6ANH7fESCNVS29lpJgmaF1wDD2PCQ0XssZw6DyHPXJR4+PJX4 ebDp+gMIxPUUCK1Z3eovv7/rBEKLW1sE4/7By9ugP+DICuBV3tWUr1z+/dV/pozWdVx4 5hPYfrdf565QxL8F8LNkqre5wF3KutkvuCJq1a6B+SRjgLjIGEIvpN6D/10igsz1jQh/ tuKjQrxyYEUCys5OsMdcq6qwpTB7gXRkRDUBcTPr9cC62FiSs55JQwLOwx6P09dEUq53 Kszg== X-Gm-Message-State: AOAM531A7zuEQrHA94FoG7EqPle0Rye3xYpC2RMmj5TxUV4CwQUw1aSL LxNRoeNi/UE45QowI0wcKuhhe7+M5RUxLuh49bOuxb7SL2qM0XZYZKBYy2Ligdl6XIlrtiyIBNp XOHm1/NyIgxNWjhzLM2N76oYOk2GAggjamrvOi+MQqS90eF7FCdGa5JCCjwCtA+Neu5o/MQ== X-Received: by 2002:ac8:7b52:: with SMTP id m18mr2109892qtu.131.1626325197918; Wed, 14 Jul 2021 21:59:57 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwzi9KlBBNgyEqPZS6j8frLSktQtQony+Vgw+dTo1D53ZVFATCc2B87qHbvbfVKEkanMQKQhg== X-Received: by 2002:ac8:7b52:: with SMTP id m18mr2109873qtu.131.1626325197710; Wed, 14 Jul 2021 21:59:57 -0700 (PDT) Received: from [192.168.1.16] (198-84-214-74.cpe.teksavvy.com. [198.84.214.74]) by smtp.gmail.com with ESMTPSA id j3sm1700646qth.63.2021.07.14.21.59.56 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 14 Jul 2021 21:59:57 -0700 (PDT) Subject: Re: [PATCH 03/30] resolv: Sort Makefile routines and Versions lexicographically To: Florian Weimer , libc-alpha@sourceware.org References: <79eddf954fc3cc1e1c47ce37ace2d463c3210652.1625755445.git.fweimer@redhat.com> From: Carlos O'Donell Organization: Red Hat Message-ID: Date: Thu, 15 Jul 2021 00:59:56 -0400 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.11.0 MIME-Version: 1.0 In-Reply-To: <79eddf954fc3cc1e1c47ce37ace2d463c3210652.1625755445.git.fweimer@redhat.com> X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-12.1 required=5.0 tests=BAYES_00, DKIMWL_WL_HIGH, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, NICE_REPLY_A, RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H4, RCVD_IN_MSPIKE_WL, SPF_HELO_NONE, SPF_NONE, TXREP autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 15 Jul 2021 05:00:03 -0000 On 7/8/21 10:59 AM, Florian Weimer via Libc-alpha wrote: This will make refactoring and cleanup much easier and avoid potential future conflicts. Thanks for the cleanup. OK for glibc 2.34. Tested without regression on x86_64 and i686. Reviewed-by: Carlos O'Donell Tested-by: Carlos O'Donell > --- > resolv/Makefile | 61 ++++++++++++--- > resolv/Versions | 194 ++++++++++++++++++++++++++++++++---------------- > 2 files changed, 182 insertions(+), 73 deletions(-) > > diff --git a/resolv/Makefile b/resolv/Makefile > index 1d3565d478..f14b149b31 100644 > --- a/resolv/Makefile > +++ b/resolv/Makefile > @@ -27,9 +27,21 @@ headers := resolv.h bits/types/res_state.h \ > arpa/nameser.h arpa/nameser_compat.h \ > sys/bitypes.h > > -routines := herror inet_addr inet_ntop inet_pton nsap_addr res_init \ > - res_hconf res_libc res-state res_randomid res-close \ > - resolv_context resolv_conf > +routines := \ > + herror \ > + inet_addr \ > + inet_ntop \ > + inet_pton \ > + nsap_addr \ > + res-close \ > + res-state \ > + res_hconf \ > + res_init \ > + res_libc \ > + res_randomid \ > + resolv_conf \ > + resolv_context \ > + # routines OK. YAYAYAYAY! :-) > > tests = tst-aton tst-leaks tst-inet_ntop > tests-container = tst-leaks2 > @@ -105,15 +117,37 @@ xtests += tst-resolv-qtypes > xtests += tst-resolv-rotate > endif > extra-libs-others = $(extra-libs) > -libresolv-routines := res_comp res_debug \ > - res_data res_mkquery res_query res_send \ > - inet_net_ntop inet_net_pton inet_neta base64 \ > - ns_parse ns_name ns_netint ns_ttl ns_print \ > - ns_samedomain ns_date res_enable_icmp \ > - compat-hooks compat-gethnamaddr > +libresolv-routines := \ > + base64 \ > + compat-gethnamaddr \ > + compat-hooks \ > + inet_net_ntop \ > + inet_net_pton \ > + inet_neta \ > + ns_date \ > + ns_name \ > + ns_netint \ > + ns_parse \ > + ns_print \ > + ns_samedomain \ > + ns_ttl \ > + res_comp \ > + res_data \ > + res_debug \ > + res_enable_icmp \ > + res_mkquery \ > + res_query \ > + res_send \ > + # libresolv-routines OK. > > $(libanl-routines-var) += \ > - gai_cancel gai_error gai_misc gai_notify gai_suspend getaddrinfo_a > + gai_cancel \ > + gai_error \ > + gai_misc \ > + gai_notify \ > + gai_suspend \ > + getaddrinfo_a \ > + # $(libanl-routines-var) OK. > > libanl-routines += libanl-compat > libanl-shared-only-routines += libanl-compat > @@ -121,7 +155,12 @@ libanl-shared-only-routines += libanl-compat > subdir-dirs = nss_dns > vpath %.c nss_dns > > -libnss_dns-routines := dns-host dns-network dns-canon > +libnss_dns-routines := \ > + dns-canon \ > + dns-host \ > + dns-network \ > + # libnss_dns-routines OK. > + > libnss_dns-inhibit-o = $(filter-out .os,$(object-suffixes)) > ifeq ($(build-static-nss),yes) > routines += $(libnss_dns-routines) $(libresolv-routines) > diff --git a/resolv/Versions b/resolv/Versions > index d4f6b4b819..3b5328301a 100644 > --- a/resolv/Versions > +++ b/resolv/Versions > @@ -1,115 +1,182 @@ > libc { > GLIBC_2.0 { > - _res; > - > - # helper functions > __h_errno_location; > - > - # functions used in other libraries > __res_randomid; > - > - # variables in normal name space > - h_errlist; h_nerr; > - > - # h* > - herror; hstrerror; > - > - # r* > + _res; > + h_errlist; > + h_nerr; > + herror; > + hstrerror; OK. > res_init; > } > GLIBC_2.2 { > - # r* > - __res_state; __res_init; __res_nclose; __res_ninit; _res_hconf; > + __res_init; > + __res_nclose; > + __res_ninit; > + __res_state; > + _res_hconf; OK. > } > GLIBC_2.2.3 { > %if PTHREAD_IN_LIBC > - gai_cancel; gai_error; gai_suspend; getaddrinfo_a; > + gai_cancel; > + gai_error; > + gai_suspend; > + getaddrinfo_a; OK. > %endif > } > GLIBC_2.34 { > %if PTHREAD_IN_LIBC > - gai_cancel; gai_error; gai_suspend; getaddrinfo_a; > + gai_cancel; > + gai_error; > + gai_suspend; > + getaddrinfo_a; OK. > %endif > } > GLIBC_PRIVATE { > %if !PTHREAD_IN_LIBC > __gai_sigqueue; > %endif > - > - __h_errno; __resp; > - > - __res_iclose; > + __h_errno; > __inet_aton_exact; > __inet_pton_length; > + __res_iclose; > __resolv_context_get; > - __resolv_context_get_preinit; > __resolv_context_get_override; > + __resolv_context_get_preinit; > __resolv_context_put; > + __resp; OK. > } > } > > libresolv { > GLIBC_2.0 { > - _gethtbyaddr; _gethtbyname; _gethtbyname2; _gethtent; _getlong; > - _getshort; _res_opcodes; _res_resultcodes; _sethtent; dn_expand; > - inet_net_ntop; inet_net_pton; inet_neta; res_gethostbyaddr; > - res_gethostbyname; res_gethostbyname2; res_mkquery; res_query; > - res_querydomain; res_search; res_send_setqhook; res_send_setrhook; > - # Variables > - __p_class_syms; __p_type_syms; > - # Private routines shared between libc/net, named, nslookup and others. > - __b64_ntop; __b64_pton; > - __dn_comp; __dn_count_labels; __dn_skipname; > - __fp_nquery; __fp_query; __fp_resstat; __hostalias; > - __loc_aton; __loc_ntoa; > - __p_cdname; __p_cdnname; __p_class; __p_fqname; __p_fqnname; __p_option; > - __p_query; __p_rr; __p_secstodate; __p_time; __p_type; > - __putlong; __putshort; > - __res_close; __res_dnok; __res_hnok; __res_isourserver; __res_mailok; > - __res_nameinquery; __res_ownok; __res_queriesmatch; > + __b64_ntop; > + __b64_pton; > + __dn_comp; > + __dn_count_labels; > + __dn_skipname; > + __fp_nquery; > + __fp_query; > + __fp_resstat; > + __hostalias; > + __loc_aton; > + __loc_ntoa; > + __p_cdname; > + __p_cdnname; > + __p_class; > + __p_class_syms; > + __p_fqname; > + __p_fqnname; > + __p_option; > + __p_query; > + __p_rr; > + __p_secstodate; > + __p_time; > + __p_type; > + __p_type_syms; > + __putlong; > + __putshort; > + __res_close; > + __res_dnok; > + __res_hnok; > + __res_isourserver; > + __res_mailok; > + __res_nameinquery; > + __res_ownok; > + __res_queriesmatch; > __res_send; > - __sym_ntop; __sym_ntos; __sym_ston; > + __sym_ntop; > + __sym_ntos; > + __sym_ston; > + _gethtbyaddr; > + _gethtbyname2; > + _gethtbyname; > + _gethtent; > + _getlong; > + _getshort; > + _res_opcodes; > + _res_resultcodes; > + _sethtent; > + dn_expand; > + inet_net_ntop; > + inet_net_pton; > + inet_neta; > + res_gethostbyaddr; > + res_gethostbyname2; > + res_gethostbyname; > + res_mkquery; > + res_query; > + res_querydomain; > + res_search; > + res_send_setqhook; > + res_send_setrhook; OK. > } > GLIBC_2.2 { > __dn_expand; > - __res_hostalias; __res_mkquery; __res_nmkquery; __res_nquery; > - __res_nquerydomain; __res_nsearch; __res_nsend; __res_query; > - __res_querydomain; __res_search; > + __res_hostalias; > + __res_mkquery; > + __res_nmkquery; > + __res_nquery; > + __res_nquerydomain; > + __res_nsearch; > + __res_nsend; > + __res_query; > + __res_querydomain; > + __res_search; > } > GLIBC_2.3.2 { > __p_rcode; > } > GLIBC_2.9 { > - ns_msg_getflag; > - ns_get16; ns_get32; ns_put16; ns_put32; > - ns_initparse; ns_skiprr; ns_parserr; > - ns_sprintrr; ns_sprintrrf; > - ns_format_ttl; ns_parse_ttl; > ns_datetosecs; > - ns_name_ntol; ns_name_ntop; ns_name_pton; > - ns_name_unpack; ns_name_pack; > - ns_name_uncompress; ns_name_compress; > - ns_name_skip; ns_name_rollback; > - ns_samedomain; ns_subdomain; ns_makecanon; ns_samename; > + ns_format_ttl; > + ns_get16; > + ns_get32; > + ns_initparse; > + ns_makecanon; > + ns_msg_getflag; > + ns_name_compress; > + ns_name_ntol; > + ns_name_ntop; > + ns_name_pack; > + ns_name_pton; > + ns_name_rollback; > + ns_name_skip; > + ns_name_uncompress; > + ns_name_unpack; > + ns_parse_ttl; > + ns_parserr; > + ns_put16; > + ns_put32; > + ns_samedomain; > + ns_samename; > + ns_skiprr; > + ns_sprintrr; > + ns_sprintrrf; > + ns_subdomain; OK. > } > GLIBC_PRIVATE { > - # Needed in libnss_dns. > - __ns_name_unpack; __ns_name_ntop; > - __ns_get16; __ns_get32; > + __ns_get16; > + __ns_get32; > + __ns_name_ntop; > + __ns_name_unpack; > + __res_context_hostalias; > __res_context_query; > __res_context_search; > - __res_context_hostalias; OK. > } > } > > libnss_dns { > GLIBC_PRIVATE { > - _nss_dns_gethostbyaddr_r; _nss_dns_gethostbyname2_r; > - _nss_dns_gethostbyname3_r; > - _nss_dns_gethostbyname_r; _nss_dns_getnetbyaddr_r; > - _nss_dns_getnetbyname_r; _nss_dns_getcanonname_r; > + _nss_dns_getcanonname_r; > _nss_dns_gethostbyaddr2_r; > + _nss_dns_gethostbyaddr_r; > + _nss_dns_gethostbyname2_r; > + _nss_dns_gethostbyname3_r; > _nss_dns_gethostbyname4_r; > + _nss_dns_gethostbyname_r; > + _nss_dns_getnetbyaddr_r; > + _nss_dns_getnetbyname_r; OK. > } > } > > @@ -118,7 +185,10 @@ libanl { > %if PTHREAD_IN_LIBC > __libanl_version_placeholder; > %else > - gai_cancel; gai_error; gai_suspend; getaddrinfo_a; > + gai_cancel; > + gai_error; > + gai_suspend; > + getaddrinfo_a; OK. > %endif > } > } > -- Cheers, Carlos.