summaryrefslogtreecommitdiff
path: root/source4/lib/replace/getpass.c
diff options
context:
space:
mode:
Diffstat (limited to 'source4/lib/replace/getpass.c')
-rw-r--r--source4/lib/replace/getpass.c35
1 files changed, 32 insertions, 3 deletions
diff --git a/source4/lib/replace/getpass.c b/source4/lib/replace/getpass.c
index 4ffcde8dfd..1aac7c61ab 100644
--- a/source4/lib/replace/getpass.c
+++ b/source4/lib/replace/getpass.c
@@ -18,9 +18,38 @@ Cambridge, MA 02139, USA. */
/* Modified to use with samba by Jeremy Allison, 8th July 1995. */
-#include "includes.h"
-#include "system/terminal.h"
-#include "system/wait.h"
+#include "replace.h"
+#include <stdlib.h>
+
+#if defined(HAVE_TERMIOS_H)
+/* POSIX terminal handling. */
+#include <termios.h>
+#elif defined(HAVE_TERMIO_H)
+/* Older SYSV terminal handling - don't use if we can avoid it. */
+#include <termio.h>
+#elif defined(HAVE_SYS_TERMIO_H)
+/* Older SYSV terminal handling - don't use if we can avoid it. */
+#include <sys/termio.h>
+#endif
+
+#ifdef HAVE_SYS_WAIT_H
+#include <sys/wait.h>
+#endif
+
+/*
+ * Define additional missing types
+ */
+#ifndef HAVE_SIG_ATOMIC_T_TYPE
+typedef int sig_atomic_t;
+#endif
+
+#ifndef SIGCLD
+#define SIGCLD SIGCHLD
+#endif
+
+#ifndef SIGNAL_CAST
+#define SIGNAL_CAST (RETSIGTYPE (*)(int))
+#endif
#ifdef REPLACE_GETPASS