2005-05-25 Derek Price <derek@ximbiot.com>
Paul Eggert <eggert@cs.ucla.edu>
- * lib/getlogin_r.c, lib/getlogin_r.h, m4/getlogin_r.m4,
- modules/getlogin_r: New files.
+ * modules/getlogin_r: New files.
2005-05-18 Derek Price <derek@ximbiot.com>
+2005-05-25 Derek Price <derek@ximbiot.com>
+ Paul Eggert <eggert@cs.ucla.edu>
+
+ * getlogin_r.c, getlogin_r.h: New files.
+
2005-05-22 Bruno Haible <bruno@clisp.org>
* minmax.h: Include <limits.h> only when it defines MIN, MAX.
/* written by Paul Eggert and Derek Price */
-#include <config.h>
+#if HAVE_CONFIG_H
+# include <config.h>
+#endif
#include "getlogin_r.h"
getlogin_r (char *name, size_t size)
{
char *n;
- int save_errno = errno;
+ size_t nlen;
errno = 0;
n = getlogin ();
- if (n)
- {
- size_t nlen = strlen (n);
- if (nlen < size)
- {
- memcpy (name, n, nlen + 1);
- return 0;
- }
- errno = ERANGE;
- }
-
- if (errno) return errno;
- errno = save_errno;
- return -1;
+ if (!n)
+ return errno ? errno : ENOENT;
+ nlen = strlen (n);
+ if (size <= nlen)
+ return ERANGE;
+ memcpy (name, n, nlen + 1);
+ return 0;
}
See <http://www.opengroup.org/onlinepubs/009695399/functions/getlogin.html>.
*/
+# include <stddef.h>
int getlogin_r (char *name, size_t size);
#endif
+2005-05-25 Derek Price <derek@ximbiot.com>
+ Paul Eggert <eggert@cs.ucla.edu>
+
+ * getlogin_r.m4: New files.
+
2005-05-22 Bruno Haible <bruno@clisp.org>
* minmax.m4: New file.
* uintmax_t.m4: New file.
* Makefile.am (EXTRA_DIST): Add inttypes_h.m4 and uintmax_t.m4.
-Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
+Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
-are permitted provided the copyright notice and this notice are preserved.
\ No newline at end of file
+are permitted provided the copyright notice and this notice are preserved.