1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58
|
/*
**GRUSER -- get user name (POSIX)
*+
* SUBROUTINE GRUSER(STRING, L)
* CHARACTER*(*) STRING
* INTEGER L
*
* Return the name of the user running the program.
*
* Arguments:
* STRING : receives user name, truncated or extended with
* blanks as necessary.
* L : receives the number of characters in VALUE, excluding
* trailing blanks.
*--
* 08-Nov-1994
*-----------------------------------------------------------------------
*/
#ifdef PG_PPU
#define GRUSER gruser_
#else
#define GRUSER gruser
#endif
char *getlogin();
void GRUSER(string, length, maxlen)
char *string;
int *length;
int maxlen;
{
int i;
/*
* Get the login name of the PGPLOT user.
*/
char *user = getlogin();
/*
* If the user name is not available substitute an empty string.
*/
if(!user)
user = "";
/*
* Copy the user name to the output string.
*/
for(i=0; i<maxlen && user[i]; i++)
string[i] = user[i];
/*
* Return the un-padded length of the user name string.
*/
*length = i;
/*
* Pad to the end of the output string with spaces.
*/
for( ; i<maxlen; i++)
string[i] = ' ';
return;
}
|