Print this page
2989 Eliminate use of LOGNAME_MAX in ON
1166 useradd have warning with name more 8 chars

@@ -18,10 +18,12 @@
  *
  * CDDL HEADER END
  */
 
 /*
+ * Copyright (c) 2013 Gary Mills
+ *
  * Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved.
  */
 
 /*      Copyright (c) 1988 AT&T */
 /*        All Rights Reserved   */

@@ -220,11 +222,24 @@
 extern char *qecvt(long double, int, int *, int *);
 extern char *qfcvt(long double, int, int *, int *);
 extern char *qgcvt(long double, int, char *);
 extern char *getcwd(char *, size_t);
 extern const char *getexecname(void);
+
+#ifndef __GETLOGIN_DEFINED      /* Avoid duplicate in unistd.h */
+#define __GETLOGIN_DEFINED
+#ifndef __USE_LEGACY_LOGNAME__
+#ifdef  __PRAGMA_REDEFINE_EXTNAME
+#pragma redefine_extname getlogin getloginx
+#else   /* __PRAGMA_REDEFINE_EXTNAME */
+extern char *getloginx(void);
+#define getlogin        getloginx
+#endif  /* __PRAGMA_REDEFINE_EXTNAME */
+#endif  /* __USE_LEGACY_LOGNAME__ */
 extern char *getlogin(void);
+#endif  /* __GETLOGIN_DEFINED */
+
 extern int getopt(int, char *const *, const char *);
 extern char *optarg;
 extern int optind, opterr, optopt;
 extern char *getpass(const char *);
 extern char *getpassphrase(const char *);

@@ -327,11 +342,24 @@
 extern char *qecvt();
 extern char *qfcvt();
 extern char *qgcvt();
 extern char *getcwd();
 extern char *getexecname();
+
+#ifndef __GETLOGIN_DEFINED      /* Avoid duplicate in unistd.h */
+#define __GETLOGIN_DEFINED
+#ifndef __USE_LEGACY_LOGNAME__
+#ifdef  __PRAGMA_REDEFINE_EXTNAME
+#pragma redefine_extname getlogin getloginx
+#else   /* __PRAGMA_REDEFINE_EXTNAME */
+extern char *getloginx();
+#define getlogin        getloginx
+#endif  /* __PRAGMA_REDEFINE_EXTNAME */
+#endif  /* __USE_LEGACY_LOGNAME__ */
 extern char *getlogin();
+#endif  /* __GETLOGIN_DEFINED */
+
 extern int getopt();
 extern char *optarg;
 extern int optind, opterr, optopt;
 extern char *getpass();
 extern char *getpassphrase();