Call for testing: OpenSSH 6.8

Damien Miller djm at mindrot.org
Tue Feb 24 11:53:01 AEDT 2015


On Mon, 23 Feb 2015, Kevin Brott wrote:

> 
> Yup - that cleared that hurdle ... now it dies here on AIX:
> 
>         xlc_r -O2 -qarch=ppc -qalloca -I/usr/include -I/opt/freeware/include
>  -I. -I. -O2 -qarch=ppc -qalloca -I/usr/include -I/opt/freeware/include
> -DSSHDIR=\"/usr/local/etc\"  -D_PATH_SSH_PROGRAM=\"/usr/local/bin/ssh\"
>  -D_PATH_SSH_ASKPASS_DEFAULT=\"/usr/local/libexec/ssh-askpass\"
>  -D_PATH_SFTP_SERVER=\"/usr/local/libexec/sftp-server\"
>  -D_PATH_SSH_KEY_SIGN=\"/usr/local/libexec/ssh-keysign\"
>  -D_PATH_SSH_PKCS11_HELPER=\"/usr/local/libexec/ssh-pkcs11-helper\"
>  -D_PATH_SSH_PIDDIR=\"/var/run\"  -D_PATH_PRIVSEP_CHROOT_DIR=\"/var/empty\"
> -DHAVE_CONFIG_H -o regress/netcat ./regress/netcat.c  -L. -Lopenbsd-compat/
> -L/usr/lib -L/usr/ccs/lib -blibpath:/usr/lib:/lib -lssh -lopenbsd-compat
> -lssh -lopenbsd-compat -lcrypto -lz -lpthread
> "./regress/netcat.c", line 47.10: 1506-296 (S) #include file <err.h> not
> found.
> "./regress/netcat.c", line 1334.10: 1506-296 (S) #include file <err.h> not
> found.
> make: 1254-004 The error code from the last command is 1.
> 
> Is this looking for openssl's err.h or something else? if the former,
> shouldn't this be <openssl/err.h>, if the latter - not on this OS.

This should fix it:

diff --git a/regress/netcat.c b/regress/netcat.c
index 84efe11..4b8c51c 100644
--- a/regress/netcat.c
+++ b/regress/netcat.c
@@ -44,7 +44,6 @@
 #include <netinet/ip.h>
 #include <arpa/telnet.h>
 
-#include <err.h>
 #include <errno.h>
 #include <netdb.h>
 #include <poll.h>
@@ -122,6 +121,47 @@ void	usage(int);
 ssize_t drainbuf(int, unsigned char *, size_t *);
 ssize_t fillbuf(int, unsigned char *, size_t *);
 
+static void err(int, const char *, ...) __attribute__((format(printf, 2, 3)));
+static void errx(int, const char *, ...) __attribute__((format(printf, 2, 3)));
+static void warn(const char *, ...) __attribute__((format(printf, 1, 2)));
+
+static void
+err(int r, const char *fmt, ...)
+{
+	va_list args;
+
+	va_start(args, fmt);
+	fprintf(stderr, "%s: ", strerror(errno));
+	vfprintf(stderr, fmt, args);
+	fputc('\n', stderr);
+	va_end(args);
+	exit(r);
+}
+
+static void
+errx(int r, const char *fmt, ...)
+{
+	va_list args;
+
+	va_start(args, fmt);
+	vfprintf(stderr, fmt, args);
+	fputc('\n', stderr);
+	va_end(args);
+	exit(r);
+}
+
+static void
+warn(const char *fmt, ...)
+{
+	va_list args;
+
+	va_start(args, fmt);
+	fprintf(stderr, "%s: ", strerror(errno));
+	vfprintf(stderr, fmt, args);
+	fputc('\n', stderr);
+	va_end(args);
+}
+
 int
 main(int argc, char *argv[])
 {



More information about the openssh-unix-dev mailing list