ReactOS 0.4.15-dev-7924-g5949c20
lmaccess.h File Reference
#include <lmcons.h>
Include dependency graph for lmaccess.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  _USER_INFO_0
 
struct  _USER_INFO_1
 
struct  _USER_INFO_2
 
struct  _USER_INFO_3
 
struct  _USER_INFO_4
 
struct  _USER_INFO_10
 
struct  _USER_INFO_11
 
struct  _USER_INFO_20
 
struct  _USER_INFO_21
 
struct  _USER_INFO_22
 
struct  _USER_INFO_23
 
struct  _USER_INFO_1003
 
struct  _USER_INFO_1005
 
struct  _USER_INFO_1006
 
struct  _USER_INFO_1007
 
struct  _USER_INFO_1008
 
struct  _USER_INFO_1009
 
struct  _USER_INFO_1010
 
struct  _USER_INFO_1011
 
struct  _USER_INFO_1012
 
struct  _USER_INFO_1013
 
struct  _USER_INFO_1014
 
struct  _USER_INFO_1017
 
struct  _USER_INFO_1018
 
struct  _USER_INFO_1020
 
struct  _USER_INFO_1023
 
struct  _USER_INFO_1024
 
struct  _USER_INFO_1025
 
struct  _USER_INFO_1051
 
struct  _USER_INFO_1052
 
struct  _USER_INFO_1053
 
struct  _USER_MODALS_INFO_0
 
struct  _USER_MODALS_INFO_1
 
struct  _USER_MODALS_INFO_2
 
struct  _USER_MODALS_INFO_3
 
struct  _USER_MODALS_INFO_1001
 
struct  _USER_MODALS_INFO_1002
 
struct  _USER_MODALS_INFO_1003
 
struct  _USER_MODALS_INFO_1004
 
struct  _USER_MODALS_INFO_1005
 
struct  _USER_MODALS_INFO_1006
 
struct  _USER_MODALS_INFO_1007
 
struct  _GROUP_INFO_0
 
struct  _GROUP_INFO_1
 
struct  _GROUP_INFO_2
 
struct  _GROUP_INFO_3
 
struct  _GROUP_INFO_1002
 
struct  _GROUP_INFO_1005
 
struct  _GROUP_USERS_INFO_0
 
struct  _GROUP_USERS_INFO_1
 
struct  _LOCALGROUP_INFO_0
 
struct  _LOCALGROUP_INFO_1
 
struct  _LOCALGROUP_INFO_1002
 
struct  _LOCALGROUP_MEMBERS_INFO_0
 
struct  _LOCALGROUP_MEMBERS_INFO_1
 
struct  _LOCALGROUP_MEMBERS_INFO_2
 
struct  _LOCALGROUP_MEMBERS_INFO_3
 
struct  _LOCALGROUP_USERS_INFO_0
 
struct  _NET_DISPLAY_USER
 
struct  _NET_DISPLAY_MACHINE
 
struct  _NET_DISPLAY_GROUP
 
struct  _ACCESS_INFO_0
 
struct  _ACCESS_INFO_1
 
struct  _ACCESS_INFO_1002
 
struct  _ACCESS_LIST
 
struct  _NETLOGON_INFO_1
 
struct  _NETLOGON_INFO_2
 
struct  _NETLOGON_INFO_3
 

Macros

#define GROUP_SPECIALGRP_USERS   L"USERS"
 
#define GROUP_SPECIALGRP_ADMINS   L"ADMINS"
 
#define GROUP_SPECIALGRP_GUESTS   L"GUESTS"
 
#define GROUP_SPECIALGRP_LOCAL   L"LOCAL"
 
#define ACCESS_LETTERS   "RWCXDAP "
 
#define NETLOGON_CONTROL_QUERY   1
 
#define NETLOGON_CONTROL_REPLICATE   2
 
#define NETLOGON_CONTROL_SYNCHRONIZE   3
 
#define NETLOGON_CONTROL_PDC_REPLICATE   4
 
#define NETLOGON_CONTROL_REDISCOVER   5
 
#define NETLOGON_CONTROL_TC_QUERY   6
 
#define NETLOGON_CONTROL_BACKUP_CHANGE_LOG   65532
 
#define NETLOGON_CONTROL_TRUNCATE_LOG   65533
 
#define NETLOGON_CONTROL_SET_DBFLAG   65534
 
#define NETLOGON_CONTROL_BREAKPOINT   65535
 
#define UF_SCRIPT   1
 
#define UF_ACCOUNTDISABLE   2
 
#define UF_HOMEDIR_REQUIRED   8
 
#define UF_LOCKOUT   16
 
#define UF_PASSWD_NOTREQD   32
 
#define UF_PASSWD_CANT_CHANGE   64
 
#define UF_TEMP_DUPLICATE_ACCOUNT   256
 
#define UF_NORMAL_ACCOUNT   512
 
#define UF_INTERDOMAIN_TRUST_ACCOUNT   2048
 
#define UF_WORKSTATION_TRUST_ACCOUNT   4096
 
#define UF_SERVER_TRUST_ACCOUNT   8192
 
#define UF_MNS_LOGON_ACCOUNT   131072
 
#define UF_MACHINE_ACCOUNT_MASK   (UF_INTERDOMAIN_TRUST_ACCOUNT|UF_WORKSTATION_TRUST_ACCOUNT|UF_SERVER_TRUST_ACCOUNT)
 
#define UF_ACCOUNT_TYPE_MASK   (UF_TEMP_DUPLICATE_ACCOUNT|UF_NORMAL_ACCOUNT|UF_INTERDOMAIN_TRUST_ACCOUNT|UF_WORKSTATION_TRUST_ACCOUNT|UF_SERVER_TRUST_ACCOUNT)
 
#define UF_DONT_EXPIRE_PASSWD   65536
 
#define UF_SETTABLE_BITS   (UF_SCRIPT|UF_ACCOUNTDISABLE|UF_LOCKOUT|UF_HOMEDIR_REQUIRED|UF_PASSWD_NOTREQD|UF_PASSWD_CANT_CHANGE|UF_ACCOUNT_TYPE_MASK|UF_DONT_EXPIRE_PASSWD)
 
#define FILTER_TEMP_DUPLICATE_ACCOUNT   1
 
#define FILTER_NORMAL_ACCOUNT   2
 
#define FILTER_INTERDOMAIN_TRUST_ACCOUNT   8
 
#define FILTER_WORKSTATION_TRUST_ACCOUNT   16
 
#define FILTER_SERVER_TRUST_ACCOUNT   32
 
#define LG_INCLUDE_INDIRECT   1
 
#define AF_OP_PRINT   1
 
#define AF_OP_COMM   2
 
#define AF_OP_SERVER   4
 
#define AF_OP_ACCOUNTS   8
 
#define AF_SETTABLE_BITS   (AF_OP_PRINT|AF_OP_COMM|AF_OP_SERVER|AF_OP_ACCOUNTS)
 
#define UAS_ROLE_STANDALONE   0
 
#define UAS_ROLE_MEMBER   1
 
#define UAS_ROLE_BACKUP   2
 
#define UAS_ROLE_PRIMARY   3
 
#define USER_NAME_PARMNUM   1
 
#define USER_PASSWORD_PARMNUM   3
 
#define USER_PASSWORD_AGE_PARMNUM   4
 
#define USER_PRIV_PARMNUM   5
 
#define USER_HOME_DIR_PARMNUM   6
 
#define USER_COMMENT_PARMNUM   7
 
#define USER_FLAGS_PARMNUM   8
 
#define USER_SCRIPT_PATH_PARMNUM   9
 
#define USER_AUTH_FLAGS_PARMNUM   10
 
#define USER_FULL_NAME_PARMNUM   11
 
#define USER_USR_COMMENT_PARMNUM   12
 
#define USER_PARMS_PARMNUM   13
 
#define USER_WORKSTATIONS_PARMNUM   14
 
#define USER_LAST_LOGON_PARMNUM   15
 
#define USER_LAST_LOGOFF_PARMNUM   16
 
#define USER_ACCT_EXPIRES_PARMNUM   17
 
#define USER_MAX_STORAGE_PARMNUM   18
 
#define USER_UNITS_PER_WEEK_PARMNUM   19
 
#define USER_LOGON_HOURS_PARMNUM   20
 
#define USER_PAD_PW_COUNT_PARMNUM   21
 
#define USER_NUM_LOGONS_PARMNUM   22
 
#define USER_LOGON_SERVER_PARMNUM   23
 
#define USER_COUNTRY_CODE_PARMNUM   24
 
#define USER_CODE_PAGE_PARMNUM   25
 
#define USER_PRIMARY_GROUP_PARMNUM   51
 
#define USER_PROFILE   52
 
#define USER_PROFILE_PARMNUM   52
 
#define USER_HOME_DIR_DRIVE_PARMNUM   53
 
#define USER_NAME_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_NAME_PARMNUM)
 
#define USER_PASSWORD_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_PASSWORD_PARMNUM)
 
#define USER_PASSWORD_AGE_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_PASSWORD_AGE_PARMNUM)
 
#define USER_PRIV_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_PRIV_PARMNUM)
 
#define USER_HOME_DIR_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_HOME_DIR_PARMNUM)
 
#define USER_COMMENT_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_COMMENT_PARMNUM)
 
#define USER_FLAGS_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_FLAGS_PARMNUM)
 
#define USER_SCRIPT_PATH_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_SCRIPT_PATH_PARMNUM)
 
#define USER_AUTH_FLAGS_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_AUTH_FLAGS_PARMNUM)
 
#define USER_FULL_NAME_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_FULL_NAME_PARMNUM)
 
#define USER_USR_COMMENT_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_USR_COMMENT_PARMNUM)
 
#define USER_PARMS_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_PARMS_PARMNUM)
 
#define USER_WORKSTATIONS_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_WORKSTATIONS_PARMNUM)
 
#define USER_LAST_LOGON_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_LAST_LOGON_PARMNUM)
 
#define USER_LAST_LOGOFF_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_LAST_LOGOFF_PARMNUM)
 
#define USER_ACCT_EXPIRES_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_ACCT_EXPIRES_PARMNUM)
 
#define USER_MAX_STORAGE_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_MAX_STORAGE_PARMNUM)
 
#define USER_UNITS_PER_WEEK_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_UNITS_PER_WEEK_PARMNUM)
 
#define USER_LOGON_HOURS_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_LOGON_HOURS_PARMNUM)
 
#define USER_PAD_PW_COUNT_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_PAD_PW_COUNT_PARMNUM)
 
#define USER_NUM_LOGONS_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_NUM_LOGONS_PARMNUM)
 
#define USER_LOGON_SERVER_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_LOGON_SERVER_PARMNUM)
 
#define USER_COUNTRY_CODE_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_COUNTRY_CODE_PARMNUM)
 
#define USER_CODE_PAGE_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_CODE_PAGE_PARMNUM)
 
#define USER_PRIMARY_GROUP_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_PRIMARY_GROUP_PARMNUM)
 
#define USER_POSIX_ID_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_POSIX_ID_PARMNUM)
 
#define USER_HOME_DIR_DRIVE_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_HOME_DIR_DRIVE_PARMNUM)
 
#define NULL_USERSETINFO_PASSWD   " "
 
#define TIMEQ_FOREVER   ((ULONG)-1)
 
#define USER_MAXSTORAGE_UNLIMITED   ((ULONG)-1)
 
#define USER_NO_LOGOFF   ((ULONG)-1L)
 
#define UNITS_PER_DAY   24
 
#define UNITS_PER_WEEK   168
 
#define USER_PRIV_MASK   3
 
#define USER_PRIV_GUEST   0
 
#define USER_PRIV_USER   1
 
#define USER_PRIV_ADMIN   2
 
#define MAX_PASSWD_LEN   PWLEN
 
#define DEF_MIN_PWLEN   6
 
#define DEF_PWUNIQUENESS   5
 
#define DEF_MAX_PWHIST   8
 
#define DEF_MAX_PWAGE   TIMEQ_FOREVER
 
#define DEF_MIN_PWAGE   0
 
#define DEF_FORCE_LOGOFF   (ULONG)0xffffffff
 
#define DEF_MAX_BADPW   0
 
#define ONE_DAY   86400
 
#define VALIDATED_LOGON   0
 
#define PASSWORD_EXPIRED   2
 
#define NON_VALIDATED_LOGON   3
 
#define VALID_LOGOFF   1
 
#define MODALS_MIN_PASSWD_LEN_PARMNUM   1
 
#define MODALS_MAX_PASSWD_AGE_PARMNUM   2
 
#define MODALS_MIN_PASSWD_AGE_PARMNUM   3
 
#define MODALS_FORCE_LOGOFF_PARMNUM   4
 
#define MODALS_PASSWD_HIST_LEN_PARMNUM   5
 
#define MODALS_ROLE_PARMNUM   6
 
#define MODALS_PRIMARY_PARMNUM   7
 
#define MODALS_DOMAIN_NAME_PARMNUM   8
 
#define MODALS_DOMAIN_ID_PARMNUM   9
 
#define MODALS_LOCKOUT_DURATION_PARMNUM   10
 
#define MODALS_LOCKOUT_OBSERVATION_WINDOW_PARMNUM   11
 
#define MODALS_LOCKOUT_THRESHOLD_PARMNUM   12
 
