[Bug 2603] New: Build with ldns and without kerberos support fails if ldns compiled with kerberos support

bugzilla-daemon at bugzilla.mindrot.org bugzilla-daemon at bugzilla.mindrot.org
Wed Aug 3 22:30:03 AEST 2016


https://bugzilla.mindrot.org/show_bug.cgi?id=2603

            Bug ID: 2603
           Summary: Build with ldns and without kerberos support fails if
                    ldns compiled with kerberos support
           Product: Portable OpenSSH
           Version: 7.3p1
          Hardware: amd64
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P5
         Component: Kerberos support
          Assignee: unassigned-bugs at mindrot.org
          Reporter: ondrej at caletka.cz

I'm trying to build openssh-7.3 like this:

$ ./configure --with-ldns
$ make


(cd openbsd-compat && make)
make[1]: Entering directory
'/hdhome/oskar/Downloads/openssh-7.3p1/openbsd-compat'
gcc -g -O2 -Wall -Wpointer-arith -Wuninitialized -Wsign-compare
-Wformat-security -Wsizeof-pointer-memaccess -Wno-pointer-sign
-Wno-unused-result -fno-strict-aliasing -ftrapv -fno-builtin-memset
-fstack-protector-strong -fPIE  -I. -I.. -I. -I./..  -DHAVE_CONFIG_H -c
getrrsetbyname-ldns.c
In file included from ../openbsd-compat/openbsd-compat.h:173:0,
                 from ../includes.h:171,
                 from getrrsetbyname-ldns.c:46:
../openbsd-compat/bsd-misc.h:139:39: error: expected identifier or '('
before 'do'
 # define krb5_free_error_message(a,b) do { } while(0)
                                       ^
../openbsd-compat/bsd-misc.h:139:46: error: expected identifier or '('
before 'while'
 # define krb5_free_error_message(a,b) do { } while(0)
                                              ^
Makefile:26: recipe for target 'getrrsetbyname-ldns.o' failed

The reason seem to be that ldns itself is compiled with kerberos
support and when including the <ldns/ldns.h>, the prototype of real
function krb5_free_error_message() is broken by the previous macro
definition in openbsd-compat/bsd-misc.h.

I've found out that this can be worked around by reordering the
includes in openbsd-compat/getrrsetbyname-ldns.c so the <ldns/ldns.h>
is included before the "includes.h". Other workaround is to compile
openssh with kerberos support or without ldns support, obviously.

-- 
You are receiving this mail because:
You are watching the assignee of the bug.


More information about the openssh-bugs mailing list