Bug 1821287

Summary: nslookup / host do not honor the new search domain limits of glibc
Product: [Fedora] Fedora Reporter: Petr Sklenar <psklenar>
Component: bindAssignee: Petr Menšík <pemensik>
Status: ASSIGNED --- QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: aegorenk, anon.amish, fkrska, fweimer, jsantos, mruprich, msehnout, pemensik, pzhukov, qe-baseos-daemons, vonsch, zdohnal
Target Milestone: ---Keywords: FutureFeature, Patch, Reproducer
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Enhancement
Doc Text:
Story Points: ---
Clone Of: 1816141 Environment:
Last Closed: Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1758317, 1816141    
Bug Blocks:    

Description Petr Sklenar 2020-04-06 13:50:07 UTC
Description of problem:

nslookup only reads up until the 8th search domain in /etc/resolv.conf when searching for an answer for a certain domain.


Version-Release number of selected component (if applicable):

bind-9.11.14-2.fc31.x86_64


How reproducible:
Every time

Steps to Reproduce:
1. Add >=8 invalid search domains to 'search' directive in /etc/resolv.conf.
2. Add 'xxx.com' as the 9th search domain.
3. nslookup access / host access

Actual results:

nslookup returns NXDOMAIN

Expected results:

nslookup should return a correct answer

Additional info:


Steps to Reproduce:
1. sed -i 's/^search .*/search non-existent1.very-long-domain.fedoraproject.org non-existent2.very-long-domain.fedoraproject.org non-existent3.very-long-domain.fedoraproject.org non-existent4.very-long-domain.fedoraproject.org non-existent5.very-long-domain.fedoraproject.org non-existent6.very-long-domain.fedoraproject.org xxx xxx.com/' /etc/resolv.conf
2. [ "$(host access)" == "$(getent host access.redhat.com.)" ] && echo matches
3. sed -i 's/^search .*/search non-existent1.very-long-domain.fedoraproject.org non-existent2.very-long-domain.fedoraproject.org non-existent3.very-long-domain.fedoraproject.org non-existent4.very-long-domain.fedoraproject.org non-existent5.very-long-domain.fedoraproject.org non-existent6.very-long-domain.fedoraproject.org non-existent7.very-long-domain.fedoraproject.org non-existent8.very-long-domain.fedoraproject.org xxxxxxxxxx redhat.com/' /etc/resolv.conf

4. [ "$(host access)" == "$(getent host something.xxx.com.)" ] && echo still matches



--- Additional comment from Petr Menšík on 2019-10-04 15:09:55 CEST ---

Not even the most recent development version handles this different way. Reported upstream [1].

1. https://gitlab.isc.org/isc-projects/bind9/issues/1259

--- Additional comment from Tomáš Hozza on 2019-12-16 12:36:10 CET ---

Patch submitted to upstream in https://gitlab.isc.org/isc-projects/bind9/merge_requests/2446


--- Additional comment from Petr Menšík on 2020-03-27 19:56:55 CET ---

Upstream merge request is already pending at https://gitlab.isc.org/isc-projects/bind9/merge_requests/2446

Comment 1 Petr Menšík 2025-09-09 15:47:17 UTC
Merged upstream into development version only. Backport to 9.18 can be done now.