[Pkg-freeipa-devel] Bug#1027094: FTBFS against bind9 9.18.10

Bernhard Schmidt berni at debian.org
Tue Dec 27 17:16:39 GMT 2022


Source: bind-dyndb-ldap
Version: 11.10-1
Severity: serious
Tags: ftbfs
Justification: fails to build from source (but built successfully in the past)
X-Debbugs-Cc: team+dns at tracker.debian.org

bind-dyndb-ldap has a tight dependency on the upstream version of bind9-libs
(built by src:bind9) and needs to be rebuilt on every new upstream version
until https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1014503 is fixed.

This worked fine until bind9 9.18.8, but fails in 9.18.10

https://buildd.debian.org/status/fetch.php?pkg=bind-dyndb-ldap&arch=amd64&ver=11.10-1%2Bb5&stamp=1671812545&raw=0

This is rather serious as it prevents the migration of 9.18.10 to testing
which includes systemd notify support and upstream bugfixes. Also bind9 has
followed upstream security releases during bullseye already, so it will
break later if 9.18.10 misses the freeze due to this issue.

Possible commits:
https://gitlab.isc.org/isc-projects/bind9/-/compare/v9_18_8...v9_18_10?from_project_id=1

In file included from ../../src/zone_register.h:8,
                 from ../../src/ldap_convert.c:28:
