Actual source code: fuser.c
petsc-3.7.7 2017-09-25
2: /*
3: Code for manipulating files.
4: */
5: #include <petscsys.h>
6: #if defined(PETSC_HAVE_WINDOWS_H)
7: #include <windows.h>
8: #endif
10: #if defined(PETSC_HAVE_GET_USER_NAME)
13: PetscErrorCode PetscGetUserName(char name[],size_t nlen)
14: {
16: GetUserName((LPTSTR)name,(LPDWORD)(&nlen));
17: return(0);
18: }
20: #else
23: /*@C
24: PetscGetUserName - Returns the name of the user.
26: Not Collective
28: Input Parameter:
29: nlen - length of name
31: Output Parameter:
32: . name - contains user name. Must be long enough to hold the name
34: Level: developer
36: Concepts: user name
38: .seealso: PetscGetHostName()
39: @*/
40: PetscErrorCode PetscGetUserName(char name[],size_t nlen)
41: {
42: const char *user;
46: user = getenv("USER");
47: if (!user) user = "Unknown";
48: PetscStrncpy(name,user,nlen);
49: return(0);
50: }
51: #endif