SA:20-19 Unbound patch is broken for 12.1
Teran McKinney
sega01 at go-beyond.org
Tue Jul 21 05:33:10 UTC 2020
Hi everyone,
It looks like the SA:20-19 Unbound patch for 12.1 is broken. Patch
applies cleanly, but it breaks `make buildworld`. Given that it's
a security advisory, I figured it wouldn't hurt to get more eyes
on it.
I'm running into this on my laptop and a fresh install.
----
bash# pwd
/usr/src/usr.sbin/unbound
bash# make
===> daemon (all)
cc -O2 -pipe -I/usr/src/contrib/unbound -I/usr/src/contrib/ldns -I/usr/src/usr.sbin/unbound -I/usr/src/usr.sbin/unbound/daemon -g -MD -MF.depend.acl_list.o -MTacl_list.o -std=gnu99 -fstack-protector-strong -Wsystem-headers -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wunused-parameter -Wcast-align -Wchar-subscripts -Winline -Wnested-externs -Wredundant-decls -Wold-style-definition -Wno-pointer-sign -Wmissing-variable-declarations -Wno-empty-body -Wno-string-plus-int -Wno-unused-const-variable -Qunused-arguments -c /usr/src/contrib/unbound/daemon/acl_list.c -o acl_list.o
In file included from /usr/src/contrib/unbound/daemon/acl_list.c:43:
In file included from /usr/src/contrib/unbound/daemon/acl_list.h:45:
In file included from /usr/src/contrib/unbound/util/storage/dnstree.h:45:
/usr/src/contrib/unbound/util/rbtree.h:65:2: error: unknown type name 'uint8_t'
uint8_t color;
^
/usr/src/contrib/unbound/util/rbtree.h:81:2: error: unknown type name 'size_t'
size_t count;
^
In file included from /usr/src/contrib/unbound/daemon/acl_list.c:43:
In file included from /usr/src/contrib/unbound/daemon/acl_list.h:45:
/usr/src/contrib/unbound/util/storage/dnstree.h:61:2: error: unknown type name 'uint8_t'
uint8_t* name;
^
/usr/src/contrib/unbound/util/storage/dnstree.h:63:2: error: unknown type name 'size_t'
size_t len;
^
/usr/src/contrib/unbound/util/storage/dnstree.h:67:2: error: unknown type name 'uint16_t'
uint16_t dclass;
^
/usr/src/contrib/unbound/util/storage/dnstree.h:83:26: error: field has incomplete type 'struct sockaddr_storage'
struct sockaddr_storage addr;
^
/usr/src/contrib/unbound/util/storage/dnstree.h:83:9: note: forward declaration of 'struct sockaddr_storage'
struct sockaddr_storage addr;
^
/usr/src/contrib/unbound/util/storage/dnstree.h:85:2: error: unknown type name 'socklen_t'
socklen_t addrlen;
^
/usr/src/contrib/unbound/util/storage/dnstree.h:109:2: error: unknown type name 'uint8_t'
uint8_t* name, size_t len, int labs, uint16_t dclass);
^
/usr/src/contrib/unbound/util/storage/dnstree.h:109:17: error: unknown type name 'size_t'
uint8_t* name, size_t len, int labs, uint16_t dclass);
^
/usr/src/contrib/unbound/util/storage/dnstree.h:109:39: error: unknown type name 'uint16_t'
uint8_t* name, size_t len, int labs, uint16_t dclass);
^
/usr/src/contrib/unbound/util/storage/dnstree.h:127:58: error: unknown type name 'uint8_t'
struct name_tree_node* name_tree_find(rbtree_type* tree, uint8_t* name,
^
/usr/src/contrib/unbound/util/storage/dnstree.h:128:2: error: unknown type name 'size_t'
size_t len, int labs, uint16_t dclass);
^
/usr/src/contrib/unbound/util/storage/dnstree.h:128:24: error: unknown type name 'uint16_t'
size_t len, int labs, uint16_t dclass);
^
/usr/src/contrib/unbound/util/storage/dnstree.h:139:60: error: unknown type name 'uint8_t'
struct name_tree_node* name_tree_lookup(rbtree_type* tree, uint8_t* name,
^
/usr/src/contrib/unbound/util/storage/dnstree.h:140:2: error: unknown type name 'size_t'
size_t len, int labs, uint16_t dclass);
^
/usr/src/contrib/unbound/util/storage/dnstree.h:140:24: error: unknown type name 'uint16_t'
size_t len, int labs, uint16_t dclass);
^
/usr/src/contrib/unbound/util/storage/dnstree.h:148:44: error: unknown type name 'uint16_t'
int name_tree_next_root(rbtree_type* tree, uint16_t* dclass);
^
/usr/src/contrib/unbound/util/storage/dnstree.h:167:33: error: unknown type name 'socklen_t'
struct sockaddr_storage* addr, socklen_t addrlen, int net);
^
/usr/src/contrib/unbound/util/storage/dnstree.h:191:33: error: unknown type name 'socklen_t'
struct sockaddr_storage* addr, socklen_t addrlen);
^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
*** Error code 1
Stop.
make[1]: stopped in /usr/src/usr.sbin/unbound/daemon
*** Error code 1
Stop.
make: stopped in /usr/src/usr.sbin/unbound
----
Someone already opened a bug for it, but I think it's under the
wrong component and may not be getting to the right people. Bug
#248010.
-Teran
More information about the freebsd-hackers
mailing list