#define MODALS_MIN_PASSWD_LEN_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+MODALS_MIN_PASSWD_LEN_PARMNUM)
 
#define MODALS_MAX_PASSWD_AGE_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+MODALS_MAX_PASSWD_AGE_PARMNUM)
 
#define MODALS_MIN_PASSWD_AGE_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+MODALS_MIN_PASSWD_AGE_PARMNUM)
 
#define MODALS_FORCE_LOGOFF_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+MODALS_FORCE_LOGOFF_PARMNUM)
 
#define MODALS_PASSWD_HIST_LEN_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+MODALS_PASSWD_HIST_LEN_PARMNUM)
 
#define MODALS_ROLE_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+MODALS_ROLE_PARMNUM)
 
#define MODALS_PRIMARY_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+MODALS_PRIMARY_PARMNUM)
 
#define MODALS_DOMAIN_NAME_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+MODALS_DOMAIN_NAME_PARMNUM)
 
#define MODALS_DOMAIN_ID_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+MODALS_DOMAIN_ID_PARMNUM)
 
#define GROUPIDMASK   0x8000
 
#define GROUP_ALL_PARMNUM   0
 
#define GROUP_NAME_PARMNUM   1
 
#define GROUP_COMMENT_PARMNUM   2
 
#define GROUP_ATTRIBUTES_PARMNUM   3
 
#define GROUP_ALL_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+GROUP_ALL_PARMNUM)
 
#define GROUP_NAME_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+GROUP_NAME_PARMNUM)
 
#define GROUP_COMMENT_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+GROUP_COMMENT_PARMNUM)
 
#define GROUP_ATTRIBUTES_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+GROUP_ATTRIBUTES_PARMNUM)
 
#define GROUP_POSIX_ID_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+GROUP_POSIX_ID_PARMNUM)
 
#define LOCALGROUP_NAME_PARMNUM   1
 
#define LOCALGROUP_COMMENT_PARMNUM   2
 
#define MAXPERMENTRIES   64
 
#define ACCESS_NONE   0
 
#define ACCESS_ALL   (ACCESS_READ|ACCESS_WRITE|ACCESS_CREATE|ACCESS_EXEC|ACCESS_DELETE|ACCESS_ATRIB|ACCESS_PERM)
 
#define ACCESS_READ   1
 
#define ACCESS_WRITE   2
 
#define ACCESS_CREATE   4
 
#define ACCESS_EXEC   8
 
#define ACCESS_DELETE   16
 
#define ACCESS_ATRIB   32
 
#define ACCESS_PERM   64
 
#define ACCESS_GROUP   0x8000
 
#define ACCESS_AUDIT   1
 
#define ACCESS_SUCCESS_OPEN   16
 
#define ACCESS_SUCCESS_WRITE   32
 
#define ACCESS_SUCCESS_DELETE   64
 
#define ACCESS_SUCCESS_ACL   128
 
#define ACCESS_SUCCESS_MASK   240
 
#define ACCESS_FAIL_OPEN   256
 
#define ACCESS_FAIL_WRITE   512
 
#define ACCESS_FAIL_DELETE   1024
 
#define ACCESS_FAIL_ACL   2048
 
#define ACCESS_FAIL_MASK   3840
 
#define ACCESS_FAIL_SHIFT   4
 
#define ACCESS_RESOURCE_NAME_PARMNUM   1
 
#define ACCESS_ATTR_PARMNUM   2
 
#define ACCESS_COUNT_PARMNUM   3
 
#define ACCESS_ACCESS_LIST_PARMNUM   4
 
#define ACCESS_RESOURCE_NAME_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+ACCESS_RESOURCE_NAME_PARMNUM)
 
#define ACCESS_ATTR_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+ACCESS_ATTR_PARMNUM)
 
#define ACCESS_COUNT_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+ACCESS_COUNT_PARMNUM)
 
#define ACCESS_ACCESS_LIST_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+ACCESS_ACCESS_LIST_PARMNUM)
 
#define NETLOGON_REPLICATION_NEEDED   1
 
#define NETLOGON_REPLICATION_IN_PROGRESS   2
 
#define NETLOGON_FULL_SYNC_REPLICATION   4
 
#define NETLOGON_REDO_NEEDED   8
 

Typedefs

typedef struct _USER_INFO_0 USER_INFO_0
 
typedef struct _USER_INFO_0PUSER_INFO_0
 
typedef struct _USER_INFO_0LPUSER_INFO_0
 
typedef struct _USER_INFO_1 USER_INFO_1
 
typedef struct _USER_INFO_1PUSER_INFO_1
 
typedef struct _USER_INFO_1LPUSER_INFO_1
 
typedef struct _USER_INFO_2 USER_INFO_2
 
typedef struct _USER_INFO_2PUSER_INFO_2
 
typedef struct _USER_INFO_2LPUSER_INFO_2
 
typedef struct _USER_INFO_3 USER_INFO_3
 
typedef struct _USER_INFO_3PUSER_INFO_3
 
typedef struct _USER_INFO_3LPUSER_INFO_3
 
typedef struct _USER_INFO_4 USER_INFO_4
 
typedef struct _USER_INFO_4PUSER_INFO_4
 
typedef struct _USER_INFO_4LPUSER_INFO_4
 
typedef struct _USER_INFO_10 USER_INFO_10
 
typedef struct _USER_INFO_10PUSER_INFO_10
 
typedef struct _USER_INFO_10LPUSER_INFO_10
 
typedef struct _USER_INFO_11 USER_INFO_11
 
typedef struct _USER_INFO_11PUSER_INFO_11
 
typedef struct _USER_INFO_11LPUSER_INFO_11
 
typedef struct _USER_INFO_20 USER_INFO_20
 
typedef struct _USER_INFO_20PUSER_INFO_20
 
typedef struct _USER_INFO_20LPUSER_INFO_20
 
typedef struct _USER_INFO_21 USER_INFO_21
 
typedef struct _USER_INFO_21PUSER_INFO_21
 
typedef struct _USER_INFO_21LPUSER_INFO_21
 
typedef struct _USER_INFO_22 USER_INFO_22
 
typedef struct _USER_INFO_22PUSER_INFO_22
 
typedef struct _USER_INFO_22LPUSER_INFO_22
 
typedef struct _USER_INFO_23 USER_INFO_23
 
typedef struct _USER_INFO_23PUSER_INFO_23
 
typedef struct _USER_INFO_23LPUSER_INFO_23
 
typedef struct _USER_INFO_1003 USER_INFO_1003
 
typedef struct _USER_INFO_1003PUSER_INFO_1003
 
typedef struct _USER_INFO_1003LPUSER_INFO_1003
 
typedef struct _USER_INFO_1005 USER_INFO_1005
 
typedef struct _USER_INFO_1005PUSER_INFO_1005
 
typedef struct _USER_INFO_1005LPUSER_INFO_1005
 
typedef struct _USER_INFO_1006 USER_INFO_1006
 
typedef struct _USER_INFO_1006PUSER_INFO_1006
 
typedef struct _USER_INFO_1006LPUSER_INFO_1006
 
typedef struct _USER_INFO_1007 USER_INFO_1007
 
typedef struct _USER_INFO_1007PUSER_INFO_1007
 
typedef struct _USER_INFO_1007LPUSER_INFO_1007
 
typedef struct _USER_INFO_1008 USER_INFO_1008
 
typedef struct _USER_INFO_1008PUSER_INFO_1008
 
typedef struct _USER_INFO_1008LPUSER_INFO_1008
 
typedef struct _USER_INFO_1009 USER_INFO_1009
 
typedef struct _USER_INFO_1009PUSER_INFO_1009
 
typedef struct _USER_INFO_1009LPUSER_INFO_1009
 
typedef struct _USER_INFO_1010 USER_INFO_1010
 
typedef struct _USER_INFO_1010PUSER_INFO_1010
 
typedef struct _USER_INFO_1010LPUSER_INFO_1010
 
typedef struct _USER_INFO_1011 USER_INFO_1011
 
typedef struct _USER_INFO_1011PUSER_INFO_1011
 
typedef struct _USER_INFO_1011LPUSER_INFO_1011
 
typedef struct _USER_INFO_1012 USER_INFO_1012
 
typedef struct _USER_INFO_1012PUSER_INFO_1012
 
typedef struct _USER_INFO_1012LPUSER_INFO_1012
 
typedef struct _USER_INFO_1013 USER_INFO_1013
 
typedef struct _USER_INFO_1013PUSER_INFO_1013
 
typedef struct _USER_INFO_1013LPUSER_INFO_1013
 
typedef struct _USER_INFO_1014 USER_INFO_1014
 
typedef struct _USER_INFO_1014PUSER_INFO_1014
 
typedef struct _USER_INFO_1014LPUSER_INFO_1014
 
typedef struct _USER_INFO_1017 USER_INFO_1017
 
typedef struct _USER_INFO_1017PUSER_INFO_1017
 
typedef struct _USER_INFO_1017LPUSER_INFO_1017
 
typedef struct _USER_INFO_1018 USER_INFO_1018
 
typedef struct _USER_INFO_1018PUSER_INFO_1018
 
typedef struct _USER_INFO_1018LPUSER_INFO_1018
 
typedef struct _USER_INFO_1020 USER_INFO_1020
 
typedef struct _USER_INFO_1020PUSER_INFO_1020
 
typedef struct _USER_INFO_1020LPUSER_INFO_1020
 
typedef struct _USER_INFO_1023 USER_INFO_1023
 
typedef struct _USER_INFO_1023PUSER_INFO_1023
 
typedef struct _USER_INFO_1023LPUSER_INFO_1023
 
typedef struct _USER_INFO_1024 USER_INFO_1024
 
typedef struct _USER_INFO_1024PUSER_INFO_1024
 
typedef struct _USER_INFO_1024LPUSER_INFO_1024
 
typedef struct _USER_INFO_1025 USER_INFO_1025
 
typedef struct _USER_INFO_1025PUSER_INFO_1025
 
typedef struct _USER_INFO_1025LPUSER_INFO_1025
 
typedef struct _USER_INFO_1051 USER_INFO_1051
 
typedef struct _USER_INFO_1051PUSER_INFO_1051
 
typedef struct _USER_INFO_1051LPUSER_INFO_1051
 
typedef struct _USER_INFO_1052 USER_INFO_1052
 
typedef struct _USER_INFO_1052PUSER_INFO_1052
 
typedef struct _USER_INFO_1052LPUSER_INFO_1052
 
typedef struct _USER_INFO_1053 USER_INFO_1053
 
typedef struct _USER_INFO_1053PUSER_INFO_1053
 
typedef struct _USER_INFO_1053LPUSER_INFO_1053
 
typedef struct _USER_MODALS_INFO_0 USER_MODALS_INFO_0
 
typedef struct _USER_MODALS_INFO_0PUSER_MODALS_INFO_0
 
typedef struct _USER_MODALS_INFO_0LPUSER_MODALS_INFO_0
 
typedef struct _USER_MODALS_INFO_1 USER_MODALS_INFO_1
 
typedef struct _USER_MODALS_INFO_1PUSER_MODALS_INFO_1
 
typedef struct _USER_MODALS_INFO_1LPUSER_MODALS_INFO_1
 
typedef struct _USER_MODALS_INFO_2 USER_MODALS_INFO_2
 
typedef struct _USER_MODALS_INFO_2PUSER_MODALS_INFO_2
 
typedef struct _USER_MODALS_INFO_2LPUSER_MODALS_INFO_2
 
typedef struct _USER_MODALS_INFO_3 USER_MODALS_INFO_3
 
typedef struct _USER_MODALS_INFO_3PUSER_MODALS_INFO_3
 
typedef struct _USER_MODALS_INFO_3LPUSER_MODALS_INFO_3
 
typedef struct _USER_MODALS_INFO_1001 USER_MODALS_INFO_1001
 
typedef struct _USER_MODALS_INFO_1001PUSER_MODALS_INFO_1001
 
typedef struct _USER_MODALS_INFO_1001LPUSER_MODALS_INFO_1001
 
typedef struct _USER_MODALS_INFO_1002 USER_MODALS_INFO_1002
 
typedef struct _USER_MODALS_INFO_1002PUSER_MODALS_INFO_1002
 
typedef struct _USER_MODALS_INFO_1002LPUSER_MODALS_INFO_1002
 
typedef struct _USER_MODALS_INFO_1003 USER_MODALS_INFO_1003
 
typedef struct _USER_MODALS_INFO_1003PUSER_MODALS_INFO_1003
 
typedef struct _USER_MODALS_INFO_1003LPUSER_MODALS_INFO_1003
 
typedef struct _USER_MODALS_INFO_1004 USER_MODALS_INFO_1004
 
typedef struct _USER_MODALS_INFO_1004PUSER_MODALS_INFO_1004
 
typedef struct _USER_MODALS_INFO_1004LPUSER_MODALS_INFO_1004
 
typedef struct _USER_MODALS_INFO_1005 USER_MODALS_INFO_1005
 
typedef struct _USER_MODALS_INFO_1005PUSER_MODALS_INFO_1005
 
typedef struct _USER_MODALS_INFO_1005LPUSER_MODALS_INFO_1005
 
typedef struct _USER_MODALS_INFO_1006 USER_MODALS_INFO_1006
 
typedef struct _USER_MODALS_INFO_1006PUSER_MODALS_INFO_1006
 
typedef struct _USER_MODALS_INFO_1006LPUSER_MODALS_INFO_1006
 
