]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
Make lib/dns/dnstap.pb-c.h private header
authorOndřej Surý <ondrej@sury.org>
Fri, 22 Mar 2019 09:36:25 +0000 (10:36 +0100)
committerOndřej Surý <ondrej@sury.org>
Fri, 22 Mar 2019 10:38:45 +0000 (11:38 +0100)
This changes dns_dtdata struct to not expose data types from dnstap.pb-c.h to
prevent the need for including this header where not really needed.

bin/tools/dnstap-read.c
configure
configure.ac
lib/dns/Makefile.in
lib/dns/dnstap.c
lib/dns/include/dns/Makefile.in
lib/dns/include/dns/dnstap.h
lib/dns/tests/dnstap_test.c

index e876d5ea1772a4cc3acc5712606248dd206b2858..2548bf0fac9d16f72a0478f9484df9c54176dfdd 100644 (file)
@@ -46,6 +46,9 @@
 #include <dns/name.h>
 #include <dns/result.h>
 
+#include <protobuf-c/protobuf-c.h>
+#include "lib/dns/dnstap.pb-c.h"
+
 isc_mem_t *mctx = NULL;
 bool memrecord = false;
 bool printmessage = false;
index c92b83ae4c2ee00d02f10833fb840087bc85ba47..b2ac8d78cf05242781cc8286babfe263f8a08d51 100755 (executable)
--- a/configure
+++ b/configure
@@ -697,7 +697,6 @@ W3M
 DBLATEX
 PDFLATEX
 LATEX
-DNSTAP_PB_C_H
 DNSTAPTARGETS
 DNSTAPOBJS
 DNSTAPSRCS
@@ -18516,7 +18515,6 @@ DNSTAP=
 DNSTAPSRCS=
 DNSTAPOBJS=
 DNSTAPTARGETS=
-DNSTAP_PB_C_H=
 if test "x$use_dnstap" != "xno"; then
 
 # Check whether --with-protobuf-c was given.
@@ -18849,14 +18847,12 @@ $as_echo "#define HAVE_DNSTAP 1" >>confdefs.h
        DNSTAPSRCS='${DNSTAPSRCS}'
        DNSTAPOBJS='${DNSTAPOBJS}'
        DNSTAPTARGETS='${DNSTAPTARGETS}'
-       DNSTAP_PB_C_H="dnstap.pb-c.h"
 fi
 
 
 
 
 
-
 #
 #  The following sets up how non-blocking i/o is established.
 #  cygwin and solaris 2.x (x<5) require special handling.
index 5e77fc297e5384ec21d97c835d14fa44fee1acd3..db5129a6ce584d89cd434a87018d932df04a885b 100644 (file)
@@ -2070,7 +2070,6 @@ DNSTAP=
 DNSTAPSRCS=
 DNSTAPOBJS=
 DNSTAPTARGETS=
