On Darwin 22.6.0 (macOS 13.6.1), Apple clang 15.0.0, running configure -C --without-openssl-header-check; make` (and with appropriate CFLAG workaround for issue 45) on git HEAD gets:
gcc -g -O2 -fPIC -Wall -Wpointer-arith -Wuninitialized -Wno-error=all -fstack-protector-all -fno-common -I. -I. -I/usr/local/opt/icu4c/include -I/usr/local/opt/ruby/include -I/usr/local/opt/sqlite/include -I/usr/local/opt/gettext/include -I/usr/local/opt/qt/include -DHAVE_CONFIG_H -c userauth_pubkey_from_pam.c -o userauth_pubkey_from_pam.o
In file included from userauth_pubkey_from_pam.c:36:
./key.h:80:1: error: unknown type name 'u_char'; did you mean 'char'?
u_char *pamsshagentauth_key_fingerprint_raw(const Key *, enum fp_type, u_int *);
^~~~~~
char
The other files that include key.h, like ssh-dss.c compile alright.
Manually toggling HAVE_U_INT and HAVE_U_CHAR fixes it.
Manually adding a #include <sys/types.h> before #include <strings.h> in userauth_pubkey_from_pam.c fixes it.
On Darwin 22.6.0 (macOS 13.6.1), Apple clang 15.0.0, running
configure -C --without-openssl-header-check
; make` (and with appropriate CFLAG workaround for issue 45) on git HEAD gets:The other files that include
key.h
, likessh-dss.c
compile alright.HAVE_U_INT
andHAVE_U_CHAR
fixes it.#include <sys/types.h>
before#include <strings.h>
inuserauth_pubkey_from_pam.c
fixes it.Guesses on why
configure
attempts to setHAVE_U_INT
byHowever... oh, there's just no reference to
#include <sys/types.h>
anywhere in the include chain for that file.