Package: netatalk
Version: 2.2.5-1
Severity: normal
Tags: patch

Dear Maintainer,

I have noticed that afpd does not successfuly start when the DDP protocol is
enabled alongside with TCP (-ddp option without -notcp option in
/etc/netatalk/afpd.conf).
The syslog output reads:
afpd[4808]: AFP/TCP started, advertising 192.168.1.76:548 (2.2.5)
afpd[4808]: Failed to add service: Local name conflict

Since the avahi registration fails, the server will not be discoverable by the
clients. Older clients using atalkd will still be able to connect, though.

The problem is that when both DDP and TCP are enabled, afpd tries to register
twice on avahi (once for TCP, and once for ASP), with the same service name.

The attached patch skips Avahi registration for ASP/DDP configuration, to avoid
the double registration.

Thanks.



-- System Information:
Debian Release: jessie/sid
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 3.14-2-amd64 (SMP w/2 CPU cores)
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages netatalk depends on:
ii  libacl1           2.2.52-1.1
ii  libattr1          1:2.4.47-1
ii  libavahi-client3  0.6.31-4
ii  libavahi-common3  0.6.31-4
ii  libc6             2.19-9
ii  libcomerr2        1.42.11-2
ii  libcrack2         2.9.1-1+b2
ii  libcups2          1.7.5-1
ii  libdb5.3          5.3.28-6
ii  libgcrypt11       1.5.4-2
ii  libgssapi-krb5-2  1.12.1+dfsg-7
ii  libk5crypto3      1.12.1+dfsg-7
ii  libkrb5-3         1.12.1+dfsg-7
ii  libldap-2.4-2     2.4.39-1.1+b1
ii  libpam-modules    1.1.8-3.1
ii  libpam0g          1.1.8-3.1
ii  libwrap0          7.6.q-25
ii  netbase           5.2
ii  perl              5.20.0-4

Versions of packages netatalk recommends:
ii  avahi-daemon      0.6.31-4
pn  cracklib-runtime  <none>
pn  db-util           <none>
pn  libpam-cracklib   <none>
ii  lsof              4.86+dfsg-1
ii  procps            1:3.3.9-7
pn  rc                <none>

Versions of packages netatalk suggests:
pn  db4.2-util                           <none>
pn  groff                                <none>
pn  quota                                <none>
ii  texlive-binaries [texlive-base-bin]  2014.20140528.34243-5

-- Configuration Files:
/etc/default/netatalk changed [not included]
/etc/netatalk/AppleVolumes.default changed [not included]
/etc/netatalk/afpd.conf changed [not included]

-- no debconf information
Description: Fix Avahi registration when ASP is enabled
Author: Vincent Duvert <vinc...@duvert.net>

--- netatalk-2.2.5.orig/etc/afpd/afp_avahi.c
+++ netatalk-2.2.5/etc/afpd/afp_avahi.c
@@ -94,6 +94,9 @@ static void register_stuff(void) {
 
         /* AFP server */
         for (config = ctx->configs; config; config = config->next) {
+            if (config->obj.proto == AFPPROTO_ASP) {
+                continue;
+            }
 
             dsi = (DSI *)config->obj.handle;
             port = getip_port((struct sockaddr *)&dsi->server);

Reply via email to