typedef struct _USER_MODALS_INFO_1007 USER_MODALS_INFO_1007
 
typedef struct _USER_MODALS_INFO_1007PUSER_MODALS_INFO_1007
 
typedef struct _USER_MODALS_INFO_1007LPUSER_MODALS_INFO_1007
 
typedef struct _GROUP_INFO_0 GROUP_INFO_0
 
typedef struct _GROUP_INFO_0PGROUP_INFO_0
 
typedef struct _GROUP_INFO_0LPGROUP_INFO_0
 
typedef struct _GROUP_INFO_1 GROUP_INFO_1
 
typedef struct _GROUP_INFO_1PGROUP_INFO_1
 
typedef struct _GROUP_INFO_1LPGROUP_INFO_1
 
typedef struct _GROUP_INFO_2 GROUP_INFO_2
 
typedef struct _GROUP_INFO_2PGROUP_INFO_2
 
typedef struct _GROUP_INFO_2LPGROUP_INFO_2
 
typedef struct _GROUP_INFO_3 GROUP_INFO_3
 
typedef struct _GROUP_INFO_3PGROUP_INFO_3
 
typedef struct _GROUP_INFO_3LPGROUP_INFO_3
 
typedef struct _GROUP_INFO_1002 GROUP_INFO_1002
 
typedef struct _GROUP_INFO_1002PGROUP_INFO_1002
 
typedef struct _GROUP_INFO_1002LPGROUP_INFO_1002
 
typedef struct _GROUP_INFO_1005 GROUP_INFO_1005
 
typedef struct _GROUP_INFO_1005PGROUP_INFO_1005
 
typedef struct _GROUP_INFO_1005LPGROUP_INFO_1005
 
typedef struct _GROUP_USERS_INFO_0 GROUP_USERS_INFO_0
 
typedef struct _GROUP_USERS_INFO_0PGROUP_USERS_INFO_0
 
typedef struct _GROUP_USERS_INFO_0LPGROUP_USERS_INFO_0
 
typedef struct _GROUP_USERS_INFO_1 GROUP_USERS_INFO_1
 
typedef struct _GROUP_USERS_INFO_1PGROUP_USERS_INFO_1
 
typedef struct _GROUP_USERS_INFO_1LPGROUP_USERS_INFO_1
 
typedef struct _LOCALGROUP_INFO_0 LOCALGROUP_INFO_0
 
typedef struct _LOCALGROUP_INFO_0PLOCALGROUP_INFO_0
 
typedef struct _LOCALGROUP_INFO_0LPLOCALGROUP_INFO_0
 
typedef struct _LOCALGROUP_INFO_1 LOCALGROUP_INFO_1
 
typedef struct _LOCALGROUP_INFO_1PLOCALGROUP_INFO_1
 
typedef struct _LOCALGROUP_INFO_1LPLOCALGROUP_INFO_1
 
typedef struct _LOCALGROUP_INFO_1002 LOCALGROUP_INFO_1002
 
typedef struct _LOCALGROUP_INFO_1002PLOCALGROUP_INFO_1002
 
typedef struct _LOCALGROUP_INFO_1002LPLOCALGROUP_INFO_1002
 
typedef struct _LOCALGROUP_MEMBERS_INFO_0 LOCALGROUP_MEMBERS_INFO_0
 
typedef struct _LOCALGROUP_MEMBERS_INFO_0PLOCALGROUP_MEMBERS_INFO_0
 
typedef struct _LOCALGROUP_MEMBERS_INFO_0LPLOCALGROUP_MEMBERS_INFO_0
 
typedef struct _LOCALGROUP_MEMBERS_INFO_1 LOCALGROUP_MEMBERS_INFO_1
 
typedef struct _LOCALGROUP_MEMBERS_INFO_1PLOCALGROUP_MEMBERS_INFO_1
 
typedef struct _LOCALGROUP_MEMBERS_INFO_1LPLOCALGROUP_MEMBERS_INFO_1
 
typedef struct _LOCALGROUP_MEMBERS_INFO_2 LOCALGROUP_MEMBERS_INFO_2
 
typedef struct _LOCALGROUP_MEMBERS_INFO_2PLOCALGROUP_MEMBERS_INFO_2
 
typedef struct _LOCALGROUP_MEMBERS_INFO_2LPLOCALGROUP_MEMBERS_INFO_2
 
typedef struct _LOCALGROUP_MEMBERS_INFO_3 LOCALGROUP_MEMBERS_INFO_3
 
typedef struct _LOCALGROUP_MEMBERS_INFO_3PLOCALGROUP_MEMBERS_INFO_3
 
typedef struct _LOCALGROUP_MEMBERS_INFO_3LPLOCALGROUP_MEMBERS_INFO_3
 
typedef struct _LOCALGROUP_USERS_INFO_0 LOCALGROUP_USERS_INFO_0
 
typedef struct _LOCALGROUP_USERS_INFO_0PLOCALGROUP_USERS_INFO_0
 
typedef struct _LOCALGROUP_USERS_INFO_0LPLOCALGROUP_USERS_INFO_0
 
typedef struct _NET_DISPLAY_USER NET_DISPLAY_USER
 
typedef struct _NET_DISPLAY_USERPNET_DISPLAY_USER
 
typedef struct _NET_DISPLAY_MACHINE NET_DISPLAY_MACHINE
 
typedef struct _NET_DISPLAY_MACHINEPNET_DISPLAY_MACHINE
 
typedef struct _NET_DISPLAY_GROUP NET_DISPLAY_GROUP
 
typedef struct _NET_DISPLAY_GROUPPNET_DISPLAY_GROUP
 
typedef struct _ACCESS_INFO_0 ACCESS_INFO_0
 
typedef struct _ACCESS_INFO_0PACCESS_INFO_0
 
typedef struct _ACCESS_INFO_0LPACCESS_INFO_0
 
typedef struct _ACCESS_INFO_1 ACCESS_INFO_1
 
typedef struct _ACCESS_INFO_1PACCESS_INFO_1
 
typedef struct _ACCESS_INFO_1LPACCESS_INFO_1
 
typedef struct _ACCESS_INFO_1002 ACCESS_INFO_1002
 
typedef struct _ACCESS_INFO_1002PACCESS_INFO_1002
 
typedef struct _ACCESS_INFO_1002LPACCESS_INFO_1002
 
typedef struct _ACCESS_LIST ACCESS_LIST
 
typedef struct _ACCESS_LISTPACCESS_LIST
 
typedef struct _ACCESS_LISTLPACCESS_LIST
 
typedef struct _NETLOGON_INFO_1 NETLOGON_INFO_1
 
typedef struct _NETLOGON_INFO_1PNETLOGON_INFO_1
 
typedef struct _NETLOGON_INFO_2 NETLOGON_INFO_2
 
typedef struct _NETLOGON_INFO_2PNETLOGON_INFO_2
 
typedef struct _NETLOGON_INFO_3 NETLOGON_INFO_3
 
typedef struct _NETLOGON_INFO_3PNETLOGON_INFO_3
 
typedef NTSTATUSPNTSTATUS
 

Functions

typedef _Return_type_success_ (return >=0) LONG NTSTATUS
 
NET_API_STATUS WINAPI NetUserAdd (LPCWSTR, DWORD, PBYTE, PDWORD)
 
NET_API_STATUS WINAPI NetUserEnum (LPCWSTR, DWORD, DWORD, PBYTE *, DWORD, PDWORD, PDWORD, PDWORD)
 
NET_API_STATUS WINAPI NetUserGetInfo (LPCWSTR, LPCWSTR, DWORD, PBYTE *)
 
NET_API_STATUS WINAPI NetUserSetInfo (LPCWSTR, LPCWSTR, DWORD, PBYTE, PDWORD)
 
NET_API_STATUS WINAPI NetUserDel (LPCWSTR, LPCWSTR)
 
NET_API_STATUS WINAPI NetUserGetGroups (LPCWSTR, LPCWSTR, DWORD, PBYTE *, DWORD, PDWORD, PDWORD)
 
NET_API_STATUS WINAPI NetUserSetGroups (LPCWSTR, LPCWSTR, DWORD, PBYTE, DWORD)
 
NET_API_STATUS WINAPI NetUserGetLocalGroups (LPCWSTR, LPCWSTR, DWORD, DWORD, PBYTE *, DWORD, PDWORD, PDWORD)
 
NET_API_STATUS WINAPI NetUserModalsGet (LPCWSTR, DWORD, PBYTE *)
 
NET_API_STATUS WINAPI NetUserModalsSet (LPCWSTR, DWORD, PBYTE, PDWORD)
 
NET_API_STATUS WINAPI NetUserChangePassword (LPCWSTR, LPCWSTR, LPCWSTR, LPCWSTR)
 
NET_API_STATUS WINAPI NetGroupAdd (LPCWSTR, DWORD, PBYTE, PDWORD)
 
NET_API_STATUS WINAPI NetGroupAddUser (LPCWSTR, LPCWSTR, LPCWSTR)
 
NET_API_STATUS WINAPI NetGroupEnum (LPCWSTR, DWORD, PBYTE *, DWORD, PDWORD, PDWORD, PDWORD_PTR)
 
NET_API_STATUS WINAPI NetGroupGetInfo (LPCWSTR, LPCWSTR, DWORD, PBYTE *)
 
NET_API_STATUS WINAPI NetGroupSetInfo (LPCWSTR, LPCWSTR, DWORD, PBYTE, PDWORD)
 
NET_API_STATUS WINAPI NetGroupDel (LPCWSTR, LPCWSTR)
 
NET_API_STATUS WINAPI NetGroupDelUser (LPCWSTR, LPCWSTR, LPCWSTR)
 
NET_API_STATUS WINAPI NetGroupGetUsers (LPCWSTR, LPCWSTR, DWORD, PBYTE *, DWORD, PDWORD, PDWORD, PDWORD_PTR)
 
NET_API_STATUS WINAPI NetGroupSetUsers (LPCWSTR, LPCWSTR, DWORD, PBYTE, DWORD)
 
NET_API_STATUS WINAPI NetLocalGroupAdd (LPCWSTR, DWORD, PBYTE, PDWORD)
 
NET_API_STATUS WINAPI NetLocalGroupAddMember (LPCWSTR, LPCWSTR, PSID)
 
NET_API_STATUS WINAPI NetLocalGroupEnum (LPCWSTR, DWORD, PBYTE *, DWORD, PDWORD, PDWORD, PDWORD_PTR)
 
NET_API_STATUS WINAPI NetLocalGroupGetInfo (LPCWSTR, LPCWSTR, DWORD, PBYTE *)
 
NET_API_STATUS WINAPI NetLocalGroupSetInfo (LPCWSTR, LPCWSTR, DWORD, PBYTE, PDWORD)
 
NET_API_STATUS WINAPI NetLocalGroupDel (LPCWSTR, LPCWSTR)
 
NET_API_STATUS WINAPI NetLocalGroupDelMember (LPCWSTR, LPCWSTR, PSID)
 
NET_API_STATUS WINAPI NetLocalGroupGetMembers (LPCWSTR, LPCWSTR, DWORD, PBYTE *, DWORD, PDWORD, PDWORD, PDWORD_PTR)
 
NET_API_STATUS WINAPI NetLocalGroupSetMembers (LPCWSTR, LPCWSTR, DWORD, PBYTE, DWORD)
 
NET_API_STATUS WINAPI NetLocalGroupAddMembers (LPCWSTR, LPCWSTR, DWORD, PBYTE, DWORD)
 
NET_API_STATUS WINAPI NetLocalGroupDelMembers (LPCWSTR, LPCWSTR, DWORD, PBYTE, DWORD)
 
NET_API_STATUS WINAPI NetQueryDisplayInformation (LPCWSTR, DWORD, DWORD, DWORD, DWORD, PDWORD, PVOID *)
 
NET_API_STATUS WINAPI NetGetDisplayInformationIndex (LPCWSTR, DWORD, LPCWSTR, PDWORD)
 
NET_API_STATUS WINAPI NetGetDCName (LPCWSTR, LPCWSTR, PBYTE *)
 
NET_API_STATUS WINAPI NetGetAnyDCName (LPCWSTR, LPCWSTR, PBYTE *)
 
NET_API_STATUS WINAPI I_NetLogonControl (LPCWSTR, DWORD, DWORD, PBYTE *)
 
NET_API_STATUS WINAPI I_NetLogonControl2 (LPCWSTR, DWORD, DWORD, PBYTE, PBYTE *)
 
NTSTATUS WINAPI NetEnumerateTrustedDomains (LPWSTR, LPWSTR *)
 

Macro Definition Documentation

◆ ACCESS_ACCESS_LIST_INFOLEVEL

#define ACCESS_ACCESS_LIST_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+ACCESS_ACCESS_LIST_PARMNUM)

Definition at line 195 of file lmaccess.h.

◆ ACCESS_ACCESS_LIST_PARMNUM

#define ACCESS_ACCESS_LIST_PARMNUM   4

Definition at line 191 of file lmaccess.h.

◆ ACCESS_ALL

◆ ACCESS_ATRIB

#define ACCESS_ATRIB   32

Definition at line 173 of file lmaccess.h.

◆ ACCESS_ATTR_INFOLEVEL

#define ACCESS_ATTR_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+ACCESS_ATTR_PARMNUM)

Definition at line 193 of file lmaccess.h.

