diff --git a/ChangeLog b/ChangeLog
index 1bbdff7..b7c566b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -4,6 +4,8 @@
  - (djm) Replace "/bin/sh" with _PATH_BSHELL. Report from Corinna Vinschen
    <vinschen@cygnus.com>
  - (djm) Replace "/usr/bin/login" with LOGIN_PROGRAM
+ - (djm) Added check for broken snprintf() functions which do not correctly
+   terminate output string and attempt to use replacement.
 
 20000628
  - (djm) Fixes to lastlog code for Irix
diff --git a/acconfig.h b/acconfig.h
index f10370d..b011d04 100644
--- a/acconfig.h
+++ b/acconfig.h
@@ -6,6 +6,9 @@
 
 @TOP@
 
+/* Define if your snprintf is busted */
+#undef BROKEN_SNPRINTF
+
 /* Define if you are on NeXT */
 #undef HAVE_NEXT
 
diff --git a/bsd-snprintf.c b/bsd-snprintf.c
index c31fc38..ff26a10 100644
--- a/bsd-snprintf.c
+++ b/bsd-snprintf.c
@@ -26,7 +26,7 @@
 
 #include "config.h"
 
-#if !defined(HAVE_SNPRINTF) || !defined(HAVE_VSNPRINTF)
+#if defined(BROKEN_SNPRINTF) || !defined(HAVE_SNPRINTF) || !defined(HAVE_VSNPRINTF)
 
 #include <sys/param.h>
 #include <sys/types.h>
@@ -120,7 +120,7 @@
 	free(curobj);
 }
 
-#if !defined(HAVE_VSNPRINTF)
+#if !defined(HAVE_VSNPRINTF) || defined(BROKEN_SNPRINTF)
 int
 vsnprintf(str, n, fmt, ap)
 	char *str;
@@ -152,9 +152,9 @@
 	(void) sigaction(SIGSEGV, &osa, NULL);
 	return (ret);
 }
-#endif /* !defined(HAVE_VSNPRINTF) */
+#endif /* !defined(HAVE_VSNPRINTF) || defined(BROKEN_SNPRINTF) */
 
-#if !defined(HAVE_SNPRINTF)
+#if !defined(HAVE_SNPRINTF) || defined(BROKEN_SNPRINTF)
 int
 #if __STDC__
 snprintf(char *str, size_t n, char const *fmt, ...)
@@ -176,6 +176,6 @@
 	return (vsnprintf(str, n, fmt, ap));
 	va_end(ap);
 }
-#endif /* !defined(HAVE_SNPRINTF) */
+#endif /* !defined(HAVE_SNPRINTF) || defined(BROKEN_SNPRINTF) */
 
-#endif /* !defined(HAVE_SNPRINTF) || !defined(HAVE_VSNPRINTF) */
+#endif /* defined(BROKEN_SNPRINTF) || !defined(HAVE_SNPRINTF) || !defined(HAVE_VSNPRINTF) */
diff --git a/configure.in b/configure.in
index 8e155f2..dbc5a18 100644
--- a/configure.in
+++ b/configure.in
@@ -235,6 +235,23 @@
 	[AC_CHECK_LIB(ucb, getpagesize, [LIBS="$LIBS -lucb"; AC_DEFINE(HAVE_GETPAGESIZE)])]
 )
 
+# Check for broken snprintf
+if test "x$ac_cv_func_snprintf" = "xyes" ; then
+	AC_MSG_CHECKING([whether snprintf correctly terminates long strings])
+	AC_TRY_RUN(
+		[
+#include <stdio.h>
+int main(void){char b[5];snprintf(b,5,"123456789");return(b[4]!='\0');}
+		],
+		[AC_MSG_RESULT(yes)], 
+		[
+			AC_MSG_RESULT(no)
+			AC_DEFINE(BROKEN_SNPRINTF)
+			AC_MSG_WARN([****** Your snprintf() function is broken, complain to your vendor])
+		]
+	)
+fi
+
 PAM_MSG="no"
 AC_ARG_WITH(pam,
 	[  --without-pam           Disable PAM support ],
