]> git.sur5r.net Git - openldap/commitdiff
Use getpassphrase() instead of getpass() if available.
authorKurt Zeilenga <kurt@openldap.org>
Fri, 19 May 2000 18:41:26 +0000 (18:41 +0000)
committerKurt Zeilenga <kurt@openldap.org>
Fri, 19 May 2000 18:41:26 +0000 (18:41 +0000)
clients/tools/ldapdelete.c
clients/tools/ldapmodify.c
clients/tools/ldapmodrdn.c
clients/tools/ldappasswd.c
clients/tools/ldapsearch.c
clients/ud/auth.c
configure
configure.in
include/ac/unistd.h
include/portable.h.in
libraries/liblutil/getpass.c

index 5a69de52a8b56e1f4b8dba390e0e9b0f63b0c486..6e06b769e34ef3e005f0d27568e7c7940c8e0e04 100644 (file)
@@ -318,7 +318,7 @@ main( int argc, char **argv )
        }
 
        if (want_bindpw)
-               passwd.bv_val = getpass("Enter LDAP Password: ");
+               passwd.bv_val = getpassphrase("Enter LDAP Password: ");
                passwd.bv_len = strlen( passwd.bv_val );
 
        if ( authmethod == LDAP_AUTH_SASL ) {
index ea00cb33fdf398cbb7392e9e6f5cdf24ac74489c..d2b453cd1e6fa3892abf1be2be41f51d97af55bd 100644 (file)
@@ -382,7 +382,7 @@ main( int argc, char **argv )
        }
 
        if (want_bindpw)
-               passwd.bv_val = getpass("Enter LDAP Password: ");
+               passwd.bv_val = getpassphrase("Enter LDAP Password: ");
                passwd.bv_len = strlen( passwd.bv_val );
 
        if ( authmethod == LDAP_AUTH_SASL ) {
index 5b7a4036218fc888c88323e8c65aedeec8fde830..3aa05b10f073d3e363b3d821a61be97aa7829071 100644 (file)
@@ -365,7 +365,7 @@ main(int argc, char **argv)
        }
 
        if (want_bindpw)