◆ ACCESS_ATTR_PARMNUM

#define ACCESS_ATTR_PARMNUM   2

Definition at line 189 of file lmaccess.h.

◆ ACCESS_AUDIT

#define ACCESS_AUDIT   1

Definition at line 176 of file lmaccess.h.

◆ ACCESS_COUNT_INFOLEVEL

#define ACCESS_COUNT_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+ACCESS_COUNT_PARMNUM)

Definition at line 194 of file lmaccess.h.

◆ ACCESS_COUNT_PARMNUM

#define ACCESS_COUNT_PARMNUM   3

Definition at line 190 of file lmaccess.h.

◆ ACCESS_CREATE

#define ACCESS_CREATE   4

Definition at line 170 of file lmaccess.h.

◆ ACCESS_DELETE

#define ACCESS_DELETE   16

Definition at line 172 of file lmaccess.h.

◆ ACCESS_EXEC

#define ACCESS_EXEC   8

Definition at line 171 of file lmaccess.h.

◆ ACCESS_FAIL_ACL

#define ACCESS_FAIL_ACL   2048

Definition at line 185 of file lmaccess.h.

◆ ACCESS_FAIL_DELETE

#define ACCESS_FAIL_DELETE   1024

Definition at line 184 of file lmaccess.h.

◆ ACCESS_FAIL_MASK

#define ACCESS_FAIL_MASK   3840

Definition at line 186 of file lmaccess.h.

◆ ACCESS_FAIL_OPEN

#define ACCESS_FAIL_OPEN   256

Definition at line 182 of file lmaccess.h.

◆ ACCESS_FAIL_SHIFT

#define ACCESS_FAIL_SHIFT   4

Definition at line 187 of file lmaccess.h.

◆ ACCESS_FAIL_WRITE

#define ACCESS_FAIL_WRITE   512

Definition at line 183 of file lmaccess.h.

◆ ACCESS_GROUP

#define ACCESS_GROUP   0x8000

Definition at line 175 of file lmaccess.h.

◆ ACCESS_LETTERS

#define ACCESS_LETTERS   "RWCXDAP "

Definition at line 12 of file lmaccess.h.

◆ ACCESS_NONE

#define ACCESS_NONE   0

Definition at line 166 of file lmaccess.h.

◆ ACCESS_PERM

#define ACCESS_PERM   64

Definition at line 174 of file lmaccess.h.

◆ ACCESS_READ

#define ACCESS_READ   1

Definition at line 168 of file lmaccess.h.

◆ ACCESS_RESOURCE_NAME_INFOLEVEL

#define ACCESS_RESOURCE_NAME_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+ACCESS_RESOURCE_NAME_PARMNUM)

Definition at line 192 of file lmaccess.h.

◆ ACCESS_RESOURCE_NAME_PARMNUM

#define ACCESS_RESOURCE_NAME_PARMNUM   1

Definition at line 188 of file lmaccess.h.

◆ ACCESS_SUCCESS_ACL

#define ACCESS_SUCCESS_ACL   128

Definition at line 180 of file lmaccess.h.

◆ ACCESS_SUCCESS_DELETE

#define ACCESS_SUCCESS_DELETE   64

Definition at line 179 of file lmaccess.h.

◆ ACCESS_SUCCESS_MASK

#define ACCESS_SUCCESS_MASK   240

Definition at line 181 of file lmaccess.h.

◆ ACCESS_SUCCESS_OPEN

#define ACCESS_SUCCESS_OPEN   16

Definition at line 177 of file lmaccess.h.

◆ ACCESS_SUCCESS_WRITE

#define ACCESS_SUCCESS_WRITE   32

Definition at line 178 of file lmaccess.h.

◆ ACCESS_WRITE

#define ACCESS_WRITE   2

Definition at line 169 of file lmaccess.h.

◆ AF_OP_ACCOUNTS

#define AF_OP_ACCOUNTS   8

Definition at line 48 of file lmaccess.h.

◆ AF_OP_COMM

#define AF_OP_COMM   2

Definition at line 46 of file lmaccess.h.

◆ AF_OP_PRINT

#define AF_OP_PRINT   1

Definition at line 45 of file lmaccess.h.

◆ AF_OP_SERVER

#define AF_OP_SERVER   4

Definition at line 47 of file lmaccess.h.

◆ AF_SETTABLE_BITS

Definition at line 49 of file lmaccess.h.

◆ DEF_FORCE_LOGOFF

#define DEF_FORCE_LOGOFF   (ULONG)0xffffffff

Definition at line 125 of file lmaccess.h.

◆ DEF_MAX_BADPW

#define DEF_MAX_BADPW   0

Definition at line 126 of file lmaccess.h.

◆ DEF_MAX_PWAGE

#define DEF_MAX_PWAGE   TIMEQ_FOREVER

Definition at line 123 of file lmaccess.h.

◆ DEF_MAX_PWHIST

#define DEF_MAX_PWHIST   8

Definition at line 122 of file lmaccess.h.

◆ DEF_MIN_PWAGE

#define DEF_MIN_PWAGE   0

Definition at line 124 of file lmaccess.h.

◆ DEF_MIN_PWLEN

#define DEF_MIN_PWLEN   6

Definition at line 120 of file lmaccess.h.

◆ DEF_PWUNIQUENESS

#define DEF_PWUNIQUENESS   5

Definition at line 121 of file lmaccess.h.

◆ FILTER_INTERDOMAIN_TRUST_ACCOUNT

#define FILTER_INTERDOMAIN_TRUST_ACCOUNT   8

Definition at line 41 of file lmaccess.h.

◆ FILTER_NORMAL_ACCOUNT

#define FILTER_NORMAL_ACCOUNT   2

Definition at line 40 of file lmaccess.h.

◆ FILTER_SERVER_TRUST_ACCOUNT

#define FILTER_SERVER_TRUST_ACCOUNT   32

Definition at line 43 of file lmaccess.h.

◆ FILTER_TEMP_DUPLICATE_ACCOUNT

#define FILTER_TEMP_DUPLICATE_ACCOUNT   1

Definition at line 39 of file lmaccess.h.

◆ FILTER_WORKSTATION_TRUST_ACCOUNT

#define FILTER_WORKSTATION_TRUST_ACCOUNT   16

Definition at line 42 of file lmaccess.h.

◆ GROUP_ALL_INFOLEVEL

#define GROUP_ALL_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+GROUP_ALL_PARMNUM)

Definition at line 158 of file lmaccess.h.

◆ GROUP_ALL_PARMNUM

#define GROUP_ALL_PARMNUM   0

Definition at line 154 of file lmaccess.h.

◆ GROUP_ATTRIBUTES_INFOLEVEL

#define GROUP_ATTRIBUTES_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+GROUP_ATTRIBUTES_PARMNUM)

Definition at line 161 of file lmaccess.h.

◆ GROUP_ATTRIBUTES_PARMNUM

#define GROUP_ATTRIBUTES_PARMNUM   3

Definition at line 157 of file lmaccess.h.

◆ GROUP_COMMENT_INFOLEVEL

#define GROUP_COMMENT_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+GROUP_COMMENT_PARMNUM)

Definition at line 160 of file lmaccess.h.

◆ GROUP_COMMENT_PARMNUM

#define GROUP_COMMENT_PARMNUM   2

Definition at line 156 of file lmaccess.h.

◆ GROUP_NAME_INFOLEVEL

#define GROUP_NAME_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+GROUP_NAME_PARMNUM)

Definition at line 159 of file lmaccess.h.

◆ GROUP_NAME_PARMNUM

#define GROUP_NAME_PARMNUM   1

Definition at line 155 of file lmaccess.h.

◆ GROUP_POSIX_ID_INFOLEVEL

#define GROUP_POSIX_ID_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+GROUP_POSIX_ID_PARMNUM)

Definition at line 162 of file lmaccess.h.

◆ GROUP_SPECIALGRP_ADMINS

#define GROUP_SPECIALGRP_ADMINS   L"ADMINS"

Definition at line 9 of file lmaccess.h.

◆ GROUP_SPECIALGRP_GUESTS

#define GROUP_SPECIALGRP_GUESTS   L"GUESTS"

Definition at line 10 of file lmaccess.h.

◆ GROUP_SPECIALGRP_LOCAL

#define GROUP_SPECIALGRP_LOCAL   L"LOCAL"

Definition at line 11 of file lmaccess.h.

◆ GROUP_SPECIALGRP_USERS

#define GROUP_SPECIALGRP_USERS   L"USERS"

Definition at line 8 of file lmaccess.h.

◆ GROUPIDMASK

#define GROUPIDMASK   0x8000

Definition at line 153 of file lmaccess.h.

◆ LG_INCLUDE_INDIRECT

#define LG_INCLUDE_INDIRECT   1

Definition at line 44 of file lmaccess.h.

◆ LOCALGROUP_COMMENT_PARMNUM

#define LOCALGROUP_COMMENT_PARMNUM   2

Definition at line 164 of file lmaccess.h.

◆ LOCALGROUP_NAME_PARMNUM

#define LOCALGROUP_NAME_PARMNUM   1

Definition at line 163 of file lmaccess.h.

◆ MAX_PASSWD_LEN

#define MAX_PASSWD_LEN   PWLEN

Definition at line 119 of file lmaccess.h.

◆ MAXPERMENTRIES

#define MAXPERMENTRIES   64

Definition at line 165 of file lmaccess.h.

◆ MODALS_DOMAIN_ID_INFOLEVEL

#define MODALS_DOMAIN_ID_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+MODALS_DOMAIN_ID_PARMNUM)

Definition at line 152 of file lmaccess.h.

◆ MODALS_DOMAIN_ID_PARMNUM

#define MODALS_DOMAIN_ID_PARMNUM   9

Definition at line 140 of file lmaccess.h.

◆ MODALS_DOMAIN_NAME_INFOLEVEL

#define MODALS_DOMAIN_NAME_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+MODALS_DOMAIN_NAME_PARMNUM)

Definition at line 151 of file lmaccess.h.

◆ MODALS_DOMAIN_NAME_PARMNUM

#define MODALS_DOMAIN_NAME_PARMNUM   8

Definition at line 139 of file lmaccess.h.

◆ MODALS_FORCE_LOGOFF_INFOLEVEL

#define MODALS_FORCE_LOGOFF_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+MODALS_FORCE_LOGOFF_PARMNUM)

Definition at line 147 of file lmaccess.h.

◆ MODALS_FORCE_LOGOFF_PARMNUM

#define MODALS_FORCE_LOGOFF_PARMNUM   4

Definition at line 135 of file lmaccess.h.

◆ MODALS_LOCKOUT_DURATION_PARMNUM

#define MODALS_LOCKOUT_DURATION_PARMNUM   10

Definition at line 141 of file lmaccess.h.

◆ MODALS_LOCKOUT_OBSERVATION_WINDOW_PARMNUM

#define MODALS_LOCKOUT_OBSERVATION_WINDOW_PARMNUM   11

Definition at line 142 of file lmaccess.h.

◆ MODALS_LOCKOUT_THRESHOLD_PARMNUM

#define MODALS_LOCKOUT_THRESHOLD_PARMNUM   12

Definition at line 143 of file lmaccess.h.

◆ MODALS_MAX_PASSWD_AGE_INFOLEVEL

#define MODALS_MAX_PASSWD_AGE_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+MODALS_MAX_PASSWD_AGE_PARMNUM)

Definition at line 145 of file lmaccess.h.

◆ MODALS_MAX_PASSWD_AGE_PARMNUM

#define MODALS_MAX_PASSWD_AGE_PARMNUM   2

Definition at line 133 of file lmaccess.h.

◆ MODALS_MIN_PASSWD_AGE_INFOLEVEL

#define MODALS_MIN_PASSWD_AGE_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+MODALS_MIN_PASSWD_AGE_PARMNUM)

Definition at line 146 of file lmaccess.h.

◆ MODALS_MIN_PASSWD_AGE_PARMNUM

#define MODALS_MIN_PASSWD_AGE_PARMNUM   3

Definition at line 134 of file lmaccess.h.

◆ MODALS_MIN_PASSWD_LEN_INFOLEVEL

#define MODALS_MIN_PASSWD_LEN_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+MODALS_MIN_PASSWD_LEN_PARMNUM)

Definition at line 144 of file lmaccess.h.

◆ MODALS_MIN_PASSWD_LEN_PARMNUM

#define MODALS_MIN_PASSWD_LEN_PARMNUM   1

Definition at line 132 of file lmaccess.h.

◆ MODALS_PASSWD_HIST_LEN_INFOLEVEL

#define MODALS_PASSWD_HIST_LEN_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+MODALS_PASSWD_HIST_LEN_PARMNUM)

Definition at line 148 of file lmaccess.h.

◆ MODALS_PASSWD_HIST_LEN_PARMNUM

#define MODALS_PASSWD_HIST_LEN_PARMNUM   5

Definition at line 136 of file lmaccess.h.

◆ MODALS_PRIMARY_INFOLEVEL

#define MODALS_PRIMARY_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+MODALS_PRIMARY_PARMNUM)

Definition at line 150 of file lmaccess.h.

◆ MODALS_PRIMARY_PARMNUM

#define MODALS_PRIMARY_PARMNUM   7

Definition at line 138 of file lmaccess.h.

◆ MODALS_ROLE_INFOLEVEL

