From fb90d67b2fe8fd4017e9f55911ceb9dfa06f36e4 Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Sun, 29 Aug 2010 19:48:52 +0000 Subject: 2010-08-29 Joel Sherrill * libcsupport/src/getlogin.c: Modify to use strncpy() on all paths. --- cpukit/libcsupport/src/getlogin.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) (limited to 'cpukit/libcsupport') diff --git a/cpukit/libcsupport/src/getlogin.c b/cpukit/libcsupport/src/getlogin.c index 8515a75ed5..f98e7ca9e0 100644 --- a/cpukit/libcsupport/src/getlogin.c +++ b/cpukit/libcsupport/src/getlogin.c @@ -41,6 +41,7 @@ int getlogin_r( ) { struct passwd *pw; + char *pname; if ( !name ) return EFAULT; @@ -48,11 +49,13 @@ int getlogin_r( if ( namesize < LOGIN_NAME_MAX ) return ERANGE; + /* Set the pointer to a default name */ + pname = ""; + pw = getpwuid(getuid()); - if ( !pw ) { - strcpy( name, "" ); - } else { - strncpy( name, pw->pw_name, LOGIN_NAME_MAX ); - } + if ( pw ) + pname = pw->pw_name; + + strncpy( name, pname, LOGIN_NAME_MAX ); return 0; } -- cgit v1.2.3