distcc fails to distribute to IPv6 addresses

Bug #593047 reported by Ken Sharp
28
This bug affects 5 people
Affects Status Importance Assigned to Milestone
distcc
Unknown
Unknown
distcc (Debian)
Fix Released
Unknown
distcc (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

Binary package hint: distcc

Avahi sends out details of distcc servers using both A and AAAA records (containing IPv4 and IPv6 addresses).

The IP address picked by distcc seems random, sometimes the IPv4 address is written to ~/.distcc/zeroconf/hosts and sometimes the IPv6 address is. When the IPv6 address is used distcc fails to send data to the server.

distcc[9336] (dcc_parse_tcp_host) ERROR: invalid tcp port specification in ":20c:76ff:fe81:1:3632/4
192.168.0.15:3632/4
192.168.0.5:3632/8

ProblemType: Bug
DistroRelease: Ubuntu 10.04
Package: distcc 3.1-2
ProcVersionSignature: Ubuntu 2.6.32-22.36-generic 2.6.32.11+drm33.2
Uname: Linux 2.6.32-22-generic i686
Architecture: i386
Date: Sat Jun 12 15:19:28 2010
ProcEnviron:
 LANG=en_GB.utf8
 SHELL=/bin/bash
SourcePackage: distcc

Revision history for this message
Ken Sharp (kennybobs) wrote :
Revision history for this message
Ken Sharp (kennybobs) wrote :

Actually, when an IPv6 address is in the hosts file, distcc fails to send jobs to any server and compiles everything locally.

Revision history for this message
Ken Sharp (kennybobs) wrote :

Confirmed in Google Code.

Changed in distcc (Ubuntu):
status: New → Confirmed
Revision history for this message
Hans Meine (hans-meine) wrote :

Lacking an upstream release, I would be very happy if someone integrated the two patches that did not make it into the 3.1 release:
http://code.google.com/p/distcc/source/detail?r=650
http://code.google.com/p/distcc/source/detail?r=673

They are mentioned here:
http://code.google.com/p/distcc/issues/detail?id=34
http://code.google.com/p/distcc/issues/detail?id=42 seems to be a duplicate

Changed in distcc (Debian):
status: Unknown → New
Changed in distcc (Debian):
status: New → Confirmed
Changed in distcc (Debian):
status: Confirmed → Fix Released
Revision history for this message
Ken Sharp (kennybobs) wrote :

This should be fixed in all but Hardy.

Changed in distcc (Ubuntu):
status: Confirmed → Fix Committed
Revision history for this message
Daniel Hartwig (wigs) wrote :

Ken Sharp (kennybobs) wrote 8 hours ago: #5
> This should be fixed in all but Hardy.

You confirm that zeroconf discovery, and manual entry in hosts files, of IPv6 addresses works on 3.1-4ubuntu2?

Upstream #34 claims to require these two commits:

 http://code.google.com/p/distcc/source/detail?r=650
 http://code.google.com/p/distcc/source/detail?r=673

while the mentioned Ubuntu version only includes the later.

Revision history for this message
Daniel Hartwig (wigs) wrote :

Daniel Hartwig (wigs) wrote 1 minute ago: #6
> Ken Sharp (kennybobs) wrote 8 hours ago: #5
>> This should be fixed in all but Hardy.

or perhaps I misread you and you are rather requesting the fix to be applied to those versions? :-)

Revision history for this message
Ken Sharp (kennybobs) wrote :

Oops, no, you're right. I misread it. Sorry for the noise.

The fix is upstream so I guess it should be ready to be packaged.

Changed in distcc (Ubuntu):
status: Fix Committed → Confirmed
Revision history for this message
Daniel Hartwig (wigs) wrote : Re: distcc fails to distribute to IPv6 addresses [Please import 3.1-5 from Debian, no Ubuntu changes required]

3.1-5 includes the fixes for both patches in 3.1-4ubuntu2, so no Ubuntu changes are required on this version.

summary: - distcc fails to distribute to IPv6 addresses
+ distcc fails to distribute to IPv6 addresses [Please import 3.1-5 from
+ Debian, no Ubuntu changes required]
Daniel Hartwig (wigs)
tags: added: patch patch-accepted-debian
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (3.2 KiB)

This bug was fixed in the package distcc - 3.1-5