#define MODALS_ROLE_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+MODALS_ROLE_PARMNUM)

Definition at line 149 of file lmaccess.h.

◆ MODALS_ROLE_PARMNUM

#define MODALS_ROLE_PARMNUM   6

Definition at line 137 of file lmaccess.h.

◆ NETLOGON_CONTROL_BACKUP_CHANGE_LOG

#define NETLOGON_CONTROL_BACKUP_CHANGE_LOG   65532

Definition at line 19 of file lmaccess.h.

◆ NETLOGON_CONTROL_BREAKPOINT

#define NETLOGON_CONTROL_BREAKPOINT   65535

Definition at line 22 of file lmaccess.h.

◆ NETLOGON_CONTROL_PDC_REPLICATE

#define NETLOGON_CONTROL_PDC_REPLICATE   4

Definition at line 16 of file lmaccess.h.

◆ NETLOGON_CONTROL_QUERY

#define NETLOGON_CONTROL_QUERY   1

Definition at line 13 of file lmaccess.h.

◆ NETLOGON_CONTROL_REDISCOVER

#define NETLOGON_CONTROL_REDISCOVER   5

Definition at line 17 of file lmaccess.h.

◆ NETLOGON_CONTROL_REPLICATE

#define NETLOGON_CONTROL_REPLICATE   2

Definition at line 14 of file lmaccess.h.

◆ NETLOGON_CONTROL_SET_DBFLAG

#define NETLOGON_CONTROL_SET_DBFLAG   65534

Definition at line 21 of file lmaccess.h.

◆ NETLOGON_CONTROL_SYNCHRONIZE

#define NETLOGON_CONTROL_SYNCHRONIZE   3

Definition at line 15 of file lmaccess.h.

◆ NETLOGON_CONTROL_TC_QUERY

#define NETLOGON_CONTROL_TC_QUERY   6

Definition at line 18 of file lmaccess.h.

◆ NETLOGON_CONTROL_TRUNCATE_LOG

#define NETLOGON_CONTROL_TRUNCATE_LOG   65533

Definition at line 20 of file lmaccess.h.

◆ NETLOGON_FULL_SYNC_REPLICATION

#define NETLOGON_FULL_SYNC_REPLICATION   4

Definition at line 198 of file lmaccess.h.

◆ NETLOGON_REDO_NEEDED

#define NETLOGON_REDO_NEEDED   8

Definition at line 199 of file lmaccess.h.

◆ NETLOGON_REPLICATION_IN_PROGRESS

#define NETLOGON_REPLICATION_IN_PROGRESS   2

Definition at line 197 of file lmaccess.h.

◆ NETLOGON_REPLICATION_NEEDED

#define NETLOGON_REPLICATION_NEEDED   1

Definition at line 196 of file lmaccess.h.

◆ NON_VALIDATED_LOGON

#define NON_VALIDATED_LOGON   3

Definition at line 130 of file lmaccess.h.

◆ NULL_USERSETINFO_PASSWD

#define NULL_USERSETINFO_PASSWD   " "

Definition at line 109 of file lmaccess.h.

◆ ONE_DAY

#define ONE_DAY   86400

Definition at line 127 of file lmaccess.h.

◆ PASSWORD_EXPIRED

#define PASSWORD_EXPIRED   2

Definition at line 129 of file lmaccess.h.

◆ TIMEQ_FOREVER

#define TIMEQ_FOREVER   ((ULONG)-1)

Definition at line 110 of file lmaccess.h.

◆ UAS_ROLE_BACKUP

#define UAS_ROLE_BACKUP   2

Definition at line 52 of file lmaccess.h.

◆ UAS_ROLE_MEMBER

#define UAS_ROLE_MEMBER   1

Definition at line 51 of file lmaccess.h.

◆ UAS_ROLE_PRIMARY

#define UAS_ROLE_PRIMARY   3

Definition at line 53 of file lmaccess.h.

◆ UAS_ROLE_STANDALONE

#define UAS_ROLE_STANDALONE   0

Definition at line 50 of file lmaccess.h.

◆ UF_ACCOUNT_TYPE_MASK

◆ UF_ACCOUNTDISABLE

#define UF_ACCOUNTDISABLE   2

Definition at line 24 of file lmaccess.h.

◆ UF_DONT_EXPIRE_PASSWD

#define UF_DONT_EXPIRE_PASSWD   65536

Definition at line 37 of file lmaccess.h.

◆ UF_HOMEDIR_REQUIRED

#define UF_HOMEDIR_REQUIRED   8

Definition at line 25 of file lmaccess.h.

◆ UF_INTERDOMAIN_TRUST_ACCOUNT

#define UF_INTERDOMAIN_TRUST_ACCOUNT   2048

Definition at line 31 of file lmaccess.h.

◆ UF_LOCKOUT

#define UF_LOCKOUT   16

Definition at line 26 of file lmaccess.h.

◆ UF_MACHINE_ACCOUNT_MASK

Definition at line 35 of file lmaccess.h.

◆ UF_MNS_LOGON_ACCOUNT

#define UF_MNS_LOGON_ACCOUNT   131072

Definition at line 34 of file lmaccess.h.

◆ UF_NORMAL_ACCOUNT

#define UF_NORMAL_ACCOUNT   512

Definition at line 30 of file lmaccess.h.

◆ UF_PASSWD_CANT_CHANGE

#define UF_PASSWD_CANT_CHANGE   64

Definition at line 28 of file lmaccess.h.

◆ UF_PASSWD_NOTREQD

#define UF_PASSWD_NOTREQD   32

Definition at line 27 of file lmaccess.h.

◆ UF_SCRIPT

#define UF_SCRIPT   1

Definition at line 23 of file lmaccess.h.

◆ UF_SERVER_TRUST_ACCOUNT

#define UF_SERVER_TRUST_ACCOUNT   8192

Definition at line 33 of file lmaccess.h.

◆ UF_SETTABLE_BITS

◆ UF_TEMP_DUPLICATE_ACCOUNT

#define UF_TEMP_DUPLICATE_ACCOUNT   256

Definition at line 29 of file lmaccess.h.

◆ UF_WORKSTATION_TRUST_ACCOUNT

#define UF_WORKSTATION_TRUST_ACCOUNT   4096

Definition at line 32 of file lmaccess.h.

◆ UNITS_PER_DAY

#define UNITS_PER_DAY   24

Definition at line 113 of file lmaccess.h.

◆ UNITS_PER_WEEK

#define UNITS_PER_WEEK   168

Definition at line 114 of file lmaccess.h.

◆ USER_ACCT_EXPIRES_INFOLEVEL

#define USER_ACCT_EXPIRES_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_ACCT_EXPIRES_PARMNUM)

Definition at line 97 of file lmaccess.h.

◆ USER_ACCT_EXPIRES_PARMNUM

#define USER_ACCT_EXPIRES_PARMNUM   17

Definition at line 69 of file lmaccess.h.

◆ USER_AUTH_FLAGS_INFOLEVEL

#define USER_AUTH_FLAGS_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_AUTH_FLAGS_PARMNUM)

Definition at line 90 of file lmaccess.h.

◆ USER_AUTH_FLAGS_PARMNUM

#define USER_AUTH_FLAGS_PARMNUM   10

Definition at line 62 of file lmaccess.h.

◆ USER_CODE_PAGE_INFOLEVEL

#define USER_CODE_PAGE_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_CODE_PAGE_PARMNUM)

Definition at line 105 of file lmaccess.h.

◆ USER_CODE_PAGE_PARMNUM

#define USER_CODE_PAGE_PARMNUM   25

Definition at line 77 of file lmaccess.h.

◆ USER_COMMENT_INFOLEVEL

#define USER_COMMENT_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_COMMENT_PARMNUM)

Definition at line 87 of file lmaccess.h.

◆ USER_COMMENT_PARMNUM

#define USER_COMMENT_PARMNUM   7

Definition at line 59 of file lmaccess.h.

◆ USER_COUNTRY_CODE_INFOLEVEL

#define USER_COUNTRY_CODE_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_COUNTRY_CODE_PARMNUM)

Definition at line 104 of file lmaccess.h.

◆ USER_COUNTRY_CODE_PARMNUM

#define USER_COUNTRY_CODE_PARMNUM   24

Definition at line 76 of file lmaccess.h.

◆ USER_FLAGS_INFOLEVEL

#define USER_FLAGS_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_FLAGS_PARMNUM)

Definition at line 88 of file lmaccess.h.

◆ USER_FLAGS_PARMNUM

#define USER_FLAGS_PARMNUM   8

Definition at line 60 of file lmaccess.h.

◆ USER_FULL_NAME_INFOLEVEL

#define USER_FULL_NAME_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_FULL_NAME_PARMNUM)

Definition at line 91 of file lmaccess.h.

◆ USER_FULL_NAME_PARMNUM

#define USER_FULL_NAME_PARMNUM   11

Definition at line 63 of file lmaccess.h.

◆ USER_HOME_DIR_DRIVE_INFOLEVEL

#define USER_HOME_DIR_DRIVE_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_HOME_DIR_DRIVE_PARMNUM)

Definition at line 108 of file lmaccess.h.

◆ USER_HOME_DIR_DRIVE_PARMNUM

#define USER_HOME_DIR_DRIVE_PARMNUM   53

Definition at line 81 of file lmaccess.h.

◆ USER_HOME_DIR_INFOLEVEL

#define USER_HOME_DIR_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_HOME_DIR_PARMNUM)

Definition at line 86 of file lmaccess.h.

◆ USER_HOME_DIR_PARMNUM

#define USER_HOME_DIR_PARMNUM   6

Definition at line 58 of file lmaccess.h.

◆ USER_LAST_LOGOFF_INFOLEVEL

#define USER_LAST_LOGOFF_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_LAST_LOGOFF_PARMNUM)

Definition at line 96 of file lmaccess.h.

◆ USER_LAST_LOGOFF_PARMNUM

#define USER_LAST_LOGOFF_PARMNUM   16

Definition at line 68 of file lmaccess.h.

◆ USER_LAST_LOGON_INFOLEVEL

#define USER_LAST_LOGON_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_LAST_LOGON_PARMNUM)

Definition at line 95 of file lmaccess.h.

◆ USER_LAST_LOGON_PARMNUM

#define USER_LAST_LOGON_PARMNUM   15

Definition at line 67 of file lmaccess.h.

◆ USER_LOGON_HOURS_INFOLEVEL

#define USER_LOGON_HOURS_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_LOGON_HOURS_PARMNUM)

Definition at line 100 of file lmaccess.h.

◆ USER_LOGON_HOURS_PARMNUM

#define USER_LOGON_HOURS_PARMNUM   20

Definition at line 72 of file lmaccess.h.

◆ USER_LOGON_SERVER_INFOLEVEL

#define USER_LOGON_SERVER_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_LOGON_SERVER_PARMNUM)

Definition at line 103 of file lmaccess.h.

◆ USER_LOGON_SERVER_PARMNUM

#define USER_LOGON_SERVER_PARMNUM   23

Definition at line 75 of file lmaccess.h.

◆ USER_MAX_STORAGE_INFOLEVEL

#define USER_MAX_STORAGE_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_MAX_STORAGE_PARMNUM)

Definition at line 98 of file lmaccess.h.

◆ USER_MAX_STORAGE_PARMNUM

#define USER_MAX_STORAGE_PARMNUM   18

Definition at line 70 of file lmaccess.h.

◆ USER_MAXSTORAGE_UNLIMITED

#define USER_MAXSTORAGE_UNLIMITED   ((ULONG)-1)

Definition at line 111 of file lmaccess.h.

◆ USER_NAME_INFOLEVEL

#define USER_NAME_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_NAME_PARMNUM)

Definition at line 82 of file lmaccess.h.

◆ USER_NAME_PARMNUM

#define USER_NAME_PARMNUM   1

Definition at line 54 of file lmaccess.h.

◆ USER_NO_LOGOFF

#define USER_NO_LOGOFF   ((ULONG)-1L)

Definition at line 112 of file lmaccess.h.

◆ USER_NUM_LOGONS_INFOLEVEL

#define USER_NUM_LOGONS_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_NUM_LOGONS_PARMNUM)

Definition at line 102 of file lmaccess.h.

◆ USER_NUM_LOGONS_PARMNUM

#define USER_NUM_LOGONS_PARMNUM   22

Definition at line 74 of file lmaccess.h.

◆ USER_PAD_PW_COUNT_INFOLEVEL

#define USER_PAD_PW_COUNT_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_PAD_PW_COUNT_PARMNUM)

Definition at line 101 of file lmaccess.h.

◆ USER_PAD_PW_COUNT_PARMNUM

#define USER_PAD_PW_COUNT_PARMNUM   21

Definition at line 73 of file lmaccess.h.

◆ USER_PARMS_INFOLEVEL

#define USER_PARMS_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_PARMS_PARMNUM)

Definition at line 93 of file lmaccess.h.

◆ USER_PARMS_PARMNUM

#define USER_PARMS_PARMNUM   13

Definition at line 65 of file lmaccess.h.

◆ USER_PASSWORD_AGE_INFOLEVEL

#define USER_PASSWORD_AGE_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_PASSWORD_AGE_PARMNUM)

Definition at line 84 of file lmaccess.h.

◆ USER_PASSWORD_AGE_PARMNUM

#define USER_PASSWORD_AGE_PARMNUM   4

Definition at line 56 of file lmaccess.h.