-DNSTAP_PB_C_H=
 if test "x$use_dnstap" != "xno"; then
        AC_ARG_WITH([protobuf-c],
                    AS_HELP_STRING([--with-protobuf-c=path],
@@ -2123,13 +2122,11 @@ if test "x$use_dnstap" != "xno"; then
        DNSTAPSRCS='${DNSTAPSRCS}'
        DNSTAPOBJS='${DNSTAPOBJS}'
        DNSTAPTARGETS='${DNSTAPTARGETS}'
-       DNSTAP_PB_C_H="dnstap.pb-c.h"
 fi
 AC_SUBST(DNSTAP)
 AC_SUBST(DNSTAPSRCS)
 AC_SUBST(DNSTAPOBJS)
 AC_SUBST(DNSTAPTARGETS)
-AC_SUBST(DNSTAP_PB_C_H)
 
 #
 #  The following sets up how non-blocking i/o is established.
index eb3346af2c414a25eb896712425dfb044a57d3dc..dc9d521632aad2614aa6a5aeb8daf72df1155c78 100644 (file)
@@ -189,7 +189,7 @@ clean distclean::
        rm -f libdns.@A@ timestamp
        rm -f gen code.h include/dns/enumtype.h include/dns/enumclass.h
        rm -f include/dns/rdatastruct.h
-       rm -f dnstap.pb-c.c dnstap.pb-c.h include/dns/dnstap.pb-c.h
+       rm -f dnstap.pb-c.c dnstap.pb-c.h
 
 newrr::
        rm -f code.h include/dns/enumtype.h include/dns/enumclass.h
@@ -204,9 +204,8 @@ ${OBJS}: include
 # dnstap
 dnstap.@O@: dnstap.c dnstap.pb-c.c
 
-dnstap.pb-c.c dnstap.pb-c.h include/dns/dnstap.pb-c.h: dnstap.proto
+dnstap.pb-c.c dnstap.pb-c.h: dnstap.proto
        $(PROTOC_C) --c_out=. --proto_path ${srcdir} dnstap.proto
-       cp -f dnstap.pb-c.h include/dns
 
 dnstap.pb-c.@O@: dnstap.pb-c.c
 
index d357e610755b17b22a760118706c0734ec1abef0..3accb9cc10f41d8fe4c25551ddd08b4416227e76 100644 (file)
@@ -76,8 +76,8 @@
 #include <dns/types.h>
 #include <dns/view.h>
 
-#include <dns/dnstap.pb-c.h>
 #include <protobuf-c/protobuf-c.h>
+#include "dnstap.pb-c.h"
 
 #define DTENV_MAGIC                    ISC_MAGIC('D', 't', 'n', 'v')
 #define VALID_DTENV(env)               ISC_MAGIC_VALID(env, DTENV_MAGIC)
@@ -1099,6 +1099,7 @@ dns_dt_close(dns_dthandle_t **handlep) {
 isc_result_t
 dns_dt_parse(isc_mem_t *mctx, isc_region_t *src, dns_dtdata_t **destp) {
        isc_result_t result;
+       Dnstap__Dnstap *frame;
        Dnstap__Message *m;
        dns_dtdata_t *d = NULL;
        isc_buffer_t b;
@@ -1117,10 +1118,12 @@ dns_dt_parse(isc_mem_t *mctx, isc_region_t *src, dns_dtdata_t **destp) {
        if (d->frame == NULL)
                CHECK(ISC_R_NOMEMORY);
 
-       if (d->frame->type != DNSTAP__DNSTAP__TYPE__MESSAGE)
+       frame = (Dnstap__Dnstap *)d->frame;
+
+       if (frame->type != DNSTAP__DNSTAP__TYPE__MESSAGE)
                CHECK(DNS_R_BADDNSTAP);
 
-       m = d->frame->message;
+       m = frame->message;
 
        /* Message type */
        switch (m->type) {
index 77df509c71b6f2e8593b93d4fafdf54cb734f123..f16ec752536dbf7cb02d630d46ee298dbad7b0fc 100644 (file)
@@ -33,7 +33,7 @@ HEADERS =     acl.h adb.h badcache.h bit.h byaddr.h \
                update.h validator.h version.h view.h xfrin.h \
                zone.h zonekey.h zoneverify.h zt.h
 
-GENHEADERS =   @DNSTAP_PB_C_H@ enumclass.h enumtype.h rdatastruct.h
+GENHEADERS =   enumclass.h enumtype.h rdatastruct.h
 
 SUBDIRS =
 TARGETS =
index e27c95e8a041dea797b2df743e43241999cbeb64..2e948ebe2474628f4af4f0a11800e6d3ceb859dc 100644 (file)
@@ -29,7 +29,6 @@
 #ifdef HAVE_DNSTAP
 #include <fstrm.h>
 #include <protobuf-c/protobuf-c.h>
-#include <dns/dnstap.pb-c.h>
 #else
 struct fstrm_iothr_options;
 #endif /* HAVE_DNSTAP */
@@ -99,7 +98,7 @@ typedef struct dns_dthandle dns_dthandle_t;
 struct dns_dtdata {
        isc_mem_t *mctx;
 
-       Dnstap__Dnstap *frame;
+       void *frame;
 
        bool query;
        bool tcp;
index 5ba5520cfd3224905aa4e9a27827331a1e60b386..88f09cd919000c95a3bfd925bc8fea7dbe54ffc5 100644 (file)
@@ -36,7 +36,7 @@
 #include "dnstest.h"
 
 #ifdef HAVE_DNSTAP
-#include <dns/dnstap.pb-c.h>
+
 #include <protobuf-c/protobuf-c.h>
 
 #define TAPFILE "testdata/dnstap/dnstap.file"