-I$(srcdir)/openbsd-compat removal can cause errors

Tom Holroyd tomh at po.crl.go.jp
Fri Mar 23 21:11:44 EST 2001


This is a Linux/Alpha system, with AT&T's graphviz suite installed.

gcc -O2 -Wall -I. -I. -I/usr/local/ssl/include -DETCDIR=\"/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\" -DHAVE_CONFIG_H -c
atomicio.c
In file included from openbsd-compat/openbsd-compat.h:24,
                 from includes.h:102,
                 from atomicio.c:26:
openbsd-compat/vis.h:31: conflicting types for `vis'
/usr/local/include/vis.h:45: previous declaration of `vis'
make: *** [atomicio.o] Error 1

It turns out that the graphviz suite (installed in /usr/local) has a
vis.h that defines a vis() function.  It is completely unrelated to the
vis.h and vis() function in openbsd-compat.  Because the
	-I$(srcdir)/openbsd-compat
was removed from the definition of CPPFLAGS in openssh-2.5.2p2, the
/usr/local/include/vis.h gets found instead of ./openbsd-compat/vis.h.

I'd recommend putting it back the way it was.  (There may even be other
breakage I never noticed before, because configure detects vis.h but not
vis(), so HAVE_VIS_H is defined but not HAVE_VIS.  What uses vis()?)

Dr. Tom Holroyd
"I am, as I said, inspired by the biological phenomena in which
chemical forces are used in repetitious fashion to produce all
kinds of weird effects (one of which is the author)."
	-- Richard Feynman, _There's Plenty of Room at the Bottom_






More information about the openssh-unix-dev mailing list