Good Day,
Hope I'm doing this right...
I am trying to see if I can move from a local installation from my rocky9 OS, to a docker container with a debian 11.8 image.
When I attempt to build bind-dyndb-ldap-v9.11 I get the below error:
ldap_driver.c: In function 'allrdatasets': ldap_driver.c:470:64: error: passing argument 5 of 'dns_db_allrdatasets' makes integer from pointer without a cast [-Werror=int-conversion] 470 | return dns_db_allrdatasets(ldapdb->rbtdb, node, version, now, iteratorp); | ^~~~~~~~~ | | | dns_rdatasetiter_t ** {aka struct dns_rdatasetiter **} In file included from ldap_driver.c:20: /usr/include/dns/db.h:1183:43: note: expected 'isc_stdtime_t' {aka 'unsigned int'} but argument is of type 'dns_rdatasetiter_t **' {aka 'struct dns_rdatasetiter **'} 1183 | unsigned int options, isc_stdtime_t now, | ~~~~~~~~~~~~~~^~~ ldap_driver.c:470:9: error: too few arguments to function 'dns_db_allrdatasets' 470 | return dns_db_allrdatasets(ldapdb->rbtdb, node, version, now, iteratorp); | ^~~~~~~~~~~~~~~~~~~ In file included from ldap_driver.c:20: /usr/include/dns/db.h:1182:1: note: declared here 1182 | dns_db_allrdatasets(dns_db_t *db, dns_dbnode_t *node, dns_dbversion_t *version, | ^~~~~~~~~~~~~~~~~~~ ldap_driver.c: In function 'node_isempty': ldap_driver.c:513:55: error: passing argument 5 of 'dns_db_allrdatasets' makes integer from pointer without a cast [-Werror=int-conversion] 513 | result = dns_db_allrdatasets(db, node, version, now, &rds_iter); | ^~~~~~~~~ | | | dns_rdatasetiter_t ** {aka struct dns_rdatasetiter **} In file included from ldap_driver.c:20: /usr/include/dns/db.h:1183:43: note: expected 'isc_stdtime_t' {aka 'unsigned int'} but argument is of type 'dns_rdatasetiter_t **' {aka 'struct dns_rdatasetiter **'} 1183 | unsigned int options, isc_stdtime_t now, | ~~~~~~~~~~~~~~^~~ ldap_driver.c:513:11: error: too few arguments to function 'dns_db_allrdatasets' 513 | result = dns_db_allrdatasets(db, node, version, now, &rds_iter); | ^~~~~~~~~~~~~~~~~~~ In file included from ldap_driver.c:20: /usr/include/dns/db.h:1182:1: note: declared here 1182 | dns_db_allrdatasets(dns_db_t *db, dns_dbnode_t *node, dns_dbversion_t *version, | ^~~~~~~~~~~~~~~~~~~ ldap_driver.c: At top level: ldap_driver.c:932:2: error: initialization of 'isc_result_t (*)(dns_db_t *, dns_dbnode_t *, dns_dbversion_t *, unsigned int, isc_stdtime_t, dns_rdatasetiter_t **)' {aka 'unsigned int (*)(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 'unsigned int (*)(struct dns_db *, void *, void *, unsigned int, struct dns_rdatasetiter **)'} [-Werror=incompatible-pointer-types] 932 | allrdatasets, | ^~~~~~~~~~~~ ldap_driver.c:932:2: note: (near initialization for 'ldapdb_methods.allrdatasets') ldap_driver.c: In function 'dyndb_init': ldap_driver.c:1164:10: error: 'dns_dyndbctx_t' {aka 'const struct dns_dyndbctx'} has no member named 'refvar' 1164 | if (dctx->refvar != &isc_bind9) { | ^~ In file included from util.h:17, from bindcfg.h:10, from ldap_driver.c:37: ldap_driver.c:1169:79: error: 'dns_dyndbctx_t' {aka 'const struct dns_dyndbctx'} has no member named 'refvar' 1169 | log_debug(5, "registering library from dynamic ldap driver, %p != %p.", dctx->refvar, &isc_bind9); | ^~ log.h:44:44: note: in definition of macro 'log_debug' 44 | log_write(GET_LOG_LEVEL(level), format, ##__VA_ARGS__) | ^~~~~~~~~~~ ldap_driver.c: In function 'allrdatasets': ldap_driver.c:471:1: error: control reaches end of non-void function [-Werror=return-type] 471 | } | ^ cc1: all warnings being treated as errors make[2]: *** [Makefile:594: ldap_la-ldap_driver.lo] Error 1 make[2]: Leaving directory '/tmp/bind-dyndb-ldap-v11.9/src' make[1]: *** [Makefile:452: all-recursive] Error 1 make[1]: Leaving directory '/tmp/bind-dyndb-ldap-v11.9' make: *** [Makefile:363: all] Error 2
Plugin version: 11.9
Version of BIND: 9.16.48
bind9-dev/oldstable-security,now 1:9.16.48-1 amd64 [installed] bind9-libs/oldstable-security,now 1:9.16.48-1 amd64 [installed,automatic] bind9-utils/oldstable-security,now 1:9.16.48-1 amd64 [installed,automatic] bind9/oldstable-security,now 1:9.16.48-1 amd64 [installed]
Distribution and version (i.e. including updates): Debian 11.8
Architecture: x86_64
Do you use bind-dyndb-ldap as part of FreeIPA installation? No If you answered no: Which LDAP server you use? Which version? Openldap 2.6.6
I also tried building plugin version v11.10 but get slightly different log errors.
v11.10
ldap_driver.c: In function 'allrdatasets': ldap_driver.c:474:64: 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 ldap_driver.c:22: /usr/include/dns/db.h:1183:43: note: expected 'isc_stdtime_t' {aka 'unsigned int'} but argument is of type 'dns_rdatasetiter_t **' {aka 'struct dns_rdatasetiter **'} 1183 | unsigned int options, isc_stdtime_t now, | ~~~~~~~~~~~~~~^~~ ldap_driver.c:474:9: error: too few arguments to function 'dns_db_allrdatasets' 474 | return dns_db_allrdatasets(ldapdb->rbtdb, node, version, now, iteratorp); | ^~~~~~~~~~~~~~~~~~~ In file included from ldap_driver.c:22: /usr/include/dns/db.h:1182:1: note: declared here 1182 | dns_db_allrdatasets(dns_db_t *db, dns_dbnode_t *node, dns_dbversion_t *version, | ^~~~~~~~~~~~~~~~~~~ ldap_driver.c: In function 'node_isempty': ldap_driver.c:517:55: 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 **} In file included from ldap_driver.c:22: /usr/include/dns/db.h:1183:43: note: expected 'isc_stdtime_t' {aka 'unsigned int'} but argument is of type 'dns_rdatasetiter_t **' {aka 'struct dns_rdatasetiter **'} 1183 | unsigned int options, isc_stdtime_t now, | ~~~~~~~~~~~~~~^~~ ldap_driver.c:517:11: error: too few arguments to function 'dns_db_allrdatasets' 517 | result = dns_db_allrdatasets(db, node, version, now, &rds_iter); | ^~~~~~~~~~~~~~~~~~~ In file included from ldap_driver.c:22: /usr/include/dns/db.h:1182:1: note: declared here 1182 | dns_db_allrdatasets(dns_db_t *db, dns_dbnode_t *node, dns_dbversion_t *version, | ^~~~~~~~~~~~~~~~~~~ ldap_driver.c: At top level: ldap_driver.c:950:2: error: initialization of 'isc_result_t (*)(dns_db_t *, dns_dbnode_t *, dns_dbversion_t *, unsigned int, isc_stdtime_t, dns_rdatasetiter_t **)' {aka 'unsigned int (*)(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 'unsigned int (*)(struct dns_db *, void *, void *, unsigned int, struct dns_rdatasetiter **)'} [-Werror=incompatible-pointer-types] 950 | allrdatasets, | ^~~~~~~~~~~~ ldap_driver.c:950:2: note: (near initialization for 'ldapdb_methods.allrdatasets') ldap_driver.c: In function 'allrdatasets': 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[2]: *** [Makefile:594: ldap_la-ldap_driver.lo] Error 1 make[2]: Leaving directory '/tmp/bind-dyndb-ldap-v11.10/src' make[1]: *** [Makefile:452: all-recursive] Error 1 make[1]: Leaving directory '/tmp/bind-dyndb-ldap-v11.10' make: *** [Makefile:363: all] Error 2
Is there something I am missing? Any input is much appreciated!
Best, Dave
This sounds the same as https://pagure.io/bind-dyndb-ldap/issue/230. Did you try the current git master?
I released 11.11 which includes all patches required to build for current 9.16 and 9.18. We do not support 9.19+ at the moment but this issues should already be solved.
Metadata Update from @abbra: - Issue close_status updated to: fixed - Issue status updated to: Closed (was: Open)
Log in to comment on this ticket.