summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--lib/ChangeLog5
-rw-r--r--lib/getpass.c4
-rw-r--r--lib/getpass.h31
-rw-r--r--m4/ChangeLog5
-rw-r--r--m4/getpass.m44
-rw-r--r--modules/getpass3
-rw-r--r--modules/getpass-gnu4
8 files changed, 58 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 8bb8bc14a6..735d385cee 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -18,6 +18,10 @@
* modules/xgethostname (Depends-on): Remove exit and error (not
used).
+ * modules/getpass-gnu: Add getpass.h.
+ (Depends-on): Add stdbool.
+ * modules/getpass: Add getpass.h.
+
2004-08-06 Paul Eggert <eggert@cs.ucla.edu>
More merge from coreutils.
diff --git a/lib/ChangeLog b/lib/ChangeLog
index 194a6cc8f8..fc892c979c 100644
--- a/lib/ChangeLog
+++ b/lib/ChangeLog
@@ -1,7 +1,10 @@
2004-08-08 Simon Josefsson <jas@extundo.com>
-
+
* xgethostname.c: Don't include error.h (not used).
+ * getpass.h: Add.
+ * getpass.c: Include getpass.h first.
+
2004-08-08 Paul Eggert <eggert@cs.ucla.edu>
* xalloc-die.c: New files.
diff --git a/lib/getpass.c b/lib/getpass.c
index 8a993d3e05..9ac01f2277 100644
--- a/lib/getpass.c
+++ b/lib/getpass.c
@@ -19,6 +19,10 @@
# include <config.h>
#endif
+#if !_LIBC
+# include "getpass.h"
+#endif
+
#if _LIBC
# define HAVE_STDIO_EXT_H 1
#endif
diff --git a/lib/getpass.h b/lib/getpass.h
new file mode 100644
index 0000000000..6502126497
--- /dev/null
+++ b/lib/getpass.h
@@ -0,0 +1,31 @@
+/* getpass.h -- Read a password of arbitrary length from /dev/tty or stdin.
+ Copyright (C) 2004 Free Software Foundation, Inc.
+ Contributed by Simon Josefsson <jas@extundo.com>, 2004.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software Foundation,
+ Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#ifndef GETPASS_H
+#define GETPASS_H
+
+/* Get getpass declaration, if available. */
+#include <unistd.h>
+
+#if defined HAVE_DECL_GETPASS && !HAVE_DECL_GETPASS
+/* Read a password of arbitrary length from /dev/tty or stdin. */
+char *getpass (const char *prompt);
+
+#endif
+
+#endif /* GETPASS_H */
diff --git a/m4/ChangeLog b/m4/ChangeLog
index d85088454e..5b5b3470b8 100644
--- a/m4/ChangeLog
+++ b/m4/ChangeLog
@@ -4,6 +4,11 @@
* sha1.m4: Renamed from sha.m4.
(gl_SHA1): Renamed from gl_SHA. All uses changed.
+2004-08-08 Simon Josefsson <jas@extundo.com>
+
+ * getpass.m4 (gl_FUNC_GETPASS, gl_FUNC_GETPASS_GNU):
+ Check getpass declaration.
+
2004-08-06 Paul Eggert <eggert@cs.ucla.edu>
More merge from coreutils.
diff --git a/m4/getpass.m4 b/m4/getpass.m4
index 4449bc5fb6..0c4d8050f2 100644
--- a/m4/getpass.m4
+++ b/m4/getpass.m4
@@ -1,4 +1,4 @@
-# getpass.m4 serial 3
+# getpass.m4 serial 4
dnl Copyright (C) 2002-2003 Free Software Foundation, Inc.
dnl This file is free software, distributed under the terms of the GNU
dnl General Public License. As a special exception to the GNU General
@@ -10,6 +10,7 @@ dnl the same distribution terms as the rest of that program.
AC_DEFUN([gl_FUNC_GETPASS],
[
AC_REPLACE_FUNCS(getpass)
+ AC_CHECK_DECLS_ONCE(getpass)
if test $ac_cv_func_getpass = no; then
gl_PREREQ_GETPASS
fi
@@ -19,6 +20,7 @@ AC_DEFUN([gl_FUNC_GETPASS],
# arbitrary length (not just 8 bytes as on HP-UX).
AC_DEFUN([gl_FUNC_GETPASS_GNU],
[
+ AC_CHECK_DECLS_ONCE(getpass)
dnl TODO: Detect when GNU getpass() is already found in glibc.
AC_LIBOBJ(getpass)
gl_PREREQ_GETPASS
diff --git a/modules/getpass b/modules/getpass
index f7d00f31c6..1d4b3addfe 100644
--- a/modules/getpass
+++ b/modules/getpass
@@ -2,6 +2,7 @@ Description:
getpass() function: read a password from /dev/tty.
Files:
+lib/getpass.h
lib/getpass.c
m4/getpass.m4
@@ -14,8 +15,10 @@ configure.ac:
gl_FUNC_GETPASS
Makefile.am:
+lib_SOURCES += getpass.h
Include:
+"getpass.h"
Maintainer:
Jim Meyering, glibc
diff --git a/modules/getpass-gnu b/modules/getpass-gnu
index 01c26869e7..945731fdb5 100644
--- a/modules/getpass-gnu
+++ b/modules/getpass-gnu
@@ -2,19 +2,23 @@ Description:
getpass() function: read a password of arbitrary length from /dev/tty.
Files:
+lib/getpass.h
lib/getpass.c
m4/getpass.m4
Depends-on:
unlocked-io
getline
+stdbool
configure.ac:
gl_FUNC_GETPASS_GNU
Makefile.am:
+lib_SOURCES += getpass.h
Include:
+"getpass.h"
Maintainer:
Jim Meyering, glibc