[Pkg-utopia-maintainers] Bug#882386: avahi-daemon segfaults with txt-record values ending in "="

Tor Slettnes tor at slett.net
Wed Nov 22 00:06:08 UTC 2017


Package: avahi-daemon
Version: 0.7-3
Severity: important

I have a custom service file, "/etc/avahi/services/instrument.service", containing the following:

  +------------------------------------------------------------------------------------------------
  | <?xml version="1.0" encoding="utf-8"?>
  | <!DOCTYPE service-group SYSTEM "avahi-service.dtd">
  | <service-group>
  |   <name replace-wildcards="yes">%h</name>
  |   <service>
  |     <type>_abi-instrument._tcp</type>
  |     <port>7000</port>
  |     <txt-record>status=Sleeping</txt-record>
  |     <txt-record>protocol=</txt-record>
  |     <txt-record>experiment=</txt-record>
  |     <txt-record>serialnumber=932006666</txt-record>
  |     <txt-record>product=SeqStudio</txt-record>
  |     <txt-record>runid=</txt-record>
  |     <txt-record>version=1.1.dev</txt-record>
  |     <txt-record>release=1.1.b2</txt-record>
  |     <txt-record>build=</txt-record>
  |     <txt-record>injection=</txt-record>
  |     <txt-record>description=Applied Biosystems(tm) SeqStudio(tm) Genetic Analyzer</txt-record>
  |   </service>
  | </service-group>
  +------------------------------------------------------------------------------------------------

With this file in place, "avahi-daemon" encounters a segfault starting up:

  > startbit:~# avahi-daemon --debug
  > Process 20682 died: No such process; trying to remove PID file. (/run/avahi-daemon//pid)
  > Found user 'avahi' (UID 113) and group 'avahi' (GID 118).
  > Successfully dropped root privileges.
  > avahi-daemon 0.7 starting up.
  > chroot.c: chroot() helper started
  > Successfully called chroot().
  > Successfully dropped remaining capabilities.
  > chroot.c: chroot() helper got command 02
  > Loading service file /services/instrument.service.
  > chroot.c: chroot() helper exiting with return value 0
  > Segmentation fault

However if I remove those "<txt-record>" entries that have no value
after the "=" sign, "avahi-daemon" starts up normally (save for a
bugus warnign about duplicate mDNS stack on this host):

  +------------------------------------------------------------------------------------------------
  | <?xml version="1.0" encoding="utf-8"?>
  | <!DOCTYPE service-group SYSTEM "avahi-service.dtd">
  | <service-group>
  |   <name replace-wildcards="yes">%h</name>
  |   <service>
  |     <type>_abi-instrument._tcp</type>
  |     <port>7000</port>
  |     <txt-record>status=Sleeping</txt-record>
  |     <txt-record>protocol=</txt-record>
  |     <txt-record>experiment=</txt-record>
  |     <txt-record>serialnumber=932006666</txt-record>
  |     <txt-record>product=SeqStudio</txt-record>
  |     <txt-record>runid=</txt-record>
  |     <txt-record>version=1.1.dev</txt-record>
  |     <txt-record>release=1.1.b2</txt-record>
  |     <txt-record>build=</txt-record>
  |     <txt-record>injection=</txt-record>
  |     <txt-record>description=Applied Biosystems(tm) SeqStudio(tm) Genetic Analyzer</txt-record>
  |   </service>
  | </service-group>
  +------------------------------------------------------------------------------------------------


  > startbit:~# avahi-daemon --debug
  > Process 20846 died: No such process; trying to remove PID file. (/run/avahi-daemon//pid)
  > Found user 'avahi' (UID 113) and group 'avahi' (GID 118).
  > Successfully dropped root privileges.
  > avahi-daemon 0.7 starting up.
  > chroot.c: chroot() helper started
  > Successfully called chroot().
  > Successfully dropped remaining capabilities.
  > chroot.c: chroot() helper got command 02
  > Loading service file /services/instrument.service.
  > Loading service file /services/ssh.service.
  > *** WARNING: Detected another IPv4 mDNS stack running on this host. This makes mDNS unreliable and is thus not recommended. ***
  > *** WARNING: Detected another IPv6 mDNS stack running on this host. This makes mDNS unreliable and is thus not recommended. ***
  > Joining mDNS multicast group on interface enp4s0.IPv6 with address fe80::a28c:fdff:fe32:8013.
  > New relevant interface enp4s0.IPv6 for mDNS.
  > Joining mDNS multicast group on interface enp4s0.IPv4 with address 10.43.32.19.
  > New relevant interface enp4s0.IPv4 for mDNS.
  > Network interface enumeration completed.
  > Registering new address record for fe80::a28c:fdff:fe32:8013 on enp4s0.*.
  > Registering new address record for 10.43.32.19 on enp4s0.IPv4.
  > Server startup complete. Host name is startbit.local. Local service cookie is 3029496375.
  > Service "startbit" (/services/ssh.service) successfully established.
  > Service "startbit" (/services/instrument.service) successfully established.


Regards,
-tor


-- System Information:
Debian Release: buster/sid
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'unstable'), (500, 'stable'), (500, 'oldstable')
Architecture: amd64 (x86_64)

Kernel: Linux 4.13.0-1-amd64 (SMP w/8 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages avahi-daemon depends on:
ii  adduser              3.116
ii  bind9-host [host]    1:9.10.6+dfsg-5
ii  dbus                 1.12.2-1
ii  init-system-helpers  1.51
ii  libavahi-common3     0.7-3
ii  libavahi-core7       0.7-3
ii  libc6                2.25-1
ii  libcap2              1:2.25-1.1
ii  libdaemon0           0.14-6+b1
ii  libdbus-1-3          1.12.2-1
ii  libexpat1            2.2.3-2
ii  lsb-base             9.20170808

Versions of packages avahi-daemon recommends:
ii  libnss-mdns  0.10-8

Versions of packages avahi-daemon suggests:
pn  avahi-autoipd  <none>

-- Configuration Files:
/etc/default/avahi-daemon changed:
AVAHI_DAEMON_DETECT_LOCAL=0


-- no debconf information



More information about the Pkg-utopia-maintainers mailing list