summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--acconfig.h3
-rw-r--r--configure.ac11
-rw-r--r--openbsd-compat/fake-queue.h87
-rw-r--r--sftp-client.c4
-rw-r--r--ssh-agent.c7
-rw-r--r--ssh-keyscan.c5
7 files changed, 91 insertions, 30 deletions
diff --git a/ChangeLog b/ChangeLog
index 8dfd9fa7..dfdd44a5 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -3,6 +3,8 @@
Juha Yrjölä <jyrjola@cc.hut.fi>
- (bal) Minor documentation update to reflect smartcard library
support changes.
+ - (bal) Too many <sys/queue.h> issues. Remove all workarounds and
+ using internal version only.
20020404
- (stevesk) [auth-pam.c auth-pam.h auth-passwd.c auth-sia.c auth-sia.h
@@ -8161,4 +8163,4 @@
- Wrote replacements for strlcpy and mkdtemp
- Released 1.0pre1
-$Id: ChangeLog,v 1.2023 2002/04/05 16:11:45 mouring Exp $
+$Id: ChangeLog,v 1.2024 2002/04/05 20:23:35 mouring Exp $
diff --git a/acconfig.h b/acconfig.h
index 67afad9a..c7003fe5 100644
--- a/acconfig.h
+++ b/acconfig.h
@@ -1,4 +1,4 @@
-/* $Id: acconfig.h,v 1.125 2002/04/05 16:11:46 mouring Exp $ */
+/* $Id: acconfig.h,v 1.126 2002/04/05 20:23:37 mouring Exp $ */
#ifndef _CONFIG_H
#define _CONFIG_H
@@ -14,7 +14,6 @@
/* SCO workaround */
#undef BROKEN_SYS_TERMIO_H
-#undef HAVE_BOGUS_SYS_QUEUE_H
/* Define if you have SCO protected password database */
#undef HAVE_SCO_PROTECTED_PW
diff --git a/configure.ac b/configure.ac
index 6bd29254..caa747f6 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,4 +1,4 @@
-# $Id: configure.ac,v 1.31 2002/04/05 16:11:46 mouring Exp $
+# $Id: configure.ac,v 1.32 2002/04/05 20:23:37 mouring Exp $
AC_INIT
AC_CONFIG_SRCDIR([ssh.c])
@@ -63,7 +63,6 @@ case "$host" in
AC_DEFINE(BROKEN_GETADDRINFO)
dnl AIX handles lastlog as part of its login message
AC_DEFINE(DISABLE_LASTLOG)
- AC_DEFINE(HAVE_BOGUS_SYS_QUEUE_H)
;;
*-*-cygwin*)
LIBS="$LIBS /usr/lib/textmode.o"
@@ -123,7 +122,6 @@ case "$host" in
check_for_libcrypt_later=1
AC_DEFINE(DONT_TRY_OTHER_AF)
AC_DEFINE(PAM_TTY_KLUDGE)
- AC_DEFINE(HAVE_BOGUS_SYS_QUEUE_H)
inet6_default_4in6=yes
;;
mips-sony-bsd|mips-sony-newsos4)
@@ -175,7 +173,6 @@ mips-sony-bsd|mips-sony-newsos4)
CPPFLAGS="$CPPFLAGS -DSUNOS4"
AC_CHECK_FUNCS(getpwanam)
AC_DEFINE(PAM_SUN_CODEBASE)
- AC_DEFINE(HAVE_BOGUS_SYS_QUEUE_H)
conf_utmp_location=/etc/utmp
conf_wtmp_location=/var/adm/wtmp
conf_lastlog_location=/var/adm/lastlog
@@ -185,7 +182,6 @@ mips-sony-bsd|mips-sony-newsos4)
CPPFLAGS="$CPPFLAGS -I/usr/local/include"
LDFLAGS="$LDFLAGS -L/usr/local/lib"
LIBS="$LIBS -lc89"
- AC_DEFINE(HAVE_BOGUS_SYS_QUEUE_H)
AC_DEFINE(USE_PIPES)
;;
*-sni-sysv*)
@@ -195,7 +191,6 @@ mips-sony-bsd|mips-sony-newsos4)
IPADDR_IN_DISPLAY=yes
AC_DEFINE(USE_PIPES)
AC_DEFINE(IP_TOS_IS_BROKEN)
- AC_DEFINE(HAVE_BOGUS_SYS_QUEUE_H)
# /usr/ucblib/libucb.a no longer needed on ReliantUNIX
# Attention: always take care to bind libsocket and libnsl before libc,
# otherwise you will find lots of "SIOCGPGRP errno 22" on syslog
@@ -227,7 +222,6 @@ mips-sony-bsd|mips-sony-newsos4)
AC_DEFINE(USE_PIPES)
AC_DEFINE(HAVE_SCO_PROTECTED_PW)
AC_DEFINE(DISABLE_SHADOW)
- AC_DEFINE(HAVE_BOGUS_SYS_QUEUE_H)
AC_DEFINE(BROKEN_SAVED_UIDS)
AC_CHECK_FUNCS(getluid setluid)
MANTYPE=man
@@ -242,7 +236,6 @@ mips-sony-bsd|mips-sony-newsos4)
AC_DEFINE(USE_PIPES)
AC_DEFINE(HAVE_SCO_PROTECTED_PW)
AC_DEFINE(DISABLE_SHADOW)
- AC_DEFINE(HAVE_BOGUS_SYS_QUEUE_H)
AC_CHECK_FUNCS(getluid setluid)
MANTYPE=man
;;
@@ -327,7 +320,7 @@ AC_CHECK_HEADERS(bstring.h crypt.h endian.h floatingpoint.h \
netinet/in_systm.h paths.h poll.h pty.h \
rpc/types.h security/pam_appl.h shadow.h stddef.h stdint.h \
strings.h sys/bitypes.h sys/bsdtty.h sys/cdefs.h \
- sys/poll.h sys/queue.h sys/select.h sys/stat.h \
+ sys/poll.h sys/select.h sys/stat.h \
sys/stropts.h sys/sysmacros.h sys/time.h \
sys/un.h time.h ttyent.h usersec.h \
util.h utime.h utmp.h utmpx.h)
diff --git a/openbsd-compat/fake-queue.h b/openbsd-compat/fake-queue.h
index c85bb240..176fe317 100644
--- a/openbsd-compat/fake-queue.h
+++ b/openbsd-compat/fake-queue.h
@@ -36,8 +36,89 @@
* @(#)queue.h 8.5 (Berkeley) 8/20/94
*/
-#ifndef _SYS_QUEUE_H_
-#define _SYS_QUEUE_H_
+#ifndef _FAKE_QUEUE_H_
+#define _FAKE_QUEUE_H_
+
+/*
+ * Ignore all <sys/queue.h> since older platforms have broken/incomplete
+ * <sys/queue.h> that are too hard to work around.
+ */
+#undef SLIST_HEAD
+#undef SLIST_HEAD_INITIALIZER
+#undef SLIST_ENTRY
+#undef SLIST_FIRST
+#undef SLIST_END
+#undef SLIST_EMPTY
+#undef SLIST_NEXT
+#undef SLIST_FOREACH
+#undef SLIST_INIT
+#undef SLIST_INSERT_AFTER
+#undef SLIST_INSERT_HEAD
+#undef SLIST_REMOVE_HEAD
+#undef SLIST_REMOVE
+#undef LIST_HEAD
+#undef LIST_HEAD_INITIALIZER
+#undef LIST_ENTRY
+#undef LIST_FIRST
+#undef LIST_END
+#undef LIST_EMPTY
+#undef LIST_NEXT
+#undef LIST_FOREACH
+#undef LIST_INIT
+#undef LIST_INSERT_AFTER
+#undef LIST_INSERT_BEFORE
+#undef LIST_INSERT_HEAD
+#undef LIST_REMOVE
+#undef LIST_REPLACE
+#undef SIMPLEQ_HEAD
+#undef SIMPLEQ_HEAD_INITIALIZER
+#undef SIMPLEQ_ENTRY
+#undef SIMPLEQ_FIRST
+#undef SIMPLEQ_END
+#undef SIMPLEQ_EMPTY
+#undef SIMPLEQ_NEXT
+#undef SIMPLEQ_FOREACH
+#undef SIMPLEQ_INIT
+#undef SIMPLEQ_INSERT_HEAD
+#undef SIMPLEQ_INSERT_TAIL
+#undef SIMPLEQ_INSERT_AFTER
+#undef SIMPLEQ_REMOVE_HEAD
+#undef TAILQ_HEAD
+#undef TAILQ_HEAD_INITIALIZER
+#undef TAILQ_ENTRY
+#undef TAILQ_FIRST
+#undef TAILQ_END
+#undef TAILQ_NEXT
+#undef TAILQ_LAST
+#undef TAILQ_PREV
+#undef TAILQ_EMPTY
+#undef TAILQ_FOREACH
+#undef TAILQ_FOREACH_REVERSE
+#undef TAILQ_INIT
+#undef TAILQ_INSERT_HEAD
+#undef TAILQ_INSERT_TAIL
+#undef TAILQ_INSERT_AFTER
+#undef TAILQ_INSERT_BEFORE
+#undef TAILQ_REMOVE
+#undef TAILQ_REPLACE
+#undef CIRCLEQ_HEAD
+#undef CIRCLEQ_HEAD_INITIALIZER
+#undef CIRCLEQ_ENTRY
+#undef CIRCLEQ_FIRST
+#undef CIRCLEQ_LAST
+#undef CIRCLEQ_END
+#undef CIRCLEQ_NEXT
+#undef CIRCLEQ_PREV
+#undef CIRCLEQ_EMPTY
+#undef CIRCLEQ_FOREACH
+#undef CIRCLEQ_FOREACH_REVERSE
+#undef CIRCLEQ_INIT
+#undef CIRCLEQ_INSERT_AFTER
+#undef CIRCLEQ_INSERT_BEFORE
+#undef CIRCLEQ_INSERT_HEAD
+#undef CIRCLEQ_INSERT_TAIL
+#undef CIRCLEQ_REMOVE
+#undef CIRCLEQ_REPLACE
/*
* This file defines five types of data structures: singly-linked lists,
@@ -500,4 +581,4 @@ struct { \
(elm2)->field.cqe_prev->field.cqe_next = (elm2); \
} while (0)
-#endif /* !_SYS_QUEUE_H_ */
+#endif /* !_FAKE_QUEUE_H_ */
diff --git a/sftp-client.c b/sftp-client.c
index 254ef6f7..9fa8376e 100644
--- a/sftp-client.c
+++ b/sftp-client.c
@@ -30,11 +30,7 @@
#include "includes.h"
RCSID("$OpenBSD: sftp-client.c,v 1.30 2002/04/01 22:07:17 markus Exp $");
-#if defined(HAVE_SYS_QUEUE_H) && !defined(HAVE_BOGUS_SYS_QUEUE_H)
-#include <sys/queue.h>
-#else
#include "openbsd-compat/fake-queue.h"
-#endif
#include "buffer.h"
#include "bufaux.h"
diff --git a/ssh-agent.c b/ssh-agent.c
index ccce33c3..33596c47 100644
--- a/ssh-agent.c
+++ b/ssh-agent.c
@@ -34,13 +34,8 @@
*/
#include "includes.h"
-RCSID("$OpenBSD: ssh-agent.c,v 1.85 2002/04/02 11:49:39 markus Exp $");
-
-#if defined(HAVE_SYS_QUEUE_H) && !defined(HAVE_BOGUS_SYS_QUEUE_H)
-#include <sys/queue.h>
-#else
#include "openbsd-compat/fake-queue.h"
-#endif
+RCSID("$OpenBSD: ssh-agent.c,v 1.85 2002/04/02 11:49:39 markus Exp $");
#include <openssl/evp.h>
#include <openssl/md5.h>
diff --git a/ssh-keyscan.c b/ssh-keyscan.c
index 824264c3..744f8024 100644
--- a/ssh-keyscan.c
+++ b/ssh-keyscan.c
@@ -9,12 +9,7 @@
#include "includes.h"
RCSID("$OpenBSD: ssh-keyscan.c,v 1.35 2002/03/04 18:30:23 stevesk Exp $");
-#if defined(HAVE_SYS_QUEUE_H) && !defined(HAVE_BOGUS_SYS_QUEUE_H)
-#include <sys/queue.h>
-#else
#include "openbsd-compat/fake-queue.h"
-#endif
-#include <errno.h>
#include <openssl/bn.h>