summaryrefslogtreecommitdiffstats
path: root/private/windows/gina/winlogon/usrenv.h
blob: 6891a689da46049151ca4f38a3f7e59c768bd94b (plain) (blame)
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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
/****************************** Module Header ******************************\
* Module Name: usrenv.h
*
* Copyright (c) 1991, Microsoft Corporation
*
* Define constants user by and apis in usrenv.c
*
* History:
* 12-09-91 Davidc       Created.
\***************************************************************************/

#define COLON   TEXT(':')
#define BSLASH  TEXT('\\')

//
// Define the source for the event log handle used to log profile failures.
//
#define EVENTLOG_SOURCE       TEXT("Winlogon")


//
// Value names for for different environment variables
//

#define PATH_VARIABLE               TEXT("PATH")
#define LIBPATH_VARIABLE            TEXT("LibPath")
#define OS2LIBPATH_VARIABLE         TEXT("Os2LibPath")
#define AUTOEXECPATH_VARIABLE       TEXT("AutoexecPath")

#define HOMEDRIVE_VARIABLE          TEXT("HOMEDRIVE")
#define HOMESHARE_VARIABLE          TEXT("HOMESHARE")
#define HOMEPATH_VARIABLE           TEXT("HOMEPATH")

#define COMPUTERNAME_VARIABLE       TEXT("COMPUTERNAME")
#define USERNAME_VARIABLE           TEXT("USERNAME")
#define USERDOMAIN_VARIABLE         TEXT("USERDOMAIN")
#define USERPROFILE_VARIABLE        TEXT("USERPROFILE")

//
// Default directories used when the user's home directory does not exist
// or is invalid.
//

#define ROOT_DIRECTORY          TEXT("\\")
#define USERS_DIRECTORY         TEXT("\\users")
#define USERS_DEFAULT_DIRECTORY TEXT("\\users\\default")

#define NULL_STRING             TEXT("")

//
// Defines for Logon script paths.
//

#define SERVER_SCRIPT_PATH      TEXT("\\NETLOGON\\")
#define LOCAL_SCRIPT_PATH       TEXT("\\repl\\import\\scripts\\")


//
// Prototypes
//


BOOL
SetupUserEnvironment(
    PGLOBALS pGlobals
    );

VOID
ResetEnvironment(
    PGLOBALS pGlobals
    );

BOOL
SetupBasicEnvironment(
    PVOID * ppEnv
    );

VOID InitSystemParametersInfo(
    PGLOBALS pGlobals,
    BOOL bUserLoggedOn
    );

BOOL
OpenHKeyCurrentUser(
    PGLOBALS pGlobals
    );

VOID
CloseHKeyCurrentUser(
    PGLOBALS pGlobals
    );

VOID
ClearUserProfileData(
    PUSER_PROFILE_INFO UserProfileData
    );