/usr/include/dns/zt.h:171:28: error: unknown type name ‘isc_rwlocktype_t’; did you mean ‘isc_rwlock_t’?
  171 | dns_zt_apply(dns_zt_t *zt, isc_rwlocktype_t lock, bool stop, isc_result_t *sub,
      |                            ^~~~~~~~~~~~~~~~
      |                            isc_rwlock_t
make[3]: *** [Makefile:592: ldap_la-ldap_convert.lo] Error 1
make[3]: *** Waiting for unfinished jobs....
In file included from ../../src/util.h:17,
                 from ../../src/bindcfg.h:10,
                 from ../../src/ldap_driver.c:39:
../../src/ldap_driver.c: In function ‘beginload’:
../../src/log.h:21:9: error: too few arguments to function ‘isc_error_fatal’
   21 |         isc_error_fatal(__FILE__, __LINE__, __VA_ARGS__)
      |         ^~~~~~~~~~~~~~~
../../src/ldap_driver.c:220:9: note: in expansion of macro ‘fatal_error’
  220 |         fatal_error("ldapdb: method beginload() should never be called");
      |         ^~~~~~~~~~~
In file included from /usr/include/isc/util.h:312,
                 from /usr/include/isc/atomic.h:22,
                 from /usr/include/isc/refcount.h:19,
                 from ../../src/ldap_driver.c:16:
/usr/include/isc/error.h:42:1: note: declared here
   42 | isc_error_fatal(const char *, int, const char *, const char *, ...)
      | ^~~~~~~~~~~~~~~
../../src/ldap_driver.c: In function ‘endload’:
../../src/log.h:21:9: error: too few arguments to function ‘isc_error_fatal’
   21 |         isc_error_fatal(__FILE__, __LINE__, __VA_ARGS__)
      |         ^~~~~~~~~~~~~~~
../../src/ldap_driver.c:237:9: note: in expansion of macro ‘fatal_error’
  237 |         fatal_error("ldapdb: method endload() should never be called");
      |         ^~~~~~~~~~~
/usr/include/isc/error.h:42:1: note: declared here
   42 | isc_error_fatal(const char *, int, const char *, const char *, ...)
      | ^~~~~~~~~~~~~~~
../../src/ldap_driver.c: In function ‘dump’:
../../src/log.h:21:9: error: too few arguments to function ‘isc_error_fatal’
   21 |         isc_error_fatal(__FILE__, __LINE__, __VA_ARGS__)
      |         ^~~~~~~~~~~~~~~
../../src/ldap_driver.c:266:9: note: in expansion of macro ‘fatal_error’
  266 |         fatal_error("ldapdb: method dump() should never be called");
      |         ^~~~~~~~~~~
/usr/include/isc/error.h:42:1: note: declared here
   42 | isc_error_fatal(const char *, int, const char *, const char *, ...)
      | ^~~~~~~~~~~~~~~
../../src/ldap_driver.c: In function ‘allrdatasets’:
../../src/ldap_driver.c:474:71: error: passing argument 5 of ‘dns_db_allrdatasets’ makes integer from pointer without a cast [-Werror=int-conversion]
  474 |         return dns_db_allrdatasets(ldapdb->rbtdb, node, version, now, iteratorp);
      |                                                                       ^~~~~~~~~
      |                                                                       |
      |                                                                       dns_rdatasetiter_t ** {aka struct dns_rdatasetiter **}
In file included from ../../src/ldap_driver.c:22:
/usr/include/dns/db.h:1162:57: note: expected ‘isc_stdtime_t’ {aka ‘unsigned int’} but argument is of type ‘dns_rdatasetiter_t **’ {aka ‘struct dns_rdatasetiter **’}
 1162 |                     unsigned int options, isc_stdtime_t now,
      |                                           ~~~~~~~~~~~~~~^~~
../../src/ldap_driver.c:474:16: error: too few arguments to function ‘dns_db_allrdatasets’
  474 |         return dns_db_allrdatasets(ldapdb->rbtdb, node, version, now, iteratorp);
      |                ^~~~~~~~~~~~~~~~~~~
/usr/include/dns/db.h:1161:1: note: declared here
 1161 | dns_db_allrdatasets(dns_db_t *db, dns_dbnode_t *node, dns_dbversion_t *version,
      | ^~~~~~~~~~~~~~~~~~~
../../src/ldap_driver.c: In function ‘node_isempty’:
../../src/ldap_driver.c:517:62: error: passing argument 5 of ‘dns_db_allrdatasets’ makes integer from pointer without a cast [-Werror=int-conversion]
  517 |         result = dns_db_allrdatasets(db, node, version, now, &rds_iter);
      |                                                              ^~~~~~~~~
      |                                                              |
      |                                                              dns_rdatasetiter_t ** {aka struct dns_rdatasetiter **}
/usr/include/dns/db.h:1162:57: note: expected ‘isc_stdtime_t’ {aka ‘unsigned int’} but argument is of type ‘dns_rdatasetiter_t **’ {aka ‘struct dns_rdatasetiter **’}
 1162 |                     unsigned int options, isc_stdtime_t now,
      |                                           ~~~~~~~~~~~~~~^~~
../../src/ldap_driver.c:517:18: error: too few arguments to function ‘dns_db_allrdatasets’
  517 |         result = dns_db_allrdatasets(db, node, version, now, &rds_iter);
      |                  ^~~~~~~~~~~~~~~~~~~
/usr/include/dns/db.h:1161:1: note: declared here
 1161 | dns_db_allrdatasets(dns_db_t *db, dns_dbnode_t *node, dns_dbversion_t *version,
      | ^~~~~~~~~~~~~~~~~~~
../../src/ldap_driver.c: At top level:
../../src/ldap_driver.c:950:9: error: initialization of ‘isc_result_t (*)(dns_db_t *, dns_dbnode_t *, dns_dbversion_t *, unsigned int,  isc_stdtime_t,  dns_rdatasetiter_t **)’ {aka ‘enum isc_result (*)(struct dns_db *, void *, void *, unsigned int,  unsigned int,  struct dns_rdatasetiter **)’} from incompatible pointer type ‘isc_result_t (*)(dns_db_t *, dns_dbnode_t *, dns_dbversion_t *, isc_stdtime_t,  dns_rdatasetiter_t **)’ {aka ‘enum isc_result (*)(struct dns_db *, void *, void *, unsigned int,  struct dns_rdatasetiter **)’} [-Werror=incompatible-pointer-types]
  950 |         allrdatasets,
      |         ^~~~~~~~~~~~
../../src/ldap_driver.c:950:9: note: (near initialization for ‘ldapdb_methods.allrdatasets’)
../../src/ldap_driver.c: In function ‘allrdatasets’:
../../src/ldap_driver.c:475:1: error: control reaches end of non-void function [-Werror=return-type]
  475 | }
      | ^
cc1: all warnings being treated as errors
make[3]: *** [Makefile:599: ldap_la-ldap_driver.lo] Error 1


More information about the Pkg-freeipa-devel mailing list