/* ******************************************************************************* * Copyright (c) 1996 Martin Poole * ******************************************************************************* ** ** WARNING !! WARNING !! WARNING !! WARNING !! WARNING !! WARNING !! ** ** Any changes to be made to this file should first be checked with ** mplib1 source control for library integrity. ** ** mplib1 source control can be reached at mplib1@quatermass.co.uk ** * * * $Source$ * $Author$ * $Date$ * $Revision$ * * ******************************************************************************* * * * $Log$ * ******************************************************************************* */ /* ------------------------------------------------------------------ Include files ------------------------------------------------------------------ */ #include #include #include #include #include #include #include #include #include #include #include #include #include /* ------------------------------------------------------------------ defines ------------------------------------------------------------------ */ static char unknown[]="UNKNOWN"; static char *me_name=NULL; /* ------------------------------------------------------------------ Code starts here ------------------------------------------------------------------ */ char * get_my_uname( void ) { struct passwd *pwd; if (me_name==NULL) { pwd = getpwuid(getuid()); if (pwd) { me_name = strdup( pwd->pw_name ); }else { me_name = malloc( PID_STR_LEN + 2 ); if (me_name) sprintf( me_name, "[%d]", (int)getuid() ); } if (me_name==NULL) me_name = unknown; } return(me_name); } /* -- End of File -- */