resolvconf(8): misleading description of dns-* options

Bug #999337 reported by Nathan Stratton Treadway
14
This bug affects 2 people
Affects Status Importance Assigned to Milestone
resolvconf (Debian)
Fix Released
Undecided
Unassigned
resolvconf (Ubuntu)
Fix Released
Undecided
Stéphane Graber
Quantal
Fix Released
Undecided
Stéphane Graber

Bug Description

I noticed a minor discrepancy between the resolvconf documentation and "reality".

On the one hand, the resolvconf(8) man page's discussion about the /etc/network/interfaces file says:

   For each other valid resolv.conf(5) configuration option, you can include,
   in the stanza, one line beginning with that option name with a dns- prefix.

, and the resolv.conf(5) page lists the following configuration options: "nameserver", "domain", "search", "sortlist", and "options".

On the other hand, the /etc/network/if-up.d/000resolvconf file actually only includes support for the first four of those configuration options -- that is, support for the "options" option is not included.

(The resolvconf(8) and 000resolvconf files I'm looking at come from resolvconf 1.63ubuntu11 (Precise).)

Tags: patch
Revision history for this message
Nathan Stratton Treadway (nathanst) wrote :

Given that actually supporting the "options" resolv.conf option isn't all that easy (it would require having the update.d/libc script combine all the "options" lines from all interfaces, and somehow dealing with any duplicate options found, etc.), I'm guessing that the best resolution here is to edit resolvconf(8) so that it just lists explicitly the dns-* options that are supported in the interfaces file (and only refer to resolv.conf(5) as a source of additional details about how the resolver library handles each of those specific options).

(Related to the discussion in LP: #990660, this revised "ifup" description could also include some sort of mention that the "dns-domain" and "dns-search" options are merged together by the update.d/libc processing.)

summary: - resolveconf doesn't support "dns-options" in network/interfaces
+ misleading resolvconf(8) discussion r.e. supported network/interfaces
+ dns-* options
Revision history for this message
Thomas Hood (jdthood) wrote : Re: misleading resolvconf(8) discussion r.e. supported network/interfaces dns-* options

Thanks for reporting this. Yes, the manpage should be changed so that it explicitly lists only "nameservers", "search" and "sortlist". (The "domain" option is deprecated in favor of "search". The "options" option belongs in /etc/resolvconf/resolv.conf.d/base.)

I will make this change to the Debian package, version 1.66. I will post the patch here in case the Ubuntu maintainers want to include the fix before 1.66 gets merged.

Changed in resolvconf (Ubuntu):
status: New → Confirmed
Revision history for this message
Thomas Hood (jdthood) wrote :

Update: Nathan and I are editing resolvconf(8).

summary: - misleading resolvconf(8) discussion r.e. supported network/interfaces
- dns-* options
+ resolvconf(8): misleading description of dns-* options
Thomas Hood (jdthood)
Changed in resolvconf (Ubuntu):
status: Confirmed → In Progress
Revision history for this message
Thomas Hood (jdthood) wrote :

Nathan and I have come up with an improved version of the man page. I attach it here in case the Ubuntu maintainers want to include it without having to wait for the new Debian package to appear. The attached file is the man page for the Debian package, so it still needs to be patched for Ubuntu, e.g., to replace references to "/etc/resolvconf/run/resolv.conf" to "/run/resolvconf/resolv.conf".

Revision history for this message
Thomas Hood (jdthood) wrote :
Revision history for this message
Ubuntu Foundations Team Bug Bot (crichton) wrote :

The attachment "new manpage as diff from debian 1.65" of this bug report has been identified as being a patch. The ubuntu-reviewers team has been subscribed to the bug report so that they can review the patch. In the event that this is in fact not a patch you can resolve this situation by removing the tag 'patch' from the bug report and editing the attachment so that it is not flagged as a patch. Additionally, if you are member of the ubuntu-reviewers team please also unsubscribe the team from this bug report.

[This is an automated message performed by a Launchpad user owned by Brian Murray. Please contact him regarding any issues with the action taken in this bug report.]

tags: added: patch
Thomas Hood (jdthood)
Changed in resolvconf (Ubuntu):
assignee: nobody → Thomas Hood (jdthood)
assignee: Thomas Hood (jdthood) → nobody
Revision history for this message
Thomas Hood (jdthood) wrote :

The new man page has been included in Debian resolvconf 1.66 which was released today.

Ubuntu resolvconf maintainers: Please merge resolvconf 1.66 to quantal!

Changed in resolvconf (Debian):
assignee: nobody → Thomas Hood (jdthood)
Changed in resolvconf (Ubuntu):
assignee: nobody → Thomas Hood (jdthood)
no longer affects: resolvconf (Debian)
Revision history for this message
Thomas Hood (jdthood) wrote :

> Please merge resolvconf 1.66

Make that 1.67. :)

Changed in resolvconf (Debian):
status: New → Fix Released
Changed in resolvconf (Ubuntu Quantal):
assignee: Thomas Hood (jdthood) → Stéphane Graber (stgraber)
Changed in resolvconf (Ubuntu Quantal):
status: In Progress → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package resolvconf - 1.67ubuntu1

---------------
resolvconf (1.67ubuntu1) quantal; urgency=low

  * Merge from Debian. Remaining changes:
    (LP: #994575, LP: #999337, LP: #1012355)
    - Make /etc/resolv.conf a relative symlink so that it works when
      setting up chroots.
    - Instead of throwing an error that aborts the upgrade when
      /etc/resolv.conf is immutable, pop a debconf error message to let the
      user know what's happening, then clear the immutable flag and continue
      with the installation. LP: #989585.
    - debian/config, debian/templates, debian/postinst: if we don't know that
      /etc/resolv.conf was being dynamically managed before install (in at
      least some cases), link the original contents of /etc/resolv.conf to
      /etc/resolvconf/resolv.conf.d/tail so that any statically configured
      nameservers aren't lost. LP: #923685.
    - Use an upstart job instead of sysvinit script.
    - Pre-Depend on the /run-providing version of initscripts instead of
      depending, so that the preinst does the right thing when creating
      /run/resolvconf/interfaces instead of getting clobbered later by a bind
      mount on initscripts upgrade. LP: #922491.
    - Completely drop the standard_run_subdirs_created helper function from
      debian/postinst, since it serves no purpose here.
    - postinst: Set resolvconf/linkify-resolvconf to false after initial
      conversion, ensuring upgrades won't convert /etc/resolv.conf to
      a symlink if the user manually converted it back to plain text.
      (LP: #922677)
    - Move the #DEBHELPER# token in debian/postinst to after the resolv.conf
      symlink is set, so the init script can actually start (since it expects
      /etc/resolv.conf to be a symlink).
    - Eliminate all references to /etc/resolvconf/run. This should all be done
      directly in /run, there is no reason to support making any of this
      configurable with a symlink since we already have a versioned dependency
      on the version of initscripts that introduces the /run transition.
    - Also remove debian/triggers to avoid needlessly calling resolvconf's
      postinst. (LP: #931335)
 -- Stephane Graber <email address hidden> Fri, 22 Jun 2012 17:29:50 -0400

Changed in resolvconf (Ubuntu Quantal):
status: Fix Committed → Fix Released
Revision history for this message
Anthony DeChiaro (adechiaro) wrote :

I understand a fix has been released containing a more accurate manpage which is great, but I'm wondering if there are any plans to update the libc script to actually support dns-options at some point. I'd like to avoid my typical solution of "breaking" resolvconf by setting /etc/resolv.conf immutable if at all possible.

Thanks.

Revision history for this message
Thomas Hood (jdthood) wrote :

@Anthony:

A "dns-options" option in /e/n/i is indeed not currently supported. Do you need this?

The current practice is to put an "options" line in /etc/resolvconf/resolv.conf.d/base.

Revision history for this message
Anthony DeChiaro (adechiaro) wrote :

@Thomas: Thanks, yes I actually discovered that after finding this bug. The resolv.conf.d/base solution is working just fine for me.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Bug attachments

Remote bug watches

Bug watches keep track of this bug in other bug trackers.