◆ USER_PASSWORD_INFOLEVEL

#define USER_PASSWORD_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_PASSWORD_PARMNUM)

Definition at line 83 of file lmaccess.h.

◆ USER_PASSWORD_PARMNUM

#define USER_PASSWORD_PARMNUM   3

Definition at line 55 of file lmaccess.h.

◆ USER_POSIX_ID_INFOLEVEL

#define USER_POSIX_ID_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_POSIX_ID_PARMNUM)

Definition at line 107 of file lmaccess.h.

◆ USER_PRIMARY_GROUP_INFOLEVEL

#define USER_PRIMARY_GROUP_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_PRIMARY_GROUP_PARMNUM)

Definition at line 106 of file lmaccess.h.

◆ USER_PRIMARY_GROUP_PARMNUM

#define USER_PRIMARY_GROUP_PARMNUM   51

Definition at line 78 of file lmaccess.h.

◆ USER_PRIV_ADMIN

#define USER_PRIV_ADMIN   2

Definition at line 118 of file lmaccess.h.

◆ USER_PRIV_GUEST

#define USER_PRIV_GUEST   0

Definition at line 116 of file lmaccess.h.

◆ USER_PRIV_INFOLEVEL

#define USER_PRIV_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_PRIV_PARMNUM)

Definition at line 85 of file lmaccess.h.

◆ USER_PRIV_MASK

#define USER_PRIV_MASK   3

Definition at line 115 of file lmaccess.h.

◆ USER_PRIV_PARMNUM

#define USER_PRIV_PARMNUM   5

Definition at line 57 of file lmaccess.h.

◆ USER_PRIV_USER

#define USER_PRIV_USER   1

Definition at line 117 of file lmaccess.h.

◆ USER_PROFILE

#define USER_PROFILE   52

Definition at line 79 of file lmaccess.h.

◆ USER_PROFILE_PARMNUM

#define USER_PROFILE_PARMNUM   52

Definition at line 80 of file lmaccess.h.

◆ USER_SCRIPT_PATH_INFOLEVEL

#define USER_SCRIPT_PATH_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_SCRIPT_PATH_PARMNUM)

Definition at line 89 of file lmaccess.h.

◆ USER_SCRIPT_PATH_PARMNUM

#define USER_SCRIPT_PATH_PARMNUM   9

Definition at line 61 of file lmaccess.h.

◆ USER_UNITS_PER_WEEK_INFOLEVEL

#define USER_UNITS_PER_WEEK_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_UNITS_PER_WEEK_PARMNUM)

Definition at line 99 of file lmaccess.h.

◆ USER_UNITS_PER_WEEK_PARMNUM

#define USER_UNITS_PER_WEEK_PARMNUM   19

Definition at line 71 of file lmaccess.h.

◆ USER_USR_COMMENT_INFOLEVEL

#define USER_USR_COMMENT_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_USR_COMMENT_PARMNUM)

Definition at line 92 of file lmaccess.h.

◆ USER_USR_COMMENT_PARMNUM

#define USER_USR_COMMENT_PARMNUM   12

Definition at line 64 of file lmaccess.h.

◆ USER_WORKSTATIONS_INFOLEVEL

#define USER_WORKSTATIONS_INFOLEVEL   (PARMNUM_BASE_INFOLEVEL+USER_WORKSTATIONS_PARMNUM)

Definition at line 94 of file lmaccess.h.

◆ USER_WORKSTATIONS_PARMNUM

#define USER_WORKSTATIONS_PARMNUM   14

Definition at line 66 of file lmaccess.h.

◆ VALID_LOGOFF

#define VALID_LOGOFF   1

Definition at line 131 of file lmaccess.h.

◆ VALIDATED_LOGON

#define VALIDATED_LOGON   0

Definition at line 128 of file lmaccess.h.

Typedef Documentation

◆ ACCESS_INFO_0

◆ ACCESS_INFO_1

◆ ACCESS_INFO_1002

◆ ACCESS_LIST

◆ GROUP_INFO_0

◆ GROUP_INFO_1

◆ GROUP_INFO_1002

◆ GROUP_INFO_1005

◆ GROUP_INFO_2

◆ GROUP_INFO_3

◆ GROUP_USERS_INFO_0

◆ GROUP_USERS_INFO_1

◆ LOCALGROUP_INFO_0

◆ LOCALGROUP_INFO_1

◆ LOCALGROUP_INFO_1002

◆ LOCALGROUP_MEMBERS_INFO_0

◆ LOCALGROUP_MEMBERS_INFO_1

◆ LOCALGROUP_MEMBERS_INFO_2

◆ LOCALGROUP_MEMBERS_INFO_3

◆ LOCALGROUP_USERS_INFO_0

◆ LPACCESS_INFO_0

◆ LPACCESS_INFO_1

◆ LPACCESS_INFO_1002

◆ LPACCESS_LIST

◆ LPGROUP_INFO_0

◆ LPGROUP_INFO_1

◆ LPGROUP_INFO_1002

◆ LPGROUP_INFO_1005

◆ LPGROUP_INFO_2

◆ LPGROUP_INFO_3

◆ LPGROUP_USERS_INFO_0

◆ LPGROUP_USERS_INFO_1

◆ LPLOCALGROUP_INFO_0

◆ LPLOCALGROUP_INFO_1

◆ LPLOCALGROUP_INFO_1002

◆ LPLOCALGROUP_MEMBERS_INFO_0

◆ LPLOCALGROUP_MEMBERS_INFO_1

◆ LPLOCALGROUP_MEMBERS_INFO_2

◆ LPLOCALGROUP_MEMBERS_INFO_3

◆ LPLOCALGROUP_USERS_INFO_0

◆ LPUSER_INFO_0

◆ LPUSER_INFO_1

◆ LPUSER_INFO_10

◆ LPUSER_INFO_1003

◆ LPUSER_INFO_1005

◆ LPUSER_INFO_1006

◆ LPUSER_INFO_1007

◆ LPUSER_INFO_1008

◆ LPUSER_INFO_1009

◆ LPUSER_INFO_1010

◆ LPUSER_INFO_1011

◆ LPUSER_INFO_1012

◆ LPUSER_INFO_1013

◆ LPUSER_INFO_1014

◆ LPUSER_INFO_1017

◆ LPUSER_INFO_1018

◆ LPUSER_INFO_1020

◆ LPUSER_INFO_1023

◆ LPUSER_INFO_1024

◆ LPUSER_INFO_1025

◆ LPUSER_INFO_1051

◆ LPUSER_INFO_1052

◆ LPUSER_INFO_1053

◆ LPUSER_INFO_11

◆ LPUSER_INFO_2

◆ LPUSER_INFO_20

◆ LPUSER_INFO_21

◆ LPUSER_INFO_22

◆ LPUSER_INFO_23

◆ LPUSER_INFO_3

◆ LPUSER_INFO_4

◆ LPUSER_MODALS_INFO_0

◆ LPUSER_MODALS_INFO_1

◆ LPUSER_MODALS_INFO_1001

◆ LPUSER_MODALS_INFO_1002

◆ LPUSER_MODALS_INFO_1003

◆ LPUSER_MODALS_INFO_1004

◆ LPUSER_MODALS_INFO_1005

◆ LPUSER_MODALS_INFO_1006

◆ LPUSER_MODALS_INFO_1007

◆ LPUSER_MODALS_INFO_2

◆ LPUSER_MODALS_INFO_3

◆ NET_DISPLAY_GROUP

◆ NET_DISPLAY_MACHINE

◆ NET_DISPLAY_USER

◆ NETLOGON_INFO_1

◆ NETLOGON_INFO_2

◆ NETLOGON_INFO_3

◆ PACCESS_INFO_0

◆ PACCESS_INFO_1

◆ PACCESS_INFO_1002

◆ PACCESS_LIST

◆ PGROUP_INFO_0

◆ PGROUP_INFO_1

◆ PGROUP_INFO_1002

◆ PGROUP_INFO_1005

◆ PGROUP_INFO_2

◆ PGROUP_INFO_3

◆ PGROUP_USERS_INFO_0

◆ PGROUP_USERS_INFO_1

◆ PLOCALGROUP_INFO_0

◆ PLOCALGROUP_INFO_1

◆ PLOCALGROUP_INFO_1002

◆ PLOCALGROUP_MEMBERS_INFO_0

◆ PLOCALGROUP_MEMBERS_INFO_1

◆ PLOCALGROUP_MEMBERS_INFO_2

◆ PLOCALGROUP_MEMBERS_INFO_3

◆ PLOCALGROUP_USERS_INFO_0

◆ PNET_DISPLAY_GROUP

◆ PNET_DISPLAY_MACHINE

◆ PNET_DISPLAY_USER

◆ PNETLOGON_INFO_1

◆ PNETLOGON_INFO_2

◆ PNETLOGON_INFO_3

◆ PNTSTATUS

typedef NTSTATUS* PNTSTATUS

Definition at line 594 of file lmaccess.h.

◆ PUSER_INFO_0

◆ PUSER_INFO_1

◆ PUSER_INFO_10

◆ PUSER_INFO_1003

◆ PUSER_INFO_1005

◆ PUSER_INFO_1006

◆ PUSER_INFO_1007

◆ PUSER_INFO_1008

◆ PUSER_INFO_1009

◆ PUSER_INFO_1010

◆ PUSER_INFO_1011

◆ PUSER_INFO_1012

◆ PUSER_INFO_1013

◆ PUSER_INFO_1014

◆ PUSER_INFO_1017

◆ PUSER_INFO_1018

◆ PUSER_INFO_1020

◆ PUSER_INFO_1023

◆ PUSER_INFO_1024

◆ PUSER_INFO_1025

◆ PUSER_INFO_1051

◆ PUSER_INFO_1052

◆ PUSER_INFO_1053

◆ PUSER_INFO_11

◆ PUSER_INFO_2

◆ PUSER_INFO_20

◆ PUSER_INFO_21

◆ PUSER_INFO_22

◆ PUSER_INFO_23

◆ PUSER_INFO_3

◆ PUSER_INFO_4

◆ PUSER_MODALS_INFO_0

◆ PUSER_MODALS_INFO_1

◆ PUSER_MODALS_INFO_1001

◆ PUSER_MODALS_INFO_1002

◆ PUSER_MODALS_INFO_1003

◆ PUSER_MODALS_INFO_1004

◆ PUSER_MODALS_INFO_1005

◆ PUSER_MODALS_INFO_1006

◆ PUSER_MODALS_INFO_1007

◆ PUSER_MODALS_INFO_2

◆ PUSER_MODALS_INFO_3

◆ USER_INFO_0

◆ USER_INFO_1

◆ USER_INFO_10

◆ USER_INFO_1003

◆ USER_INFO_1005

◆ USER_INFO_1006

◆ USER_INFO_1007

◆ USER_INFO_1008

◆ USER_INFO_1009

◆ USER_INFO_1010

◆ USER_INFO_1011

◆ USER_INFO_1012

◆ USER_INFO_1013

◆ USER_INFO_1014

◆ USER_INFO_1017

◆ USER_INFO_1018

◆ USER_INFO_1020

◆ USER_INFO_1023

◆ USER_INFO_1024

◆ USER_INFO_1025

◆ USER_INFO_1051

◆ USER_INFO_1052

◆ USER_INFO_1053

◆ USER_INFO_11

◆ USER_INFO_2

◆ USER_INFO_20

◆ USER_INFO_21

◆ USER_INFO_22

◆ USER_INFO_23

◆ USER_INFO_3

◆ USER_INFO_4

◆ USER_MODALS_INFO_0

◆ USER_MODALS_INFO_1

◆ USER_MODALS_INFO_1001

◆ USER_MODALS_INFO_1002

◆ USER_MODALS_INFO_1003

◆ USER_MODALS_INFO_1004

◆ USER_MODALS_INFO_1005

◆ USER_MODALS_INFO_1006

◆ USER_MODALS_INFO_1007

◆ USER_MODALS_INFO_2

◆ USER_MODALS_INFO_3

Function Documentation

◆ _Return_type_success_()

typedef _Return_type_success_ ( return >=  0)

◆ I_NetLogonControl()

NET_API_STATUS WINAPI I_NetLogonControl ( LPCWSTR  ,
DWORD  ,
DWORD  ,
PBYTE  
)

◆ I_NetLogonControl2()

NET_API_STATUS WINAPI I_NetLogonControl2 ( LPCWSTR  ,
DWORD  ,
DWORD  ,
PBYTE  ,
PBYTE  
)

◆ NetEnumerateTrustedDomains()

NTSTATUS WINAPI NetEnumerateTrustedDomains ( LPWSTR  ,
LPWSTR  
)

◆ NetGetAnyDCName()

NET_API_STATUS WINAPI NetGetAnyDCName ( LPCWSTR  ,
LPCWSTR  ,
PBYTE  
)

◆ NetGetDCName()

NET_API_STATUS WINAPI NetGetDCName ( LPCWSTR  ,
LPCWSTR  ,
PBYTE  
)

◆ NetGetDisplayInformationIndex()

NET_API_STATUS WINAPI NetGetDisplayInformationIndex ( LPCWSTR  ,
DWORD  ,
LPCWSTR  ,
PDWORD   
)

◆ NetGroupAdd()

NET_API_STATUS WINAPI NetGroupAdd ( LPCWSTR  ,
DWORD  ,
PBYTE  ,
PDWORD   
)

