Source: ppp
Version: 2.4.9-1+1.1
Severity: serious
Tags: patch upstream ftbfs
Justification: fails to build from source (but built successfully in the past)
X-Debbugs-Cc: debian.a...@manchmal.in-ulm.de

Hi Chris,

ppp no longer builds in unstable here, tested in a minimal chroot. A
build in a testing chroot passes.

    sys-linux.c: In function ‘sys_cleanup’:
    sys-linux.c:357:9: error: implicit declaration of function ‘sif6down’; did 
you mean ‘sifdown’? [-Werror=implicit-function-declaration]
      357 |         sif6down(0);
          |         ^~~~~~~~
          |         sifdown

Comparing the build logs, this is obviously caused by adding
-Werror=implicit-function-declaration to the default build options.

But looking closer, it seems sif6down is declared only of INET6 is
defined, and while all other *6 invocations are guarded accordingly in
sys-linux.c, this one is not. I'm a little disturbed why the code can
even be linked then.

So, assuming this is the cause here, the fix is pretty simple:

--- a/pppd/sys-linux.c
+++ b/pppd/sys-linux.c
@@ -353,8 +353,10 @@
        if_is_up = 0;
        sifdown(0);
     }
+#ifdef INET6
     if (if6_is_up)
        sif6down(0);
+#endif

 /*
  * Delete any routes through the device.

This matches what sys-solaris.c does. Also, pppd 2.5.0 in
experimental seems to do something like this (PPP_WITH_IPV6CP).
The build now passes, I haven't checked further.

All the best,

    Christoph

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

Attachment: signature.asc
Description: PGP signature

Reply via email to