lmaccess.h revision 5112e32d7072e280613921c982a6672f2c859cf3
/*
* Copyright 2002 Andriy Palamarchuk
*
* User information Net API.
*
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
/*
* Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
* other than GPL or LGPL is available it will apply instead, Sun elects to use only
* the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
* a choice of LGPL license versions is made available with the language indicating
* that LGPLv2 or any later version may be used, or where a choice of which version
* of the LGPL is applied is otherwise unspecified.
*/
#ifndef __WINE_LMACCESS_H
#define __WINE_LMACCESS_H
#ifdef __cplusplus
extern "C" {
#endif
#include <lmcons.h>
#define UF_SCRIPT 0x000001
#define UF_ACCOUNTDISABLE 0x000002
#define UF_HOMEDIR_REQUIRED 0x000008
#define UF_LOCKOUT 0x000010
#define UF_PASSWD_NOTREQD 0x000020
#define UF_PASSWD_CANT_CHANGE 0x000040
#define UF_ENCRYPTED_TEXT_PASSWORD_ALLOWED 0x000080
#define UF_TEMP_DUPLICATE_ACCOUNT 0x000100
#define UF_NORMAL_ACCOUNT 0x000200
#define UF_INTERDOMAIN_TRUST_ACCOUNT 0x000800
#define UF_WORKSTATION_TRUST_ACCOUNT 0x001000
#define UF_SERVER_TRUST_ACCOUNT 0x002000
#define UF_DONT_EXPIRE_PASSWD 0x010000
#define UF_MNS_LOGON_ACCOUNT 0x020000
#define UF_SMARTCARD_REQUIRED 0x040000
#define UF_TRUSTED_FOR_DELEGATION 0x080000
#define UF_NOT_DELEGATED 0x100000
#define UF_USE_DES_KEY_ONLY 0x200000
#define UF_DONT_REQUIRE_PREAUTH 0x400000
#define UF_PASSWORD_EXPIRED 0x800000
#define UF_MACHINE_ACCOUNT_MASK ( \
#define UF_ACCOUNT_TYPE_MASK ( \
#define UF_SETTABLE_BITS ( \
UF_SCRIPT | \
UF_LOCKOUT | \
UF_NOT_DELEGATED | \
#if defined(__GNUC__)
# define GROUP_SPECIALGRP_USERS L"USERS"
#else
#endif
#if defined(__GNUC__)
# define GROUP_SPECIALGRP_ADMINS L"ADMINS"
#else
#endif
#if defined(__GNUC__)
# define GROUP_SPECIALGRP_GUESTS L"GUESTS"
#else
#endif
#if defined(__GNUC__)
# define GROUP_SPECIALGRP_LOCAL L"LOCAL"
#else
#endif
#ifndef WINE_NTSTATUS_DECLARED
#define WINE_NTSTATUS_DECLARED
#endif
#ifndef WINE_PNTSTATUS_DECLARED
#define WINE_PNTSTATUS_DECLARED
#endif
/* NetGetUserInfo structures */
typedef struct _USER_INFO_0 {
typedef struct _USER_INFO_1 {
typedef struct _USER_INFO_2 {
typedef struct _USER_INFO_3 {
typedef struct _USER_INFO_4 {
typedef struct _USER_INFO_10 {
typedef struct _USER_INFO_11 {
typedef struct _USER_INFO_20 {
typedef struct _USER_INFO_23 {
typedef struct _USER_INFO_1003 {
typedef struct _USER_INFO_1005 {
typedef struct _USER_INFO_1006 {
typedef struct _USER_INFO_1007 {
typedef struct _USER_INFO_1008 {
typedef struct _USER_INFO_1009 {
typedef struct _USER_INFO_1010 {
typedef struct _USER_INFO_1011 {
typedef struct _USER_INFO_1012 {
typedef struct _USER_INFO_1013 {
typedef struct _USER_INFO_1014 {
typedef struct _USER_INFO_1017 {
typedef struct _USER_INFO_1018 {
typedef struct _USER_INFO_1020 {
typedef struct _USER_INFO_1023 {
typedef struct _USER_INFO_1024 {
typedef struct _USER_INFO_1025 {
typedef struct _USER_INFO_1051 {
typedef struct _USER_INFO_1052 {
typedef struct _USER_INFO_1053 {
typedef struct _USER_MODALS_INFO_0 {
typedef struct _USER_MODALS_INFO_1 {
typedef struct _USER_MODALS_INFO_2 {
typedef struct _USER_MODALS_INFO_3 {
typedef struct _NET_DISPLAY_USER {
typedef struct _NET_DISPLAY_MACHINE {
typedef struct _NET_DISPLAY_GROUP {
typedef struct _LOCALGROUP_INFO_0 {
typedef struct _LOCALGROUP_INFO_1 {
typedef struct _LOCALGROUP_INFO_1002 {
typedef struct _LOCALGROUP_MEMBERS_INFO_0 {
typedef struct _LOCALGROUP_MEMBERS_INFO_1 {
typedef struct _LOCALGROUP_MEMBERS_INFO_2 {
typedef struct _LOCALGROUP_MEMBERS_INFO_3 {
typedef struct _LOCALGROUP_USERS_INFO_0 {
#define USER_PRIV_GUEST 0
#define USER_PRIV_USER 1
#define USER_PRIV_ADMIN 2
#define USER_PRIV_MASK 3
#define LOCALGROUP_NAME_PARMNUM 1
#define LOCALGROUP_COMMENT_PARMNUM 2
NET_API_STATUS WINAPI NetLocalGroupGetMembers(LPCWSTR,LPCWSTR,DWORD,LPBYTE*,DWORD,LPDWORD,LPDWORD,PDWORD_PTR);
NET_API_STATUS WINAPI NetUserGetLocalGroups(LPCWSTR,LPCWSTR,DWORD,DWORD,LPBYTE*,DWORD,LPDWORD,LPDWORD);
#ifdef __cplusplus
}
#endif
#endif