---------------
distcc (3.1-5) unstable; urgency=low

  * new maintainer (Closes: #664497)
  * update Standards-Version to 3.9.3:
    - debian/distcc.init.d: start action exits successfully if daemon
      is already running [9.3.2]; postinst will succeed on upgrades in
      this case also (Closes: #620773, LP: #822887)
  * switch to dpkg-source 3.0 (quilt) format
  * remove Build-Depends: dpatch
  * add Build-Depends: autotools-dev
  * debian/rules:
    - use debhelper compat level 9
    - reduce to "dh $@" style
    - fixes FTBFS caused by previous build-arch target (Closes: #666383)
    - enabled bindnow hardening (no PIE yet, it causes build failure)
  * debian/control:
    - added Homepage field
    - distcc: description starts lowercase
  * debian/distcc.config:
    - renamed from debian/config
    - use "set -e"
    - include missing #DEBHELPER# token
  * debian/distcc.init.d:
    - added stop levels 0, 6
    - unset TMPDIR before starting the daemon to avoid problems with
      root's value for this being unwritable by the distccd user; to
      provide distccd with a sensible TMPDIR put it in /etc/default/distcc
      (Closes: #514556)
  * debian/distcc.postinst:
    - use "set -e" instead of "#!/bin/sh -e"
    - drop extra calls to "sed ... /etc/default/distcc" for every field
      that only removed whitespace which would be removed anyway when
      updating the fields
    - always create distccd user if it does not exist (Closes: #548053)
  * debian/distccmon-gnome.menu:
    - changed title to "distcc monitor"
    - dropped incorrect hint tag
  * debian/patches:
    - 06_set-pythonpath-securely.patch: contains fix for #605168 which
      was previously applied directly to the source
    - 07_preferred-user.patch: starting the daemon as root causes it to
      change user, which should be to "distccd" in Debian
    - 08_gnome-data-public-dirs.patch: install desktop and icon files for
      distccmon-gnome /usr/share/applications and /usr/share/pixmaps
      respectively (LP: #512288)
    - 09_rename-pump.patch: rename the "pump" command to "distcc-pump" in
      all references such as help text, man pages, etc. (Closes: #594083)
    - 10_consecutive-preprocessor-options.patch: correctly count
      preprocessor options (Closes: #626926)
    - 11_lsdistcc-man.patch: add man page for lsdistcc utility
  * debian/watch:
    - added remote watch file
  * source/config.{guess,sub}:
    - update with autotools-dev during build instead of directly patching
      the source tree
  * use dpkg triggers to dynamically generate/update compiler links
    based on the ccache packaging. Thanks to Daniel Schaal
    (Closes: #651670)
  * cherry-pick upstream fixes for IPv6 support (Closes: #452835):
    - r650_ipv6-zeroconf.patch: IPv6 patch for Zeroconf and IPv6 literals
      in hosts file (Closes: #481951, LP: #593047)
    - r673_zeroconf-nodups.patch: remove duplicate hosts from the Zeroconf
      list (LP: #809534)
    - r678_distcc-v6-acl-2.patch: IPv6 support for access control
  * cherry-pick other upstream fixes:
    - r732_distccmon-gnome.patch: avoid client list growing indefinitely
  ...

Read more...

Changed in distcc (Ubuntu):
status: Confirmed → Fix Released
Revision history for this message
Daniel Hartwig (wigs) wrote :
Revision history for this message
Daniel Hartwig (wigs) wrote :
Revision history for this message
Daniel Hartwig (wigs) wrote :
Revision history for this message
Daniel Hartwig (wigs) wrote :

These three patches are all the upstream changes to fix IPv6 issues:
- r650 is small and required for ipv6+zeroconf to work correctly;
- r673 is already included in 3.1-4ubuntu2 (oneiric and later);
- r678 may be considered optional, nice to include for full ipv6 support.

The regression potential of r650 is tiny, given the small size of the patch it is easy to verify.

Although fixing several other issues, 3.1-5 may not be suitable for a SRU due to unrelated packaging and path changes. Especially these:
    - 08_gnome-data-public-dirs.patch: install desktop and icon files for
      distccmon-gnome /usr/share/applications and /usr/share/pixmaps
      respectively (LP: #512288)
  * use dpkg triggers to dynamically generate/update compiler links
    based on the ccache packaging. Thanks to Daniel Schaal
    (Closes: #651670)

See also Bug #521165 for another small patch worth considering (also fixed in 3.1-5).

Daniel Hartwig (wigs)
summary: - distcc fails to distribute to IPv6 addresses [Please import 3.1-5 from
- Debian, no Ubuntu changes required]
+ distcc fails to distribute to IPv6 addresses
Revision history for this message
Tim Gehpunkt (rollercoaster) wrote :

new version still not available in lucid/updates.

Revision history for this message
Benjamin Drung (bdrung) wrote :

Daniel, do you want to do a stable release update (SRU)? The three patches seems to be SRU-able to me. A debdiff and a test case is needed for a SRU [1].

[1] https://wiki.ubuntu.com/StableReleaseUpdates

Revision history for this message
Daniel Hartwig (wigs) wrote :

> Daniel, do you want to do a stable release update (SRU)?

No. I do not use Ubuntu.

> A debdiff and a test case is needed for a SRU

Recommend that an affected user running Lucid prepare the test case and for bug #521165 also.

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

Other bug subscribers

Remote bug watches

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