◆ NetGroupAddUser()

NET_API_STATUS WINAPI NetGroupAddUser ( LPCWSTR  ,
LPCWSTR  ,
LPCWSTR   
)

◆ NetGroupDel()

NET_API_STATUS WINAPI NetGroupDel ( LPCWSTR  ,
LPCWSTR   
)

◆ NetGroupDelUser()

NET_API_STATUS WINAPI NetGroupDelUser ( LPCWSTR  ,
LPCWSTR  ,
LPCWSTR   
)

◆ NetGroupEnum()

NET_API_STATUS WINAPI NetGroupEnum ( LPCWSTR  ,
DWORD  ,
PBYTE ,
DWORD  ,
PDWORD  ,
PDWORD  ,
PDWORD_PTR   
)

◆ NetGroupGetInfo()

NET_API_STATUS WINAPI NetGroupGetInfo ( LPCWSTR  ,
LPCWSTR  ,
DWORD  ,
PBYTE  
)

◆ NetGroupGetUsers()

NET_API_STATUS WINAPI NetGroupGetUsers ( LPCWSTR  ,
LPCWSTR  ,
DWORD  ,
PBYTE ,
DWORD  ,
PDWORD  ,
PDWORD  ,
PDWORD_PTR   
)

◆ NetGroupSetInfo()

NET_API_STATUS WINAPI NetGroupSetInfo ( LPCWSTR  ,
LPCWSTR  ,
DWORD  ,
PBYTE  ,
PDWORD   
)

◆ NetGroupSetUsers()

NET_API_STATUS WINAPI NetGroupSetUsers ( LPCWSTR  ,
LPCWSTR  ,
DWORD  ,
PBYTE  ,
DWORD   
)

◆ NetLocalGroupAdd()

NET_API_STATUS WINAPI NetLocalGroupAdd ( LPCWSTR  ,
DWORD  ,
PBYTE  ,
PDWORD   
)

◆ NetLocalGroupAddMember()

NET_API_STATUS WINAPI NetLocalGroupAddMember ( LPCWSTR  servername,
LPCWSTR  groupname,
PSID  membersid 
)

Definition at line 495 of file local_group.c.

499{
501
502 TRACE("(%s %s %p)\n", debugstr_w(servername),
503 debugstr_w(groupname), membersid);
504
505 Member.lgrmi0_sid = membersid;
506
507 return NetLocalGroupAddMembers(servername,
508 groupname,
509 0,
510 (LPBYTE)&Member,
511 1);
512}
#define debugstr_w
Definition: kernel32.h:32
NET_API_STATUS WINAPI NetLocalGroupAddMembers(LPCWSTR servername, LPCWSTR groupname, DWORD level, LPBYTE buf, DWORD totalentries)
Definition: local_group.c:520
#define TRACE(s)
Definition: solgame.cpp:4
unsigned char * LPBYTE
Definition: typedefs.h:53

◆ NetLocalGroupAddMembers()

NET_API_STATUS WINAPI NetLocalGroupAddMembers ( LPCWSTR  ,
LPCWSTR  ,
DWORD  ,
PBYTE  ,
DWORD   
)

◆ NetLocalGroupDel()

NET_API_STATUS WINAPI NetLocalGroupDel ( LPCWSTR  servername,
LPCWSTR  groupname 
)

Definition at line 677 of file local_group.c.

680{
681 UNICODE_STRING ServerName;
682 UNICODE_STRING GroupName;
683 SAM_HANDLE ServerHandle = NULL;
684 SAM_HANDLE DomainHandle = NULL;
685 SAM_HANDLE AliasHandle = NULL;
686 NET_API_STATUS ApiStatus = NERR_Success;
688
689 TRACE("(%s %s)\n", debugstr_w(servername), debugstr_w(groupname));
690
691 if (servername != NULL)
692 RtlInitUnicodeString(&ServerName, servername);
693
694 RtlInitUnicodeString(&GroupName, groupname);
695
696 /* Connect to the SAM Server */
697 Status = SamConnect((servername != NULL) ? &ServerName : NULL,
698 &ServerHandle,
700 NULL);
701 if (!NT_SUCCESS(Status))
702 {
703 ERR("SamConnect failed (Status %08lx)\n", Status);
704 ApiStatus = NetpNtStatusToApiStatus(Status);
705 goto done;
706 }
707
708 /* Open the Builtin Domain */
709 Status = OpenBuiltinDomain(ServerHandle,
711 &DomainHandle);
712 if (!NT_SUCCESS(Status))
713 {
714 ERR("OpenBuiltinDomain failed (Status %08lx)\n", Status);
715 ApiStatus = NetpNtStatusToApiStatus(Status);
716 goto done;
717 }
718
719 /* Open the alias account in the builtin domain */
720 ApiStatus = OpenAliasByName(DomainHandle,
721 &GroupName,
722 DELETE,
723 &AliasHandle);
724 if (ApiStatus != NERR_Success && ApiStatus != ERROR_NONE_MAPPED)
725 {
726 TRACE("OpenAliasByName(%wZ) failed (ApiStatus %lu)\n", &GroupName, ApiStatus);
727 goto done;
728 }
729
730 if (AliasHandle == NULL)
731 {
732 if (DomainHandle != NULL)
733 {
734 SamCloseHandle(DomainHandle);
735 DomainHandle = NULL;
736 }
737
738 /* Open the Acount Domain */
739 Status = OpenAccountDomain(ServerHandle,
740 (servername != NULL) ? &ServerName : NULL,
742 &DomainHandle);
743 if (!NT_SUCCESS(Status))
744 {
745 ERR("OpenAccountDomain failed (Status %08lx)\n", Status);
746 ApiStatus = NetpNtStatusToApiStatus(Status);
747 goto done;
748 }
749
750 /* Open the alias account in the account domain */
751 ApiStatus = OpenAliasByName(DomainHandle,
752 &GroupName,
753 DELETE,
754 &AliasHandle);
755 if (ApiStatus != NERR_Success)
756 {
757 ERR("OpenAliasByName(%wZ) failed (ApiStatus %lu)\n", &GroupName, ApiStatus);
758 if (ApiStatus == ERROR_NONE_MAPPED)
759 ApiStatus = NERR_GroupNotFound;
760 goto done;
761 }
762 }
763
764 /* Delete the alias */
765 Status = SamDeleteAlias(AliasHandle);
766 if (!NT_SUCCESS(Status))
767 {
768 ERR("SamDeleteAlias failed (Status %08lx)\n", Status);
769 ApiStatus = NetpNtStatusToApiStatus(Status);
770 goto done;
771 }
772
773done:
774 if (AliasHandle != NULL)
775 SamCloseHandle(AliasHandle);
776
777 if (DomainHandle != NULL)
778 SamCloseHandle(DomainHandle);
779
780 if (ServerHandle != NULL)
781 SamCloseHandle(ServerHandle);
782
783 return ApiStatus;
784}
LONG NTSTATUS
Definition: precomp.h:26
#define ERR(fmt,...)
Definition: debug.h:110
#define NULL
Definition: types.h:112
#define NT_SUCCESS(StatCode)
Definition: apphelp.c:32
NET_API_STATUS WINAPI NetpNtStatusToApiStatus(_In_ NTSTATUS Status)
Definition: misc.c:289
Status
Definition: gdiplustypes.h:25
#define NERR_Success
Definition: lmerr.h:5
#define NERR_GroupNotFound
Definition: lmerr.h:87
static NET_API_STATUS OpenAliasByName(SAM_HANDLE DomainHandle, PUNICODE_STRING AliasName, ULONG DesiredAccess, PSAM_HANDLE AliasHandle)
Definition: local_group.c:167
DWORD NET_API_STATUS
Definition: ms-dtyp.idl:91
NTSTATUS OpenBuiltinDomain(IN SAM_HANDLE ServerHandle, IN ULONG DesiredAccess, OUT SAM_HANDLE *DomainHandle)
NTSTATUS OpenAccountDomain(IN SAM_HANDLE ServerHandle, IN PUNICODE_STRING ServerName, IN ULONG DesiredAccess, OUT PSAM_HANDLE DomainHandle)
Definition: utils.c:113
NTSYSAPI VOID NTAPI RtlInitUnicodeString(PUNICODE_STRING DestinationString, PCWSTR SourceString)
#define DELETE
Definition: nt_native.h:57
#define DOMAIN_LOOKUP
Definition: ntsam.h:42
#define SAM_SERVER_LOOKUP_DOMAIN
Definition: ntsam.h:104
#define SAM_SERVER_CONNECT
Definition: ntsam.h:99
NTSTATUS NTAPI SamDeleteAlias(IN SAM_HANDLE AliasHandle)
Definition: samlib.c:704
NTSTATUS NTAPI SamConnect(IN OUT PUNICODE_STRING ServerName OPTIONAL, OUT PSAM_HANDLE ServerHandle, IN ACCESS_MASK DesiredAccess, IN POBJECT_ATTRIBUTES ObjectAttributes)
Definition: samlib.c:519
NTSTATUS NTAPI SamCloseHandle(IN SAM_HANDLE SamHandle)
Definition: samlib.c:497
#define STATUS_SUCCESS
Definition: shellext.h:65
#define ERROR_NONE_MAPPED
Definition: winerror.h:814

Referenced by cmdLocalGroup(), and GroupDelete().

◆ NetLocalGroupDelMember()

NET_API_STATUS WINAPI NetLocalGroupDelMember ( LPCWSTR  servername,
LPCWSTR  groupname,
PSID  membersid 
)

Definition at line 792 of file local_group.c.

796{
798
799 TRACE("(%s %s %p)\n", debugstr_w(servername),
800 debugstr_w(groupname), membersid);
801
802 Member.lgrmi0_sid = membersid;
803
804 return NetLocalGroupDelMembers(servername,
805 groupname,
806 0,
807 (LPBYTE)&Member,
808 1);
809}
NET_API_STATUS WINAPI NetLocalGroupDelMembers(LPCWSTR servername, LPCWSTR groupname, DWORD level, LPBYTE buf, DWORD totalentries)
Definition: local_group.c:817

◆ NetLocalGroupDelMembers()

NET_API_STATUS WINAPI NetLocalGroupDelMembers ( LPCWSTR  ,
LPCWSTR  ,
DWORD  ,
PBYTE  ,
DWORD   
)

◆ NetLocalGroupEnum()

NET_API_STATUS WINAPI NetLocalGroupEnum ( LPCWSTR  ,
DWORD  ,
PBYTE ,
DWORD  ,
PDWORD  ,
PDWORD  ,
PDWORD_PTR   
)

◆ NetLocalGroupGetInfo()

NET_API_STATUS WINAPI NetLocalGroupGetInfo ( LPCWSTR  ,
LPCWSTR  ,
DWORD  ,
PBYTE  
)

◆ NetLocalGroupGetMembers()

NET_API_STATUS WINAPI NetLocalGroupGetMembers ( LPCWSTR  ,
LPCWSTR  ,
DWORD  ,
PBYTE ,
DWORD  ,
PDWORD  ,
PDWORD  ,
PDWORD_PTR   
)

◆ NetLocalGroupSetInfo()

NET_API_STATUS WINAPI NetLocalGroupSetInfo ( LPCWSTR  ,
LPCWSTR  ,
DWORD  ,
PBYTE  ,
PDWORD   
)

◆ NetLocalGroupSetMembers()

NET_API_STATUS WINAPI NetLocalGroupSetMembers ( LPCWSTR  ,
LPCWSTR  ,
DWORD  ,
PBYTE  ,
DWORD   
)

◆ NetQueryDisplayInformation()

NET_API_STATUS WINAPI NetQueryDisplayInformation ( LPCWSTR  ,
DWORD  ,
DWORD  ,
DWORD  ,
DWORD  ,
PDWORD  ,
PVOID  
)

◆ NetUserAdd()

NET_API_STATUS WINAPI NetUserAdd ( LPCWSTR  ,
DWORD  ,
PBYTE  ,
PDWORD   
)

◆ NetUserChangePassword()

NET_API_STATUS WINAPI NetUserChangePassword ( LPCWSTR  domainname,
LPCWSTR  username,
LPCWSTR  oldpassword,
LPCWSTR  newpassword 
)

Definition at line 2399 of file user.c.