-               passwd.bv_val = getpass("Enter LDAP Password: ");
+               passwd.bv_val = getpassphrase("Enter LDAP Password: ");
                passwd.bv_len = strlen( passwd.bv_val );
 
        if ( authmethod == LDAP_AUTH_SASL ) {
index aa81513dd9ad7a9c8bfa5a49aa1ab6743cdc70e3..18b19c2d6143aebcb460273d14a8c544b56081d4 100644 (file)
@@ -246,8 +246,8 @@ main( int argc, char *argv[] )
        if( want_oldpw && oldpw == NULL ) {
                /* prompt for old password */
                char *ckoldpw;
-               newpw = strdup(getpass("Old password: "));
-               ckoldpw = getpass("Re-enter old password: ");
+               newpw = strdup(getpassphrase("Old password: "));
+               ckoldpw = getpassphrase("Re-enter old password: ");
 
                if( strncmp( oldpw, ckoldpw, strlen(oldpw) )) {
                        fprintf( stderr, "passwords do not match\n" );
@@ -258,8 +258,8 @@ main( int argc, char *argv[] )
        if( want_newpw && newpw == NULL ) {
                /* prompt for new password */
                char *cknewpw;
-               newpw = strdup(getpass("New password: "));
-               cknewpw = getpass("Re-enter new password: ");
+               newpw = strdup(getpassphrase("New password: "));
+               cknewpw = getpassphrase("Re-enter new password: ");
 
                if( strncmp( newpw, cknewpw, strlen(newpw) )) {
                        fprintf( stderr, "passwords do not match\n" );
@@ -280,7 +280,7 @@ main( int argc, char *argv[] )
        if (want_bindpw && passwd.bv_val == NULL ) {
                /* handle bind password */
                fprintf( stderr, "Bind DN: %s\n", binddn );
-               passwd.bv_val = strdup( getpass("Enter bind password: "));
+               passwd.bv_val = strdup( getpassphrase("Enter bind password: "));
                passwd.bv_len = strlen( passwd.bv_val );
        }
 
index 096568345c42e954f419bf58f9df09f6102bada7..da6831074139dffcfe6e7859ac642aa9407b9cee 100644 (file)
@@ -521,7 +521,7 @@ main( int argc, char **argv )
        }
 
        if (want_bindpw) {
-               passwd.bv_val = getpass("Enter LDAP Password: ");
+               passwd.bv_val = getpassphrase("Enter LDAP Password: ");
                passwd.bv_len = strlen( passwd.bv_val );
        }
 
index 37eb8ccb787e4a80e31dbf3f17c61728b9f9c30e..5ae44ef154888c995733d15c1091a6262e4ef939 100644 (file)
@@ -50,7 +50,7 @@ int
 auth( char *who, int implicit )
 {
        int rc;                 /* return code from ldap_bind() */
-       char *passwd = NULL;    /* returned by getpass() */
+       char *passwd = NULL;    /* returned by getpassphrase() */
        char **rdns;            /* for fiddling with the DN */
        int authmethod;
        int name_provided;      /* was a name passed in? */
@@ -241,7 +241,7 @@ auth( char *who, int implicit )
                authmethod = LDAP_AUTH_SIMPLE;
                sprintf(prompt, "  Enter your LDAP password: ");
                do {
-                       passwd = getpass(prompt);
+                       passwd = getpassphrase(prompt);
                } while (passwd != NULL && *passwd == '\0');
                if (passwd == NULL) {
                        (void) ldap_value_free(rdns);
@@ -352,7 +352,7 @@ krbgetpass( char *user, char *inst, char *realm, char *pw, C_Block key )
        sprintf(prompt, "  Enter Kerberos password for %s: ", kauth_name );
 #endif
        do {
-               passwd = getpass(prompt);
+               passwd = getpassphrase(prompt);
        } while (passwd != NULL && *passwd == '\0');
        if (passwd == NULL) {
                return(-1);
index d069b796193248c08be1751a5de4cd6a72149806..83366dc771d1b3ddb64eb7d90949b6e3d0ccb26e 100755 (executable)
--- a/configure
+++ b/configure
@@ -15539,6 +15539,7 @@ for ac_func in \
        getgrgid                \
        gethostname             \
        getpass                 \
+       getpassphrase   \
        getpwuid                \
        getpwnam                \
        getspnam                \
@@ -15580,12 +15581,12 @@ for ac_func in \
 
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:15584: checking for $ac_func" >&5
+echo "configure:15585: checking for $ac_func" >&5
 if eval "test \"\${ac_cv_func_$ac_func+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 15589 "configure"
+#line 15590 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -15609,7 +15610,7 @@ f = $ac_func;
 
 ; return 0; }
 EOF
-if { (eval echo configure:15613: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:15614: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -15637,12 +15638,12 @@ done
 for ac_func in getopt tempnam
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:15641: checking for $ac_func" >&5
+echo "configure:15642: checking for $ac_func" >&5
 if eval "test \"\${ac_cv_func_$ac_func+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 15646 "configure"
+#line 15647 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -15666,7 +15667,7 @@ f = $ac_func;
 
 ; return 0; }
 EOF
-if { (eval echo configure:15670: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:15671: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
 
 # Check Configuration
 echo $ac_n "checking declaration of sys_errlist""... $ac_c" 1>&6
-echo "configure:15707: checking declaration of sys_errlist" >&5
+echo "configure:15708: checking declaration of sys_errlist" >&5
 if eval "test \"\${ol_cv_dcl_sys_errlist+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
        cat > conftest.$ac_ext <<EOF
-#line 15713 "configure"
+#line 15714 "configure"
 #include "confdefs.h"
 
 #include <stdio.h>
@@ -15722,7 +15723,7 @@ int main() {
 char *c = (char *) *sys_errlist
 ; return 0; }
 EOF
-if { (eval echo configure:15726: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:15727: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ol_cv_dcl_sys_errlist=yes
        ol_cv_have_sys_errlist=yes
@@ -15745,20 +15746,20 @@ EOF
 
 
        echo $ac_n "checking existence of sys_errlist""... $ac_c" 1>&6
-echo "configure:15749: checking existence of sys_errlist" >&5
+echo "configure:15750: checking existence of sys_errlist" >&5
 if eval "test \"\${ol_cv_have_sys_errlist+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
                cat > conftest.$ac_ext <<EOF
-#line 15755 "configure"
+#line 15756 "configure"
 #include "confdefs.h"
 #include <errno.h>
 int main() {
 char *c = (char *) *sys_errlist
 ; return 0; }
 EOF
-if { (eval echo configure:15762: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:15763: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ol_cv_have_sys_errlist=yes
 else
index aba593f2ca8230ae6d9bed760c8f09244cdb10d9..d39b36b3d87773258565af333bec11aac7f91525 100644 (file)
@@ -2138,6 +2138,7 @@ AC_CHECK_FUNCS(           \
        getgrgid                \
        gethostname             \
        getpass                 \
+       getpassphrase   \
        getpwuid                \
        getpwnam                \
        getspnam                \
index 7f7476a55d30d74cd8cead43a25a9ed1995196ae..b7710dcd75b8e43e164c4f9d2ff60e7e9fb84863 100644 (file)
 
 /* note: callers of crypt(3) should include <ac/crypt.h> */
 
-#ifndef HAVE_GETPASS
-LIBLUTIL_F(char*)(getpass) LDAP_P((const char *getpass));
-#else
+#if defined(HAVE_GETPASSPHRASE)
+LIBC_F(char*)(getpassphrase)();
+
+#elif defined(HAVE_GETPASS)
+#define getpassphrase(p) getpass(p)
 LIBC_F(char*)(getpass)();
+
+#else
+#define NEED_GETPASSPHRASE 1
+#define getpassphrase(p) lutil_getpass(p)
+LIBLUTIL_F(char*)(lutil_getpass) LDAP_P((const char *getpass));
 #endif
 
 /* getopt() defines may be in separate include file */
index 0de51380f6ee9b43cdca93e30df9cc4cd17a6fd7..27d5effca1b0a536ca6c3ee369028d888529176e 100644 (file)
 /* Define if you have the getpass function.  */
 #undef HAVE_GETPASS
 
+/* Define if you have the getpassphrase function.  */
+#undef HAVE_GETPASSPHRASE
+
 /* Define if you have the getpwnam function.  */
 #undef HAVE_GETPWNAM
 
index ca8dee6c7e0eb5ee1b589b1be889b9d3645e9491..7da409108e4eef6b501c39321020867c5bae6dce 100644 (file)
@@ -17,8 +17,6 @@
 
 #include "portable.h"
 
-#ifndef HAVE_GETPASS
-
 #include <stdio.h>
 
 #include <ac/stdlib.h>
@@ -30,6 +28,8 @@
 #include <ac/time.h>
 #include <ac/unistd.h>
 
+#ifdef NEED_GETPASSPHRASE
+
 #ifdef HAVE_FCNTL_H
 #include <fcntl.h>
 #endif
 #include "ldap_defaults.h"
 
 char *
-getpass( const char *prompt )
+lutil_getpass( const char *prompt )
 {
 #if !defined(HAVE_POSIX_TERMIOS) && !defined(HAVE_SGTTY_H)
        static char buf[256];
        int i, c;
 
+       if( prompt == NULL ) prompt = "Password: ";
+
 #ifdef DEBUG
        if (debug & D_TRACE)
                printf("->getpass(%s)\n", prompt);
 #endif
+
        printf("%s", prompt);
        i = 0;
        while ( (c = getch()) != EOF && c != '\n' && c != '\r' )
@@ -73,6 +76,8 @@ getpass( const char *prompt )
        FILE *fi;
        RETSIGTYPE (*sig)( int sig );
 
+       if( prompt == NULL ) prompt = "Password: ";
+
 #ifdef DEBUG
        if (debug & D_TRACE)
                printf("->getpass(%s)\n", prompt);
@@ -155,4 +160,4 @@ getpass( const char *prompt )
 #endif
 }
 
-#endif /* !HAVE_GETPASS */
+#endif /* !NEED_GETPASSPHRASE */