diff options
author | Joel Sherrill <joel.sherrill@OARcorp.com> | 2010-07-05 21:31:56 +0000 |
---|---|---|
committer | Joel Sherrill <joel.sherrill@OARcorp.com> | 2010-07-05 21:31:56 +0000 |
commit | c00b80c1528c2c0b3e11c68f40d139875df47374 (patch) | |
tree | 7b885435f502c06c0e1aa865cdb20f911eeeb92e /cpukit/libcsupport/src/getlogin.c | |
parent | 2010-07-05 Joel Sherrill <joel.sherrill@oarcorp.com> (diff) | |
download | rtems-c00b80c1528c2c0b3e11c68f40d139875df47374.tar.bz2 |
2010-07-05 Joel Sherrill <joel.sherrill@oarcorp.com>
* libcsupport/src/getlogin.c: Formatting. Add EFAULT.
* libcsupport/src/termios.c: Formatting.
Diffstat (limited to 'cpukit/libcsupport/src/getlogin.c')
-rw-r--r-- | cpukit/libcsupport/src/getlogin.c | 28 |
1 files changed, 11 insertions, 17 deletions
diff --git a/cpukit/libcsupport/src/getlogin.c b/cpukit/libcsupport/src/getlogin.c index 06b576f234..8515a75ed5 100644 --- a/cpukit/libcsupport/src/getlogin.c +++ b/cpukit/libcsupport/src/getlogin.c @@ -19,46 +19,40 @@ #include <unistd.h> #include <pwd.h> -/*PAGE - * +/* * 4.2.4 Get User Name, P1003.1b-1993, p. 87 * * NOTE: P1003.1c/D10, p. 49 adds getlogin_r(). */ - -/* - * MACRO in userenv.h - * -static char _POSIX_types_Getlogin_buffer[ LOGIN_NAME_MAX ]; -*/ - char *getlogin( void ) { (void) getlogin_r( _POSIX_types_Getlogin_buffer, LOGIN_NAME_MAX ); return _POSIX_types_Getlogin_buffer; } -/*PAGE - * +/* * 4.2.4 Get User Name, P1003.1b-1993, p. 87 * * NOTE: P1003.1c/D10, p. 49 adds getlogin_r(). */ - int getlogin_r( char *name, size_t namesize ) { struct passwd *pw; + + if ( !name ) + return EFAULT; + if ( namesize < LOGIN_NAME_MAX ) return ERANGE; - pw=getpwuid(getuid()); - if (!pw) { - strcpy(name,""); + pw = getpwuid(getuid()); + if ( !pw ) { + strcpy( name, "" ); } else { - strncpy(name,pw->pw_name,LOGIN_NAME_MAX); - }; + strncpy( name, pw->pw_name, LOGIN_NAME_MAX ); + } return 0; } |