2403{
2404 PMSV1_0_CHANGEPASSWORD_REQUEST RequestBuffer = NULL;
2405 PMSV1_0_CHANGEPASSWORD_RESPONSE ResponseBuffer = NULL;
2406 ULONG RequestBufferSize;
2407 ULONG ResponseBufferSize = 0;
2408 LPWSTR Ptr;
2409 ANSI_STRING PackageName;
2412 NET_API_STATUS ApiStatus = NERR_Success;
2415
2416 TRACE("(%s, %s, ..., ...)\n", debugstr_w(domainname), debugstr_w(username));
2417
2418 /* FIXME: handle null domain or user name */
2419
2420 /* Check the parameters */
2421 if ((oldpassword == NULL) ||
2422 (newpassword == NULL))
2424
2425 /* Connect to the LSA server */
2427 if (!NT_SUCCESS(Status))
2429
2430 /* Get the authentication package ID */
2431 RtlInitAnsiString(&PackageName,
2433
2435 &PackageName,
2437 if (!NT_SUCCESS(Status))
2438 {
2439 ApiStatus = NetpNtStatusToApiStatus(Status);
2440 goto done;
2441 }
2442
2443 /* Calculate the request buffer size */
2444 RequestBufferSize = sizeof(MSV1_0_CHANGEPASSWORD_REQUEST) +
2445 ((wcslen(domainname) + 1) * sizeof(WCHAR)) +
2446 ((wcslen(username) + 1) * sizeof(WCHAR)) +
2447 ((wcslen(oldpassword) + 1) * sizeof(WCHAR)) +
2448 ((wcslen(newpassword) + 1) * sizeof(WCHAR));
2449
2450 /* Allocate the request buffer */
2451 ApiStatus = NetApiBufferAllocate(RequestBufferSize,
2452 (PVOID*)&RequestBuffer);
2453 if (ApiStatus != NERR_Success)
2454 goto done;
2455
2456 /* Initialize the request buffer */
2457 RequestBuffer->MessageType = MsV1_0ChangePassword;
2458 RequestBuffer->Impersonating = TRUE;
2459
2460 Ptr = (LPWSTR)((ULONG_PTR)RequestBuffer + sizeof(MSV1_0_CHANGEPASSWORD_REQUEST));
2461
2462 /* Pack the domain name */
2463 RequestBuffer->DomainName.Length = wcslen(domainname) * sizeof(WCHAR);
2464 RequestBuffer->DomainName.MaximumLength = RequestBuffer->DomainName.Length + sizeof(WCHAR);
2465 RequestBuffer->DomainName.Buffer = Ptr;
2466
2467 RtlCopyMemory(RequestBuffer->DomainName.Buffer,
2468 domainname,
2469 RequestBuffer->DomainName.MaximumLength);
2470
2471 Ptr = (LPWSTR)((ULONG_PTR)Ptr + RequestBuffer->DomainName.MaximumLength);
2472
2473 /* Pack the user name */
2474 RequestBuffer->AccountName.Length = wcslen(username) * sizeof(WCHAR);
2475 RequestBuffer->AccountName.MaximumLength = RequestBuffer->AccountName.Length + sizeof(WCHAR);
2476 RequestBuffer->AccountName.Buffer = Ptr;
2477
2478 RtlCopyMemory(RequestBuffer->AccountName.Buffer,
2479 username,
2480 RequestBuffer->AccountName.MaximumLength);
2481
2482 Ptr = (LPWSTR)((ULONG_PTR)Ptr + RequestBuffer->AccountName.MaximumLength);
2483
2484 /* Pack the old password */
2485 RequestBuffer->OldPassword.Length = wcslen(oldpassword) * sizeof(WCHAR);
2486 RequestBuffer->OldPassword.MaximumLength = RequestBuffer->OldPassword.Length + sizeof(WCHAR);
2487 RequestBuffer->OldPassword.Buffer = Ptr;
2488
2489 RtlCopyMemory(RequestBuffer->OldPassword.Buffer,
2490 oldpassword,
2491 RequestBuffer->OldPassword.MaximumLength);
2492
2493 Ptr = (LPWSTR)((ULONG_PTR)Ptr + RequestBuffer->OldPassword.MaximumLength);
2494
2495 /* Pack the new password */
2496 RequestBuffer->NewPassword.Length = wcslen(newpassword) * sizeof(WCHAR);
2497 RequestBuffer->NewPassword.MaximumLength = RequestBuffer->NewPassword.Length + sizeof(WCHAR);
2498 RequestBuffer->NewPassword.Buffer = Ptr;
2499
2500 RtlCopyMemory(RequestBuffer->NewPassword.Buffer,
2501 newpassword,
2502 RequestBuffer->NewPassword.MaximumLength);
2503
2504 /* Call the authentication package */
2507 RequestBuffer,
2508 RequestBufferSize,
2509 (PVOID*)&ResponseBuffer,
2510 &ResponseBufferSize,
2512 if (!NT_SUCCESS(Status))
2513 {
2514 ApiStatus = NetpNtStatusToApiStatus(Status);
2515 goto done;
2516 }
2517
2519 {
2521 goto done;
2522 }
2523
2524done:
2525 if (RequestBuffer != NULL)
2526 NetApiBufferFree(RequestBuffer);
2527
2528 if (ResponseBuffer != NULL)
2529 LsaFreeReturnBuffer(ResponseBuffer);
2530
2531 if (LsaHandle != NULL)
2533
2534 return ApiStatus;
2535}
HANDLE LsaHandle
Definition: wkssvc.c:41
#define TRUE
Definition: types.h:120
ULONG AuthenticationPackage
Definition: logon.c:18
#define ERROR_INVALID_PARAMETER
Definition: compat.h:101
NET_API_STATUS WINAPI NetApiBufferFree(LPVOID Buffer)
Definition: apibuf.c:43
NET_API_STATUS WINAPI NetApiBufferAllocate(DWORD ByteCount, LPVOID *Buffer)
Definition: apibuf.c:28
_Must_inspect_result_ _In_ PFSRTL_PER_STREAM_CONTEXT Ptr
Definition: fsrtlfuncs.h:898
_CRTIMP size_t __cdecl wcslen(_In_z_ const wchar_t *_Str)
VOID NTAPI ProtocolStatus(NDIS_HANDLE BindingContext, NDIS_STATUS GenerelStatus, PVOID StatusBuffer, UINT StatusBufferSize)
Called by NDIS when the underlying driver has changed state.
Definition: lan.c:461
NTSTATUS NTAPI LsaConnectUntrusted(OUT PHANDLE LsaHandle)
Definition: lsalpc.c:112
static WCHAR username[]
Definition: url.c:32
NTSTATUS NTAPI NtClose(IN HANDLE Handle)
Definition: obhandle.c:3402
NTSYSAPI VOID NTAPI RtlInitAnsiString(PANSI_STRING DestinationString, PCSZ SourceString)
NTSTATUS NTAPI LsaLookupAuthenticationPackage(HANDLE, PLSA_STRING, PULONG)
struct _MSV1_0_CHANGEPASSWORD_REQUEST MSV1_0_CHANGEPASSWORD_REQUEST
@ MsV1_0ChangePassword
Definition: ntsecapi.h:223
#define MSV1_0_PACKAGE_NAME
Definition: ntsecapi.h:42
NTSTATUS NTAPI LsaCallAuthenticationPackage(HANDLE, ULONG, PVOID, ULONG, PVOID *, PULONG, PNTSTATUS)
NTSTATUS NTAPI LsaFreeReturnBuffer(PVOID)
USHORT MaximumLength
Definition: ntsecapi.h:164
MSV1_0_PROTOCOL_MESSAGE_TYPE MessageType
Definition: ntsecapi.h:511
UNICODE_STRING AccountName
Definition: ntsecapi.h:513
UNICODE_STRING NewPassword
Definition: ntsecapi.h:515
UNICODE_STRING OldPassword
Definition: ntsecapi.h:514
#define RtlCopyMemory(Destination, Source, Length)
Definition: typedefs.h:263
uint32_t ULONG_PTR
Definition: typedefs.h:65
uint32_t ULONG
Definition: typedefs.h:59
__wchar_t WCHAR
Definition: xmlstorage.h:180
WCHAR * LPWSTR
Definition: xmlstorage.h:184

◆ NetUserDel()

NET_API_STATUS WINAPI NetUserDel ( LPCWSTR  servername,
LPCWSTR  username 
)

Definition at line 2543 of file user.c.

2545{
2546 UNICODE_STRING ServerName;
2547 UNICODE_STRING UserName;
2548 SAM_HANDLE ServerHandle = NULL;
2549 SAM_HANDLE DomainHandle = NULL;
2550 SAM_HANDLE UserHandle = NULL;
2551 NET_API_STATUS ApiStatus = NERR_Success;
2553
2554 TRACE("(%s, %s)\n", debugstr_w(servername), debugstr_w(username));
2555
2556 if (servername != NULL)
2557 RtlInitUnicodeString(&ServerName, servername);
2558
2559 RtlInitUnicodeString(&UserName, username);
2560
2561 /* Connect to the SAM Server */
2562 Status = SamConnect((servername != NULL) ? &ServerName : NULL,
2563 &ServerHandle,
2565 NULL);
2566 if (!NT_SUCCESS(Status))
2567 {
2568 ERR("SamConnect failed (Status %08lx)\n", Status);
2569 ApiStatus = NetpNtStatusToApiStatus(Status);
2570 goto done;
2571 }
2572
2573 /* Open the Builtin Domain */
2574 Status = OpenBuiltinDomain(ServerHandle,
2576 &DomainHandle);
2577 if (!NT_SUCCESS(Status))
2578 {
2579 ERR("OpenBuiltinDomain failed (Status %08lx)\n", Status);
2580 ApiStatus = NetpNtStatusToApiStatus(Status);
2581 goto done;
2582 }
2583
2584 /* Open the user account in the builtin domain */
2585 ApiStatus = OpenUserByName(DomainHandle,
2586 &UserName,
2587 DELETE,
2588 &UserHandle);
2589 if (ApiStatus != NERR_Success && ApiStatus != ERROR_NONE_MAPPED)
2590 {
2591 TRACE("OpenUserByName(%wZ) failed (ApiStatus %lu)\n", &UserName, ApiStatus);
2592 goto done;
2593 }
2594
2595 if (UserHandle == NULL)
2596 {
2597 if (DomainHandle != NULL)
2598 {
2599 SamCloseHandle(DomainHandle);
2600 DomainHandle = NULL;
2601 }
2602
2603 /* Open the Acount Domain */
2604 Status = OpenAccountDomain(ServerHandle,
2605 (servername != NULL) ? &ServerName : NULL,
2607 &DomainHandle);
2608 if (!NT_SUCCESS(Status))
2609 {
2610 ERR("OpenAccountDomain failed (Status %08lx)\n", Status);
2611 ApiStatus = NetpNtStatusToApiStatus(Status);
2612 goto done;
2613 }
2614
2615 /* Open the user account in the account domain */
2616 ApiStatus = OpenUserByName(DomainHandle,
2617 &UserName,
2618 DELETE,
2619 &UserHandle);
2620 if (ApiStatus != NERR_Success)
2621 {
2622 ERR("OpenUserByName(%wZ) failed (ApiStatus %lu)\n", &UserName, ApiStatus);
2623 if (ApiStatus == ERROR_NONE_MAPPED)
2624 ApiStatus = NERR_UserNotFound;
2625 goto done;
2626 }
2627 }
2628
2629 /* Delete the user */
2630 Status = SamDeleteUser(UserHandle);
2631 if (!NT_SUCCESS(Status))
2632 {
2633 ERR("SamDeleteUser failed (Status %08lx)\n", Status);
2634 ApiStatus = NetpNtStatusToApiStatus(Status);
2635 goto done;
2636 }
2637
2638 /* A successful delete invalidates the handle */
2639 UserHandle = NULL;
2640
2641done:
2642 if (UserHandle != NULL)
2643 SamCloseHandle(UserHandle);
2644
2645 if (DomainHandle != NULL)
2646 SamCloseHandle(DomainHandle);
2647
2648 if (ServerHandle != NULL)
2649 SamCloseHandle(ServerHandle);
2650
2651 return ApiStatus;
2652}
static NET_API_STATUS OpenUserByName(SAM_HANDLE DomainHandle, PUNICODE_STRING UserName, ULONG DesiredAccess, PSAM_HANDLE UserHandle)
Definition: user.c:2215
#define NERR_UserNotFound
Definition: lmerr.h:88
NTSTATUS NTAPI SamDeleteUser(IN SAM_HANDLE UserHandle)
Definition: samlib.c:760

Referenced by cmdComputer(), cmdUser(), and UserDelete().

◆ NetUserEnum()

NET_API_STATUS WINAPI NetUserEnum ( LPCWSTR  ,
DWORD  ,
DWORD  ,
PBYTE ,
DWORD  ,
PDWORD  ,
PDWORD  ,
PDWORD   
)

◆ NetUserGetGroups()

NET_API_STATUS WINAPI NetUserGetGroups ( LPCWSTR  ,
LPCWSTR  ,
DWORD  ,
PBYTE ,
DWORD  ,
PDWORD  ,
PDWORD   
)

◆ NetUserGetInfo()

NET_API_STATUS WINAPI NetUserGetInfo ( LPCWSTR  ,
LPCWSTR  ,
DWORD  ,
PBYTE  
)

◆ NetUserGetLocalGroups()

NET_API_STATUS WINAPI NetUserGetLocalGroups ( LPCWSTR  ,
LPCWSTR  ,
DWORD  ,
DWORD  ,
PBYTE ,
DWORD  ,
PDWORD  ,
PDWORD   
)

◆ NetUserModalsGet()

NET_API_STATUS WINAPI NetUserModalsGet ( LPCWSTR  ,
DWORD  ,
PBYTE  
)

◆ NetUserModalsSet()

NET_API_STATUS WINAPI NetUserModalsSet ( LPCWSTR  ,
DWORD  ,
PBYTE  ,
PDWORD   
)

◆ NetUserSetGroups()

NET_API_STATUS WINAPI NetUserSetGroups ( LPCWSTR  ,
LPCWSTR  ,
DWORD  ,
PBYTE  ,
DWORD   
)

◆ NetUserSetInfo()

NET_API_STATUS WINAPI NetUserSetInfo ( LPCWSTR  ,
LPCWSTR  ,
DWORD  ,
PBYTE  ,
PDWORD   
)