Make all configuration macros available for application by making
[openssl.git] / crypto / des / read_pwd.c
index ffa72be7348b172346fe35100a093f20150ac85e..b9d8029b8eac41664d77d9930e60936985b657b7 100644 (file)
 #undef  SGTTY
 #endif
 
-#if !defined(TERMIO) && !defined(TERMIOS) && !defined(VMS) && !defined(MSDOS) && !defined(MAC_OS_pre_X)
+#if !defined(TERMIO) && !defined(TERMIOS) && !defined(VMS) && !defined(MSDOS) && !defined(MAC_OS_pre_X) && !defined(MAC_OS_GUSI_SOURCE)
 #undef  TERMIOS
 #undef  TERMIO
 #define SGTTY
 #include <sys/ioctl.h>
 #endif
 
-#ifdef MSDOS
+#if defined(MSDOS) && !defined(__CYGWIN32__)
 #include <conio.h>
 #define fgets(a,b,c) noecho_fgets(a,b,c)
 #endif
@@ -178,7 +178,7 @@ struct IOSB {
        };
 #endif
 
-#ifdef MAC_OS_pre_X
+#if defined(MAC_OS_pre_X) || defined(MAC_OS_GUSI_SOURCE)
 /*
  * This one needs work. As a matter of fact the code is unoperational
  * and this is only a trick to get it compiled.
@@ -265,13 +265,17 @@ int des_read_pw(char *buf, char *buff, int size, const char *prompt,
        is_a_tty=1;
        tty=NULL;
 
-#ifndef MSDOS
-       if ((tty=fopen("/dev/tty","r")) == NULL)
-               tty=stdin;
-#else /* MSDOS */
+#ifdef MSDOS
        if ((tty=fopen("con","r")) == NULL)
                tty=stdin;
-#endif /* MSDOS */
+#elif defined(MAC_OS_pre_X)
+       tty=stdin;
+#else
+#ifndef OPENSSL_SYS_MPE
+       if ((tty=fopen("/dev/tty","r")) == NULL)
+#endif
+               tty=stdin;
+#endif
 
 #if defined(TTY_get) && !defined(VMS)
        if (TTY_get(fileno(tty),&tty_orig) == -1)
@@ -310,8 +314,12 @@ int des_read_pw(char *buf, char *buff, int size, const char *prompt,
 
 #if defined(TTY_set) && !defined(VMS)
        if (is_a_tty && (TTY_set(fileno(tty),&tty_new) == -1))
+#ifdef OPENSSL_SYS_MPE 
+               ; /* MPE lies -- echo really has been disabled */
+#else
                return(-1);
 #endif
+#endif
 #ifdef VMS
        tty_new[0] = tty_orig[0];
        tty_new[1] = tty_orig[1] | TT$M_NOECHO;