Headers diff for netapi32.dll between 6.1.7601.17887-Windows_7.0 and 6.3.9600.17415-Windows_8.1 versions



 davclnt.h (6.1.7601.17887-Windows_7.0)   davclnt.h (6.3.9600.17415-Windows_8.1) 
skipping to change at line 20 skipping to change at line 20
This module defines the DAV specific functions that are exposed to the user This module defines the DAV specific functions that are exposed to the user
Revision History: Revision History:
--*/ --*/
#ifndef _DAV_CLNT_H_ #ifndef _DAV_CLNT_H_
#define _DAV_CLNT_H_ #define _DAV_CLNT_H_
#include <winapifamily.h>
#pragma region Desktop Family
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
#define OPAQUE_HANDLE DWORD #define OPAQUE_HANDLE DWORD
// Certificates or other Auth types will be sent through this structure // Certificates or other Auth types will be sent through this structure
typedef struct _DAV_CALLBACK_AUTH_BLOB{ typedef struct _DAV_CALLBACK_AUTH_BLOB{
PVOID pBuffer; PVOID pBuffer;
ULONG ulSize; // Size of AuthBlob, ULONG ulSize; // Size of AuthBlob,
skipping to change at line 64 skipping to change at line 69
#define DAV_AUTHN_SCHEME_FBA 0x00100000 #define DAV_AUTHN_SCHEME_FBA 0x00100000
typedef enum typedef enum
{ {
DefaultBehavior, // Try the default behaviour. Dont use callback DefaultBehavior, // Try the default behaviour. Dont use callback
RetryRequest, // Retry the connection with the newly gathered creds RetryRequest, // Retry the connection with the newly gathered creds
CancelRequest // Cancel connection CancelRequest // Cancel connection
} AUTHNEXTSTEP; } AUTHNEXTSTEP;
// Function signature for the callback to delete the memory allocated by the cr eds // Function signature for the callback to delete the memory allocated by the cr eds
typedef DWORD (*PFNDAVAUTHCALLBACK_FREECRED)(__in PVOID pbuffer); typedef DWORD (CALLBACK *PFNDAVAUTHCALLBACK_FREECRED)(_In_ PVOID pbuffer);
// Function signature for the Callback that will harvest the credentials // Function signature for the Callback that will harvest the credentials
typedef DWORD (*PFNDAVAUTHCALLBACK)( typedef DWORD (CALLBACK *PFNDAVAUTHCALLBACK)(
__in LPWSTR lpwzServerName, // Server Name _In_ LPWSTR lpwzServerName, // Server Name
__in LPWSTR lpwzRemoteName, // Remote Name _In_ LPWSTR lpwzRemoteName, // Remote Name
__in DWORD dwAuthScheme, // Bitmap of DAV_AUTHN_SCHEME* values _In_ DWORD dwAuthScheme, // Bitmap of DAV_AUTHN_SCHEME* values
__in DWORD dwFlags, // The flags that was passed to NPADDConnect _In_ DWORD dwFlags, // The flags that was passed to NPADDConnect
ion ion
__inout PDAV_CALLBACK_CRED pCallbackCred, // Creds collected by the ca _Inout_ PDAV_CALLBACK_CRED pCallbackCred, // Creds collected by the ca
llback llback
__inout AUTHNEXTSTEP *NextStep, // Next step for DavClnt _Inout_ AUTHNEXTSTEP *NextStep, // Next step for DavClnt
__out PFNDAVAUTHCALLBACK_FREECRED *pFreeCred // Callback to free the memo _Out_ PFNDAVAUTHCALLBACK_FREECRED *pFreeCred // Callback to free the memo
ry allocated for creds by the callback ry allocated for creds by the callback
); );
DWORD DWORD
WINAPI WINAPI
DavAddConnection( DavAddConnection(
__inout HANDLE *ConnectionHandle, _Inout_ HANDLE *ConnectionHandle,
__in LPCWSTR RemoteName, _In_ LPCWSTR RemoteName,
__in_opt LPCWSTR UserName, _In_opt_ LPCWSTR UserName,
__in_opt LPCWSTR Password, _In_opt_ LPCWSTR Password,
__in_bcount(CertSize) PBYTE ClientCert, _In_reads_bytes_(CertSize) PBYTE ClientCert,
__in DWORD CertSize _In_ DWORD CertSize
); );
DWORD DWORD
WINAPI WINAPI
DavDeleteConnection( DavDeleteConnection(
__in HANDLE ConnectionHandle _In_ HANDLE ConnectionHandle
); );
DWORD DWORD
WINAPI WINAPI
DavGetUNCFromHTTPPath ( DavGetUNCFromHTTPPath (
__in LPCWSTR HttpPath, _In_ LPCWSTR HttpPath,
__out_ecount(*lpSize) LPWSTR UncPath, _Out_writes_(*lpSize) LPWSTR UncPath,
IN OUT LPDWORD lpSize IN OUT LPDWORD lpSize
); );
DWORD DWORD
WINAPI WINAPI
DavGetHTTPFromUNCPath ( DavGetHTTPFromUNCPath (
__in LPCWSTR UncPath, _In_ LPCWSTR UncPath,
__out_ecount(*lpSize) LPWSTR HttpPath, _Out_writes_(*lpSize) LPWSTR HttpPath,
IN OUT LPDWORD lpSize IN OUT LPDWORD lpSize
); );
DWORD DWORD
WINAPI WINAPI
DavGetTheLockOwnerOfTheFile( DavGetTheLockOwnerOfTheFile(
__in LPCWSTR FileName, _In_ LPCWSTR FileName,
__out_bcount_opt(*LockOwnerNameLengthInBytes) PWSTR LockOwnerName, _Out_writes_bytes_opt_(*LockOwnerNameLengthInBytes) PWSTR LockOwnerName,
__inout PULONG LockOwnerNameLengthInBytes _Inout_ PULONG LockOwnerNameLengthInBytes
); );
DWORD DWORD
WINAPI WINAPI
DavGetExtendedError( DavGetExtendedError(
__in HANDLE hFile, _In_ HANDLE hFile,
__out DWORD *ExtError, _Out_ DWORD *ExtError,
__out_ecount(*cChSize) LPWSTR ExtErrorString, _Out_writes_(*cChSize) LPWSTR ExtErrorString,
__inout DWORD *cChSize _Inout_ DWORD *cChSize
); );
DWORD DWORD
WINAPI WINAPI
DavFlushFile( DavFlushFile(
__in HANDLE hFile _In_ HANDLE hFile
); );
DWORD DWORD
WINAPI WINAPI
DavInvalidateCache( DavInvalidateCache(
__in LPWSTR URLName _In_ LPWSTR URLName
); );
DWORD DWORD
APIENTRY APIENTRY
DavCancelConnectionsToServer( DavCancelConnectionsToServer(
__in LPWSTR lpName, _In_ LPWSTR lpName,
BOOL fForce BOOL fForce
); );
OPAQUE_HANDLE OPAQUE_HANDLE
APIENTRY APIENTRY
DavRegisterAuthCallback(__in PFNDAVAUTHCALLBACK CallBack, DavRegisterAuthCallback(_In_ PFNDAVAUTHCALLBACK CallBack,
__in ULONG Version); _In_ ULONG Version);
VOID VOID
APIENTRY APIENTRY
DavUnregisterAuthCallback(__in OPAQUE_HANDLE hCallback); DavUnregisterAuthCallback(_In_ OPAQUE_HANDLE hCallback);
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */
#pragma endregion
#endif #endif
 End of changes. 15 change blocks. 
36 lines changed or deleted 44 lines changed or added


 lmaccess.h (6.1.7601.17887-Windows_7.0)   lmaccess.h (6.3.9600.17415-Windows_8.1) 
skipping to change at line 25 skipping to change at line 25
User Mode - Win32 User Mode - Win32
Notes: Notes:
You must include NETCONS.H before this file, since this file depends You must include NETCONS.H before this file, since this file depends
on values defined in NETCONS.H. on values defined in NETCONS.H.
--*/ --*/
#include <winapifamily.h>
#pragma region Desktop Family
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
// //
// User Class // User Class
// //
#ifndef _LMUSER_ #ifndef _LMUSER_
#define _LMUSER_ #define _LMUSER_
#if _MSC_VER > 1000 #if _MSC_VER > 1000
#pragma once #pragma once
#endif #endif
skipping to change at line 48 skipping to change at line 53
#endif #endif
#include <lmcons.h> // unfortunately created a dependence on this #include <lmcons.h> // unfortunately created a dependence on this
// //
// Function Prototypes - User // Function Prototypes - User
// //
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetUserAdd ( NetUserAdd (
IN LPCWSTR servername OPTIONAL, _In_opt_ LPCWSTR servername OPTIONAL,
IN DWORD level, _In_ DWORD level,
IN LPBYTE buf, _In_ LPBYTE buf,
OUT LPDWORD parm_err OPTIONAL _Out_opt_ LPDWORD parm_err OPTIONAL
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetUserEnum ( NetUserEnum (
IN LPCWSTR servername OPTIONAL, _In_opt_ LPCWSTR servername OPTIONAL,
IN DWORD level, _In_ DWORD level,
IN DWORD filter, _In_ DWORD filter,
OUT LPBYTE *bufptr, _Outptr_result_buffer_(_Inexpressible_("varies")) LPBYTE *bufptr,
IN DWORD prefmaxlen, _In_ DWORD prefmaxlen,
OUT LPDWORD entriesread, _Out_ LPDWORD entriesread,
OUT LPDWORD totalentries, _Out_ LPDWORD totalentries,
IN OUT LPDWORD resume_handle OPTIONAL _Inout_opt_ PDWORD resume_handle OPTIONAL
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetUserGetInfo ( NetUserGetInfo (
IN LPCWSTR servername OPTIONAL, _In_opt_ LPCWSTR servername OPTIONAL,
IN LPCWSTR username, _In_ LPCWSTR username,
IN DWORD level, _In_ DWORD level,
OUT LPBYTE *bufptr _Outptr_result_buffer_(_Inexpressible_("varies")) LPBYTE *bufptr
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetUserSetInfo ( NetUserSetInfo (
IN LPCWSTR servername OPTIONAL, _In_opt_ LPCWSTR servername OPTIONAL,
IN LPCWSTR username, _In_ LPCWSTR username,
IN DWORD level, _In_ DWORD level,
IN LPBYTE buf, _In_reads_(_Inexpressible_("varies")) LPBYTE buf,
OUT LPDWORD parm_err OPTIONAL _Out_opt_ LPDWORD parm_err OPTIONAL
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetUserDel ( NetUserDel (
IN LPCWSTR servername OPTIONAL, _In_opt_ LPCWSTR servername OPTIONAL,
IN LPCWSTR username _In_ LPCWSTR username
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetUserGetGroups ( NetUserGetGroups (
IN LPCWSTR servername OPTIONAL, _In_opt_ LPCWSTR servername OPTIONAL,
IN LPCWSTR username, _In_ LPCWSTR username,
IN DWORD level, _In_ DWORD level,
OUT LPBYTE *bufptr, _Outptr_result_buffer_(_Inexpressible_("varies")) LPBYTE *bufptr,
IN DWORD prefmaxlen, _In_ DWORD prefmaxlen,
OUT LPDWORD entriesread, _Out_ LPDWORD entriesread,
OUT LPDWORD totalentries _Out_ LPDWORD totalentries
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetUserSetGroups ( NetUserSetGroups (
IN LPCWSTR servername OPTIONAL, _In_opt_ LPCWSTR servername OPTIONAL,
IN LPCWSTR username, _In_ LPCWSTR username,
IN DWORD level, _In_ DWORD level,
IN LPBYTE buf, _In_reads_(_Inexpressible_("varies")) LPBYTE buf,
IN DWORD num_entries _In_ DWORD num_entries
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetUserGetLocalGroups ( NetUserGetLocalGroups (
IN LPCWSTR servername OPTIONAL, _In_opt_ LPCWSTR servername OPTIONAL,
IN LPCWSTR username, _In_ LPCWSTR username,
IN DWORD level, _In_ DWORD level,
IN DWORD flags, _In_ DWORD flags,
OUT LPBYTE *bufptr, _Outptr_result_buffer_(_Inexpressible_("varies")) LPBYTE *bufptr,
IN DWORD prefmaxlen, _In_ DWORD prefmaxlen,
OUT LPDWORD entriesread, _Out_ LPDWORD entriesread,
OUT LPDWORD totalentries _Out_ LPDWORD totalentries
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetUserModalsGet ( NetUserModalsGet (
IN LPCWSTR servername OPTIONAL, _In_opt_ LPCWSTR servername OPTIONAL,
IN DWORD level, _In_ DWORD level,
OUT LPBYTE *bufptr _Outptr_result_buffer_(_Inexpressible_("varies")) LPBYTE *bufptr
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetUserModalsSet ( NetUserModalsSet (
IN LPCWSTR servername OPTIONAL, _In_opt_ LPCWSTR servername OPTIONAL,
IN DWORD level, _In_ DWORD level,
IN LPBYTE buf, _In_reads_(_Inexpressible_("varies")) LPBYTE buf,
OUT LPDWORD parm_err OPTIONAL _Out_opt_ LPDWORD parm_err OPTIONAL
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetUserChangePassword ( NetUserChangePassword (
__in_opt IN LPCWSTR domainname OPTIONAL, _In_opt_ IN LPCWSTR domainname OPTIONAL,
__in_opt IN LPCWSTR username OPTIONAL, _In_opt_ IN LPCWSTR username OPTIONAL,
__in IN LPCWSTR oldpassword, _In_ IN LPCWSTR oldpassword,
__in IN LPCWSTR newpassword _In_ IN LPCWSTR newpassword
); );
// //
// Data Structures - User // Data Structures - User
// //
typedef struct _USER_INFO_0 { typedef struct _USER_INFO_0 {
LPWSTR usri0_name; LPWSTR usri0_name;
}USER_INFO_0, *PUSER_INFO_0, *LPUSER_INFO_0; }USER_INFO_0, *PUSER_INFO_0, *LPUSER_INFO_0;
skipping to change at line 331 skipping to change at line 336
}USER_INFO_22, *PUSER_INFO_22, *LPUSER_INFO_22; }USER_INFO_22, *PUSER_INFO_22, *LPUSER_INFO_22;
typedef struct _USER_INFO_23 { typedef struct _USER_INFO_23 {
LPWSTR usri23_name; LPWSTR usri23_name;
LPWSTR usri23_full_name; LPWSTR usri23_full_name;
LPWSTR usri23_comment; LPWSTR usri23_comment;
DWORD usri23_flags; DWORD usri23_flags;
PSID usri23_user_sid; PSID usri23_user_sid;
}USER_INFO_23, *PUSER_INFO_23, *LPUSER_INFO_23; }USER_INFO_23, *PUSER_INFO_23, *LPUSER_INFO_23;
typedef struct _USER_INFO_24 {
BOOL usri24_internet_identity;
DWORD usri24_flags;
LPWSTR usri24_internet_provider_name;
LPWSTR usri24_internet_principal_name;
PSID usri24_user_sid;
} USER_INFO_24, *PUSER_INFO_24, *LPUSER_INFO_24;
typedef struct _USER_INFO_1003 { typedef struct _USER_INFO_1003 {
LPWSTR usri1003_password; LPWSTR usri1003_password;
} USER_INFO_1003, *PUSER_INFO_1003, *LPUSER_INFO_1003; } USER_INFO_1003, *PUSER_INFO_1003, *LPUSER_INFO_1003;
typedef struct _USER_INFO_1005 { typedef struct _USER_INFO_1005 {
DWORD usri1005_priv; DWORD usri1005_priv;
} USER_INFO_1005, *PUSER_INFO_1005, *LPUSER_INFO_1005; } USER_INFO_1005, *PUSER_INFO_1005, *LPUSER_INFO_1005;
typedef struct _USER_INFO_1006 { typedef struct _USER_INFO_1006 {
LPWSTR usri1006_home_dir; LPWSTR usri1006_home_dir;
skipping to change at line 771 skipping to change at line 784
#ifndef _LMGROUP_ #ifndef _LMGROUP_
#define _LMGROUP_ #define _LMGROUP_
// //
// Function Prototypes // Function Prototypes
// //
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetGroupAdd ( NetGroupAdd (
IN LPCWSTR servername OPTIONAL, _In_opt_ LPCWSTR servername OPTIONAL,
IN DWORD level, _In_ DWORD level,
IN LPBYTE buf, _In_reads_(_Inexpressible_("varies")) LPBYTE buf,
OUT LPDWORD parm_err OPTIONAL _Out_opt_ LPDWORD parm_err OPTIONAL
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetGroupAddUser ( NetGroupAddUser (
IN LPCWSTR servername OPTIONAL, _In_opt_ LPCWSTR servername OPTIONAL,
IN LPCWSTR GroupName, _In_ LPCWSTR GroupName,
IN LPCWSTR username _In_ LPCWSTR username
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetGroupEnum ( NetGroupEnum (
IN LPCWSTR servername OPTIONAL, _In_opt_ LPCWSTR servername OPTIONAL,
IN DWORD level, _In_ DWORD level,
OUT LPBYTE *bufptr, _Outptr_result_buffer_(_Inexpressible_("varies")) LPBYTE *bufptr,
IN DWORD prefmaxlen, _In_ DWORD prefmaxlen,
OUT LPDWORD entriesread, _Out_ LPDWORD entriesread,
OUT LPDWORD totalentries, _Out_ LPDWORD totalentries,
IN OUT PDWORD_PTR resume_handle OPTIONAL _Inout_opt_ PDWORD_PTR resume_handle OPTIONAL
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetGroupGetInfo ( NetGroupGetInfo (
IN LPCWSTR servername OPTIONAL, _In_opt_ LPCWSTR servername OPTIONAL,
IN LPCWSTR groupname, _In_ LPCWSTR groupname,
IN DWORD level, _In_ DWORD level,
OUT LPBYTE *bufptr _Outptr_result_buffer_(_Inexpressible_("varies")) LPBYTE *bufptr
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetGroupSetInfo ( NetGroupSetInfo (
IN LPCWSTR servername OPTIONAL, _In_opt_ LPCWSTR servername OPTIONAL,
IN LPCWSTR groupname, _In_ LPCWSTR groupname,
IN DWORD level, _In_ DWORD level,
IN LPBYTE buf, _In_reads_(_Inexpressible_("varies")) LPBYTE buf,
OUT LPDWORD parm_err OPTIONAL _Out_opt_ LPDWORD parm_err OPTIONAL
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetGroupDel ( NetGroupDel (
IN LPCWSTR servername OPTIONAL, _In_opt_ LPCWSTR servername OPTIONAL,
IN LPCWSTR groupname _In_ LPCWSTR groupname
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetGroupDelUser ( NetGroupDelUser (
IN LPCWSTR servername OPTIONAL, _In_opt_ LPCWSTR servername OPTIONAL,
IN LPCWSTR GroupName, _In_ LPCWSTR GroupName,
IN LPCWSTR Username _In_ LPCWSTR Username
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetGroupGetUsers ( NetGroupGetUsers (
IN LPCWSTR servername OPTIONAL, _In_opt_ LPCWSTR servername OPTIONAL,
IN LPCWSTR groupname, _In_ LPCWSTR groupname,
IN DWORD level, _In_ DWORD level,
OUT LPBYTE *bufptr, _Outptr_result_buffer_(_Inexpressible_("varies")) LPBYTE *bufptr,
IN DWORD prefmaxlen, _In_ DWORD prefmaxlen,
OUT LPDWORD entriesread, _Out_ LPDWORD entriesread,
OUT LPDWORD totalentries, _Out_ LPDWORD totalentries,
IN OUT PDWORD_PTR ResumeHandle _Inout_opt_ PDWORD_PTR ResumeHandle
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetGroupSetUsers ( NetGroupSetUsers (
IN LPCWSTR servername OPTIONAL, _In_opt_ LPCWSTR servername OPTIONAL,
IN LPCWSTR groupname, _In_ LPCWSTR groupname,
IN DWORD level, _In_ DWORD level,
IN LPBYTE buf, _In_reads_(_Inexpressible_("varies")) LPBYTE buf,
IN DWORD totalentries _In_ DWORD totalentries
); );
// //
// Data Structures - Group // Data Structures - Group
// //
typedef struct _GROUP_INFO_0 { typedef struct _GROUP_INFO_0 {
LPWSTR grpi0_name; LPWSTR grpi0_name;
}GROUP_INFO_0, *PGROUP_INFO_0, *LPGROUP_INFO_0; }GROUP_INFO_0, *PGROUP_INFO_0, *LPGROUP_INFO_0;
skipping to change at line 946 skipping to change at line 959
#ifndef _LMLOCALGROUP_ #ifndef _LMLOCALGROUP_
#define _LMLOCALGROUP_ #define _LMLOCALGROUP_
// //
// Function Prototypes // Function Prototypes
// //
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetLocalGroupAdd ( NetLocalGroupAdd (
IN LPCWSTR servername OPTIONAL, _In_opt_ LPCWSTR servername OPTIONAL,
IN DWORD level, _In_ DWORD level,
IN LPBYTE buf, _In_reads_(_Inexpressible_("varies")) LPBYTE buf,
OUT LPDWORD parm_err OPTIONAL _Out_opt_ LPDWORD parm_err OPTIONAL
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetLocalGroupAddMember ( NetLocalGroupAddMember (
IN LPCWSTR servername OPTIONAL, IN LPCWSTR servername OPTIONAL,
IN LPCWSTR groupname, IN LPCWSTR groupname,
IN PSID membersid IN PSID membersid
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetLocalGroupEnum ( NetLocalGroupEnum (
IN LPCWSTR servername OPTIONAL, _In_opt_ LPCWSTR servername OPTIONAL,
IN DWORD level, _In_ DWORD level,
OUT LPBYTE *bufptr, _Outptr_result_buffer_(_Inexpressible_("varies")) LPBYTE *bufptr,
IN DWORD prefmaxlen, _In_ DWORD prefmaxlen,
OUT LPDWORD entriesread, _Out_ LPDWORD entriesread,
OUT LPDWORD totalentries, _Out_ LPDWORD totalentries,
IN OUT PDWORD_PTR resumehandle OPTIONAL _Inout_opt_ PDWORD_PTR resumehandle OPTIONAL
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetLocalGroupGetInfo ( NetLocalGroupGetInfo (
IN LPCWSTR servername OPTIONAL, _In_opt_ LPCWSTR servername OPTIONAL,
IN LPCWSTR groupname, _In_ LPCWSTR groupname,
IN DWORD level, _In_ DWORD level,
OUT LPBYTE *bufptr _Outptr_result_buffer_(_Inexpressible_("varies")) LPBYTE *bufptr
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetLocalGroupSetInfo ( NetLocalGroupSetInfo (
IN LPCWSTR servername OPTIONAL, _In_opt_ LPCWSTR servername OPTIONAL,
IN LPCWSTR groupname, _In_ LPCWSTR groupname,
IN DWORD level, _In_ DWORD level,
IN LPBYTE buf, _In_reads_(_Inexpressible_("varies")) LPBYTE buf,
OUT LPDWORD parm_err OPTIONAL _Out_opt_ LPDWORD parm_err OPTIONAL
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetLocalGroupDel ( NetLocalGroupDel (
IN LPCWSTR servername OPTIONAL, _In_opt_ LPCWSTR servername OPTIONAL,
IN LPCWSTR groupname _In_ LPCWSTR groupname
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetLocalGroupDelMember ( NetLocalGroupDelMember (
IN LPCWSTR servername OPTIONAL, _In_opt_ LPCWSTR servername OPTIONAL,
IN LPCWSTR groupname, _In_ LPCWSTR groupname,
IN PSID membersid _In_ PSID membersid
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetLocalGroupGetMembers ( NetLocalGroupGetMembers (
IN LPCWSTR servername OPTIONAL, _In_opt_ LPCWSTR servername OPTIONAL,
IN LPCWSTR localgroupname, _In_ LPCWSTR localgroupname,
IN DWORD level, _In_ DWORD level,
OUT LPBYTE *bufptr, _Outptr_result_buffer_(_Inexpressible_("varies")) LPBYTE *bufptr,
IN DWORD prefmaxlen, _In_ DWORD prefmaxlen,
OUT LPDWORD entriesread, _Out_ LPDWORD entriesread,
OUT LPDWORD totalentries, _Out_ LPDWORD totalentries,
IN OUT PDWORD_PTR resumehandle _Inout_opt_ PDWORD_PTR resumehandle
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetLocalGroupSetMembers ( NetLocalGroupSetMembers (
IN LPCWSTR servername OPTIONAL, _In_opt_ LPCWSTR servername OPTIONAL,
IN LPCWSTR groupname, _In_ LPCWSTR groupname,
IN DWORD level, _In_ DWORD level,
IN LPBYTE buf, _In_reads_(_Inexpressible_("varies")) LPBYTE buf,
IN DWORD totalentries _In_ DWORD totalentries
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetLocalGroupAddMembers ( NetLocalGroupAddMembers (
IN LPCWSTR servername OPTIONAL, _In_opt_ LPCWSTR servername OPTIONAL,
IN LPCWSTR groupname, _In_ LPCWSTR groupname,
IN DWORD level, _In_ DWORD level,
IN LPBYTE buf, _In_reads_(_Inexpressible_("varies")) LPBYTE buf,
IN DWORD totalentries _In_ DWORD totalentries
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetLocalGroupDelMembers ( NetLocalGroupDelMembers (
IN LPCWSTR servername OPTIONAL, _In_opt_ LPCWSTR servername OPTIONAL,
IN LPCWSTR groupname, _In_ LPCWSTR groupname,
IN DWORD level, _In_ DWORD level,
IN LPBYTE buf, _In_reads_(_Inexpressible_("varies")) LPBYTE buf,
IN DWORD totalentries _In_ DWORD totalentries
); );
// //
// Data Structures - LocalGroup // Data Structures - LocalGroup
// //
typedef struct _LOCALGROUP_INFO_0 { typedef struct _LOCALGROUP_INFO_0 {
LPWSTR lgrpi0_name; LPWSTR lgrpi0_name;
}LOCALGROUP_INFO_0, *PLOCALGROUP_INFO_0, *LPLOCALGROUP_INFO_0; }LOCALGROUP_INFO_0, *PLOCALGROUP_INFO_0, *LPLOCALGROUP_INFO_0;
skipping to change at line 1152 skipping to change at line 1165
#ifndef _LMACCESS_ #ifndef _LMACCESS_
#define _LMACCESS_ #define _LMACCESS_
// //
// Function Prototypes - Access // Function Prototypes - Access
// //
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetAccessAdd ( NetAccessAdd (
IN LPCWSTR servername OPTIONAL, _In_opt_ LPCWSTR servername OPTIONAL,
IN DWORD level, _In_ DWORD level,
IN LPBYTE buf, _In_reads_(_Inexpressible_("varies")) LPBYTE buf,
OUT LPDWORD parm_err OPTIONAL _Out_opt_ LPDWORD parm_err OPTIONAL
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetAccessEnum ( NetAccessEnum (
IN LPCWSTR servername OPTIONAL, _In_opt_ LPCWSTR servername OPTIONAL,
IN LPCWSTR BasePath, _In_ LPCWSTR BasePath,
IN DWORD Recursive, _In_ DWORD Recursive,
IN DWORD level, _In_ DWORD level,
OUT LPBYTE *bufptr, _Outptr_result_buffer_(_Inexpressible_("varies")) LPBYTE *bufptr,
IN DWORD prefmaxlen, _In_ DWORD prefmaxlen,
OUT LPDWORD entriesread, _Out_ LPDWORD entriesread,
OUT LPDWORD totalentries, _Out_ LPDWORD totalentries,
IN OUT LPDWORD resume_handle OPTIONAL _Inout_opt_ LPDWORD resume_handle OPTIONAL
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetAccessGetInfo ( NetAccessGetInfo (
IN LPCWSTR servername OPTIONAL, _In_opt_ LPCWSTR servername OPTIONAL,
IN LPCWSTR resource, _In_ LPCWSTR resource,
IN DWORD level, _In_ DWORD level,
OUT LPBYTE *bufptr _Outptr_result_buffer_(_Inexpressible_("varies")) LPBYTE *bufptr
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetAccessSetInfo ( NetAccessSetInfo (
IN LPCWSTR servername OPTIONAL, _In_opt_ LPCWSTR servername OPTIONAL,
IN LPCWSTR resource, _In_ LPCWSTR resource,
IN DWORD level, _In_ DWORD level,
IN LPBYTE buf, _In_reads_(_Inexpressible_("varies")) LPBYTE buf,
OUT LPDWORD parm_err OPTIONAL _Out_opt_ LPDWORD parm_err OPTIONAL
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetAccessDel ( NetAccessDel (
IN LPCWSTR servername OPTIONAL, IN LPCWSTR servername OPTIONAL,
IN LPCWSTR resource IN LPCWSTR resource
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetAccessGetUserPerms ( NetAccessGetUserPerms (
skipping to change at line 1470 skipping to change at line 1483
#ifndef _LMDOMAIN_ #ifndef _LMDOMAIN_
#define _LMDOMAIN_ #define _LMDOMAIN_
// //
// Function Prototypes - Domain // Function Prototypes - Domain
// //
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetGetDCName ( NetGetDCName (
__in_opt IN LPCWSTR servername OPTIONAL, _In_opt_ IN LPCWSTR servername OPTIONAL,
__in_opt IN LPCWSTR domainname OPTIONAL, _In_opt_ IN LPCWSTR domainname OPTIONAL,
OUT LPBYTE *bufptr _At_((LPWSTR *)bufptr, _Outptr_result_z_) LPBYTE *bufptr
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetGetAnyDCName ( NetGetAnyDCName (
__in_opt IN LPCWSTR servername OPTIONAL, _In_opt_ IN LPCWSTR servername OPTIONAL,
__in_opt IN LPCWSTR domainname OPTIONAL, _In_opt_ IN LPCWSTR domainname OPTIONAL,
OUT LPBYTE *bufptr _At_((LPWSTR *)bufptr, _Outptr_result_z_) LPBYTE *bufptr
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
I_NetLogonControl( I_NetLogonControl(
IN LPCWSTR ServerName OPTIONAL, _In_opt_ LPCWSTR ServerName OPTIONAL,
IN DWORD FunctionCode, _In_ DWORD FunctionCode,
IN DWORD QueryLevel, _In_ DWORD QueryLevel,
OUT LPBYTE *Buffer _Outptr_result_buffer_(_Inexpressible_("varies")) LPBYTE *Buffer
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
I_NetLogonControl2( I_NetLogonControl2(
IN LPCWSTR ServerName OPTIONAL, _In_opt_ LPCWSTR ServerName OPTIONAL,
IN DWORD FunctionCode, _In_ DWORD FunctionCode,
IN DWORD QueryLevel, _In_ DWORD QueryLevel,
IN LPBYTE Data, _In_reads_(_Inexpressible_("varies")) LPBYTE Data,
OUT LPBYTE *Buffer _Outptr_result_buffer_(_Inexpressible_("varies")) LPBYTE *Buffer
); );
#ifndef _NTDEF_ #ifndef _NTDEF_
typedef LONG NTSTATUS, *PNTSTATUS; typedef _Return_type_success_(return >= 0) LONG NTSTATUS, *PNTSTATUS;
#endif #endif
NTSTATUS NET_API_FUNCTION NTSTATUS NET_API_FUNCTION
NetEnumerateTrustedDomains ( NetEnumerateTrustedDomains (
__in_opt IN LPWSTR ServerName OPTIONAL, _In_opt_ IN LPWSTR ServerName OPTIONAL,
__deref_out OUT LPWSTR *DomainNames _Outptr_ OUT LPWSTR *DomainNames
); );
// //
// Special Values and Constants - Domain // Special Values and Constants - Domain
// //
// //
// FunctionCode values for I_NetLogonControl. // FunctionCode values for I_NetLogonControl.
// //
// NOTE : if you change the following NETLOGON_CONTROL_* values, // NOTE : if you change the following NETLOGON_CONTROL_* values,
skipping to change at line 1615 skipping to change at line 1628
DEFINE_GUID( //262e99c9-6160-4871-acec-4e61736b6f21 DEFINE_GUID( //262e99c9-6160-4871-acec-4e61736b6f21
ServiceAccountPasswordGUID, ServiceAccountPasswordGUID,
0x262E99C9, 0x262E99C9,
0x6160, 0x6160,
0x4871, 0x4871,
0xAC, 0xEC, 0x4E, 0x61, 0x73, 0x6B, 0x6F, 0x21 ); 0xAC, 0xEC, 0x4E, 0x61, 0x73, 0x6B, 0x6F, 0x21 );
NTSTATUS NTSTATUS
NetAddServiceAccount( NetAddServiceAccount(
__in_opt LPWSTR ServerName, _In_opt_ LPWSTR ServerName,
__in LPWSTR AccountName, _In_ LPWSTR AccountName,
__in LPWSTR Reserved, _In_ LPWSTR Password,
__in DWORD Flags); _In_ DWORD Flags);
// Do not create an account by this name // Do not create an account by this name
// Only link this account to my computer if it exists // Only link this account to my computer if it exists
#define SERVICE_ACCOUNT_FLAG_LINK_TO_HOST_ONLY 0x00000001L #define SERVICE_ACCOUNT_FLAG_LINK_TO_HOST_ONLY 0x00000001L
// Add the service account against an RODC
// The account must already exist and be linked
// The third parameter contains the preset password
#define SERVICE_ACCOUNT_FLAG_ADD_AGAINST_RODC 0x00000002L
// Do not delete the service account object from AD // Do not delete the service account object from AD
// Simply unlink it from this computer and delete the local secret // Simply unlink it from this computer and delete the local secret
#define SERVICE_ACCOUNT_FLAG_UNLINK_FROM_HOST_ONLY 0x00000001L #define SERVICE_ACCOUNT_FLAG_UNLINK_FROM_HOST_ONLY 0x00000001L
// Remove the account from password management on the local
// machine. The DC is unavailable or read-only so do not
// attempt to unlink or delete the account
#define SERVICE_ACCOUNT_FLAG_REMOVE_OFFLINE 0x00000002L
NTSTATUS NTSTATUS
NetRemoveServiceAccount( NetRemoveServiceAccount(
__in_opt LPWSTR ServerName, _In_opt_ LPWSTR ServerName,
__in LPWSTR AccountName, _In_ LPWSTR AccountName,
__in DWORD Flags); _In_ DWORD Flags);
NTSTATUS NTSTATUS
NetEnumerateServiceAccounts( NetEnumerateServiceAccounts(
__in_opt LPWSTR ServerName, _In_opt_ LPWSTR ServerName,
__in DWORD Flags, _In_ DWORD Flags,
__out DWORD* AccountsCount, _Out_ DWORD* AccountsCount,
__deref_out_ecount(*AccountsCount) PZPWSTR* Accounts); _Outptr_result_buffer_(*AccountsCount) PZPWSTR* Accounts);
NTSTATUS NTSTATUS
NetIsServiceAccount( NetIsServiceAccount(
__in_opt LPWSTR ServerName, _In_opt_ LPWSTR ServerName,
__in LPWSTR AccountName, _In_ LPWSTR AccountName,
__out BOOL *IsService); _Out_ BOOL *IsService);
NTSTATUS NTSTATUS
NetQueryServiceAccount( NetQueryServiceAccount(
__in_opt LPWSTR ServerName, _In_opt_ LPWSTR ServerName,
__in LPWSTR AccountName, _In_ LPWSTR AccountName,
__in DWORD InfoLevel, _In_ DWORD InfoLevel,
__deref_out PBYTE* Buffer); _Outptr_ PBYTE* Buffer);
// //
// Data Structures - Service // Data Structures - Service
// //
typedef enum _MSA_INFO_LEVEL { typedef enum _MSA_INFO_LEVEL {
MsaInfoLevel0 = 0, MsaInfoLevel0 = 0,
MsaInfoLevelMax MsaInfoLevelMax
} MSA_INFO_LEVEL, *PMSA_INFO_LEVEL; } MSA_INFO_LEVEL, *PMSA_INFO_LEVEL;
skipping to change at line 1680 skipping to change at line 1703
typedef struct _MSA_INFO_0 { typedef struct _MSA_INFO_0 {
MSA_INFO_STATE State; MSA_INFO_STATE State;
}MSA_INFO_0, *PMSA_INFO_0, *LPMSA_INFO_0; }MSA_INFO_0, *PMSA_INFO_0, *LPMSA_INFO_0;
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
#endif // _LMDOMAIN_ #endif // _LMDOMAIN_
#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */
#pragma endregion
 End of changes. 50 change blocks. 
201 lines changed or deleted 224 lines changed or added


 lmalert.h (6.1.7601.17887-Windows_7.0)   lmalert.h (6.3.9600.17415-Windows_8.1) 
skipping to change at line 33 skipping to change at line 33
ALERT.H includes ALERTMSG.H which defines the alert message numbers ALERT.H includes ALERTMSG.H which defines the alert message numbers
--*/ --*/
#ifndef _ALERT_ #ifndef _ALERT_
#define _ALERT_ #define _ALERT_
#if _MSC_VER > 1000 #if _MSC_VER > 1000
#pragma once #pragma once
#endif #endif
#include <winapifamily.h>
#pragma region Desktop Family
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
// //
// Function Prototypes // Function Prototypes
// //
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetAlertRaise( NetAlertRaise(
__in LPCWSTR AlertType, _In_ LPCWSTR AlertType,
__in LPVOID Buffer, _In_ LPVOID Buffer,
__in DWORD BufferSize _In_ DWORD BufferSize
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetAlertRaiseEx( NetAlertRaiseEx(
__in LPCWSTR AlertType, _In_ LPCWSTR AlertType,
__in LPVOID VariableInfo, _In_ LPVOID VariableInfo,
__in DWORD VariableInfoSize, _In_ DWORD VariableInfoSize,
__in LPCWSTR ServiceName _In_ LPCWSTR ServiceName
); );
// //
// Data Structures // Data Structures
// //
typedef struct _STD_ALERT { typedef struct _STD_ALERT {
DWORD alrt_timestamp; DWORD alrt_timestamp;
WCHAR alrt_eventname[EVLEN + 1]; WCHAR alrt_eventname[EVLEN + 1];
WCHAR alrt_servicename[SNLEN + 1]; WCHAR alrt_servicename[SNLEN + 1];
skipping to change at line 154 skipping to change at line 158
#define PRJOB_QS_QUEUED 0 #define PRJOB_QS_QUEUED 0
#define PRJOB_QS_PAUSED 1 #define PRJOB_QS_PAUSED 1
#define PRJOB_QS_SPOOLING 2 #define PRJOB_QS_SPOOLING 2
#define PRJOB_QS_PRINTING 3 #define PRJOB_QS_PRINTING 3
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */
#pragma endregion
#endif // _ALERT_ #endif // _ALERT_
 End of changes. 4 change blocks. 
7 lines changed or deleted 14 lines changed or added


 lmapibuf.h (6.1.7601.17887-Windows_7.0)   lmapibuf.h (6.3.9600.17415-Windows_8.1) 
skipping to change at line 30 skipping to change at line 30
on values defined in LMCONS.H. on values defined in LMCONS.H.
--*/ --*/
#ifndef _LMAPIBUF_ #ifndef _LMAPIBUF_
#define _LMAPIBUF_ #define _LMAPIBUF_
#if _MSC_VER > 1000 #if _MSC_VER > 1000
#pragma once #pragma once
#endif #endif
#include <winapifamily.h>
#pragma region Desktop Family
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
// //
// Function Prototypes // Function Prototypes
// //
_Success_( return == 0 )
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetApiBufferAllocate( NetApiBufferAllocate(
IN DWORD ByteCount, _In_ DWORD ByteCount,
OUT LPVOID * Buffer _Outptr_result_bytebuffer_(ByteCount) LPVOID * Buffer
); );
_Success_( return == 0 )
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetApiBufferFree ( NetApiBufferFree (
IN LPVOID Buffer _Frees_ptr_opt_ LPVOID Buffer
); );
_Success_( return == 0 )
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetApiBufferReallocate( NetApiBufferReallocate(
IN LPVOID OldBuffer OPTIONAL, _Frees_ptr_opt_ LPVOID OldBuffer,
IN DWORD NewByteCount, _In_ DWORD NewByteCount,
OUT LPVOID * NewBuffer _Outptr_result_bytebuffer_(NewByteCount) LPVOID * NewBuffer
); );
_Success_( return == 0 )
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetApiBufferSize( NetApiBufferSize(
IN LPVOID Buffer, _In_ LPVOID Buffer,
OUT LPDWORD ByteCount _Out_ LPDWORD ByteCount
); );
// //
// The following private function will go away eventually. // The following private function will go away eventually.
// Call NetApiBufferAllocate instead. // Call NetApiBufferAllocate instead.
// //
_Success_( return == 0 )
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetapipBufferAllocate ( // Internal Function NetapipBufferAllocate ( // Internal Function
IN DWORD ByteCount, _In_ DWORD ByteCount,
OUT LPVOID * Buffer _Outptr_result_bytebuffer_(ByteCount) LPVOID * Buffer
); );
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */
#pragma endregion
#endif // _LMAPIBUF_ #endif // _LMAPIBUF_
 End of changes. 12 change blocks. 
10 lines changed or deleted 22 lines changed or added


 lmaudit.h (6.1.7601.17887-Windows_7.0)   lmaudit.h (6.3.9600.17415-Windows_8.1) 
skipping to change at line 32 skipping to change at line 32
on values defined in NETCONS.H. on values defined in NETCONS.H.
--*/ --*/
#ifndef _LMAUDIT_ #ifndef _LMAUDIT_
#define _LMAUDIT_ #define _LMAUDIT_
#if _MSC_VER > 1000 #if _MSC_VER > 1000
#pragma once #pragma once
#endif #endif
#include <winapifamily.h>
#pragma region Desktop Family
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
#ifndef _LMHLOGDEFINED_ #ifndef _LMHLOGDEFINED_
#define _LMHLOGDEFINED_ #define _LMHLOGDEFINED_
typedef struct _HLOG { typedef struct _HLOG {
DWORD time; DWORD time;
skipping to change at line 57 skipping to change at line 61
#define LOGFLAGS_FORWARD 0 #define LOGFLAGS_FORWARD 0
#define LOGFLAGS_BACKWARD 0x1 #define LOGFLAGS_BACKWARD 0x1
#define LOGFLAGS_SEEK 0x2 #define LOGFLAGS_SEEK 0x2
#endif #endif
// //
// Function Prototypes - Audit // Function Prototypes - Audit
// //
#pragma warning(push)
// SAL Annotations not available for obsolete APIs
#pragma warning(disable:28740)
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetAuditClear ( NetAuditClear (
IN LPCWSTR server OPTIONAL, IN LPCWSTR server OPTIONAL,
IN LPCWSTR backupfile OPTIONAL, IN LPCWSTR backupfile OPTIONAL,
IN LPCWSTR service OPTIONAL // WARNING: buggy support before LM 2.0C!! IN LPCWSTR service OPTIONAL // WARNING: buggy support before LM 2.0C!!
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetAuditRead ( NetAuditRead (
IN LPCWSTR server OPTIONAL, IN LPCWSTR server OPTIONAL,
skipping to change at line 88 skipping to change at line 96
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetAuditWrite ( NetAuditWrite (
IN DWORD type, IN DWORD type,
IN LPBYTE buf, IN LPBYTE buf,
IN DWORD numbytes, IN DWORD numbytes,
IN LPCWSTR service OPTIONAL, IN LPCWSTR service OPTIONAL,
IN LPBYTE reserved OPTIONAL IN LPBYTE reserved OPTIONAL
); );
#pragma warning(pop)
// //
// Data Structures - Audit // Data Structures - Audit
// //
typedef struct _AUDIT_ENTRY { typedef struct _AUDIT_ENTRY {
DWORD ae_len; DWORD ae_len;
DWORD ae_reserved; DWORD ae_reserved;
DWORD ae_time; DWORD ae_time;
DWORD ae_type; DWORD ae_type;
DWORD ae_data_offset; /* Offset from beginning DWORD ae_data_offset; /* Offset from beginning
skipping to change at line 398 skipping to change at line 408
#define AA_A_WRITE 0x2000 #define AA_A_WRITE 0x2000
#define AA_A_CREATE 0x2000 #define AA_A_CREATE 0x2000
#define AA_A_DELETE 0x4000 #define AA_A_DELETE 0x4000
#define AA_A_ACL 0x8000 #define AA_A_ACL 0x8000
#define AA_A_ALL ( AA_F_OPEN | AA_F_WRITE | AA_F_DELETE | AA_F_ACL) #define AA_A_ALL ( AA_F_OPEN | AA_F_WRITE | AA_F_DELETE | AA_F_ACL)
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */
#pragma endregion
#endif // _LMAUDIT_ #endif // _LMAUDIT_
 End of changes. 4 change blocks. 
0 lines changed or deleted 13 lines changed or added


 lmconfig.h (6.1.7601.17887-Windows_7.0)   lmconfig.h (6.3.9600.17415-Windows_8.1) 
skipping to change at line 32 skipping to change at line 32
on values defined in NETCONS.H. on values defined in NETCONS.H.
--*/ --*/
#ifndef _LMCONFIG_ #ifndef _LMCONFIG_
#define _LMCONFIG_ #define _LMCONFIG_
#if _MSC_VER > 1000 #if _MSC_VER > 1000
#pragma once #pragma once
#endif #endif
#include <winapifamily.h>
#pragma region Desktop Family
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
#define REVISED_CONFIG_APIS #define REVISED_CONFIG_APIS
// //
// Function Prototypes - Config // Function Prototypes - Config
// //
#pragma warning(push)
// SAL Annotations not available for obsolete APIs
#pragma warning(disable:28740)
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetConfigGet ( NetConfigGet (
IN LPCWSTR server OPTIONAL, IN LPCWSTR server OPTIONAL,
IN LPCWSTR component, IN LPCWSTR component,
IN LPCWSTR parameter, IN LPCWSTR parameter,
#ifdef REVISED_CONFIG_APIS #ifdef REVISED_CONFIG_APIS
OUT LPBYTE *bufptr OUT LPBYTE *bufptr
#else #else
OUT LPBYTE *bufptr, OUT LPBYTE *bufptr,
OUT LPDWORD totalavailable OUT LPDWORD totalavailable
skipping to change at line 79 skipping to change at line 87
NetConfigSet ( NetConfigSet (
IN LPCWSTR server OPTIONAL, IN LPCWSTR server OPTIONAL,
IN LPCWSTR reserved1 OPTIONAL, IN LPCWSTR reserved1 OPTIONAL,
IN LPCWSTR component, IN LPCWSTR component,
IN DWORD level, IN DWORD level,
IN DWORD reserved2, IN DWORD reserved2,
IN LPBYTE buf, IN LPBYTE buf,
IN DWORD reserved3 IN DWORD reserved3
); );
#pragma warning(pop)
// //
// Data Structures - Config // Data Structures - Config
// //
typedef struct _CONFIG_INFO_0 { typedef struct _CONFIG_INFO_0 {
LPWSTR cfgi0_key; LPWSTR cfgi0_key;
LPWSTR cfgi0_data; LPWSTR cfgi0_data;
} CONFIG_INFO_0, *PCONFIG_INFO_0, *LPCONFIG_INFO_0; } CONFIG_INFO_0, *PCONFIG_INFO_0, *LPCONFIG_INFO_0;
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */
#pragma endregion
#endif // _LMCONFIG_ #endif // _LMCONFIG_
 End of changes. 4 change blocks. 
0 lines changed or deleted 13 lines changed or added


 lmdfs.h (6.1.7601.17887-Windows_7.0)   lmdfs.h (6.3.9600.17415-Windows_8.1) 
skipping to change at line 30 skipping to change at line 30
You must include <windef.h> and <lmcons.h> before this file. You must include <windef.h> and <lmcons.h> before this file.
--*/ --*/
#ifndef _LMDFS_ #ifndef _LMDFS_
#define _LMDFS_ #define _LMDFS_
#if _MSC_VER > 1000 #if _MSC_VER > 1000
#pragma once #pragma once
#endif #endif
#include <winapifamily.h>
#pragma region Desktop Family
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
// //
// DFS Volume state // DFS Volume state
// //
#define DFS_VOLUME_STATES 0xF #define DFS_VOLUME_STATES 0xF
skipping to change at line 631 skipping to change at line 635
DWORD Flags; DWORD Flags;
LPWSTR DfsName; // Dfs name LPWSTR DfsName; // Dfs name
} DFS_INFO_300, *PDFS_INFO_300, *LPDFS_INFO_300; } DFS_INFO_300, *PDFS_INFO_300, *LPDFS_INFO_300;
// //
// Add a new volume or additional storage for an existing volume at // Add a new volume or additional storage for an existing volume at
// DfsEntryPath. // DfsEntryPath.
// //
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetDfsAdd( NetDfsAdd(
__in LPWSTR DfsEntryPath, // DFS entry path for this added volume or s _In_ LPWSTR DfsEntryPath, // DFS entry path for this added volume or s
torage torage
__in LPWSTR ServerName, // Name of server hosting the storage _In_ LPWSTR ServerName, // Name of server hosting the storage
__in LPWSTR ShareName, // Existing share name for the storage _In_ LPWSTR ShareName, // Existing share name for the storage
__in_opt LPWSTR Comment, // Optional comment for this volume or stora _In_opt_ LPWSTR Comment, // Optional comment for this volume or stora
ge ge
__in DWORD Flags // See below. Zero for no flags. _In_ DWORD Flags // See below. Zero for no flags.
); );
// //
// Flags: // Flags:
// //
#define DFS_ADD_VOLUME 1 // Add a new volume to the DFS if not alread y there #define DFS_ADD_VOLUME 1 // Add a new volume to the DFS if not alread y there
#define DFS_RESTORE_VOLUME 2 // Volume/Replica is being restored - do not verify share etc. #define DFS_RESTORE_VOLUME 2 // Volume/Replica is being restored - do not verify share etc.
// //
// Setup/teardown API's for standard and FtDfs roots. // Setup/teardown API's for standard and FtDfs roots.
// //
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetDfsAddStdRoot( NetDfsAddStdRoot(
__in LPWSTR ServerName, // Server to remote to _In_ LPWSTR ServerName, // Server to remote to
__in LPWSTR RootShare, // Share to make Dfs root _In_ LPWSTR RootShare, // Share to make Dfs root
__in_opt LPWSTR Comment, // Comment _In_opt_ LPWSTR Comment, // Comment
__in DWORD Flags // Flags for operation. Zero for no flags. _In_ DWORD Flags // Flags for operation. Zero for no flags.
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetDfsRemoveStdRoot( NetDfsRemoveStdRoot(
__in LPWSTR ServerName, // Server to remote to _In_ LPWSTR ServerName, // Server to remote to
__in LPWSTR RootShare, // Share that host Dfs root _In_ LPWSTR RootShare, // Share that host Dfs root
__reserved DWORD Flags // Flags for operation. Zero for no flags. _Reserved_ DWORD Flags // Flags for operation. Zero for no flags.
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetDfsAddFtRoot( NetDfsAddFtRoot(
__in LPWSTR ServerName, // Server to remote to _In_ LPWSTR ServerName, // Server to remote to
__in LPWSTR RootShare, // Share to make Dfs root _In_ LPWSTR RootShare, // Share to make Dfs root
__in LPWSTR FtDfsName, // Name of FtDfs to create/join _In_ LPWSTR FtDfsName, // Name of FtDfs to create/join
__in_opt LPWSTR Comment, // Comment _In_opt_ LPWSTR Comment, // Comment
__in DWORD Flags // Flags for operation. Zero for no fla _In_ DWORD Flags // Flags for operation. Zero for no fla
gs. gs.
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetDfsRemoveFtRoot( NetDfsRemoveFtRoot(
__in LPWSTR ServerName, // Server to remote to _In_ LPWSTR ServerName, // Server to remote to
__in LPWSTR RootShare, // Share that host Dfs root _In_ LPWSTR RootShare, // Share that host Dfs root
__in LPWSTR FtDfsName, // Name of FtDfs to remove or unjoin fro _In_ LPWSTR FtDfsName, // Name of FtDfs to remove or unjoin fro
m. m.
__reserved DWORD Flags // Flags for operation. Zero for no fla _Reserved_ DWORD Flags // Flags for operation. Zero for no fla
gs. gs.
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetDfsRemoveFtRootForced( NetDfsRemoveFtRootForced(
__in LPWSTR DomainName, // Name of domain the server is in _In_ LPWSTR DomainName, // Name of domain the server is in
__in LPWSTR ServerName, // Server to remote to _In_ LPWSTR ServerName, // Server to remote to
__in LPWSTR RootShare, // Share that host Dfs root _In_ LPWSTR RootShare, // Share that host Dfs root
__in LPWSTR FtDfsName, // Name of FtDfs to remove or unjoin fro _In_ LPWSTR FtDfsName, // Name of FtDfs to remove or unjoin fro
m. m.
__reserved DWORD Flags // Flags for operation. Zero for no fla _Reserved_ DWORD Flags // Flags for operation. Zero for no fla
gs. gs.
);
//
// Call to reinitialize the dfsmanager on a machine
//
NET_API_STATUS NET_API_FUNCTION
NetDfsManagerInitialize(
__in LPWSTR ServerName, // Server to remote to
__reserved DWORD Flags // Flags for operation. Zero for no fla
gs.
);
NET_API_STATUS NET_API_FUNCTION
NetDfsAddStdRootForced(
__in LPWSTR ServerName, // Server to remote to
__in LPWSTR RootShare, // Share to make Dfs root
__in_opt LPWSTR Comment, // Comment
__in LPWSTR Store // Drive:\dir backing the share
);
NET_API_STATUS NET_API_FUNCTION
NetDfsGetDcAddress(
__in LPWSTR ServerName, // Server to remote to
__deref_out LPWSTR *DcIpAddress, // The IP address of the DC to use
__out PBOOLEAN IsRoot, // TRUE if server is a Dfs root, FALSE o
therwise
__out PULONG Timeout // Time, in sec, that we stay with this
DC
); );
// //
// Flags for NetDfsSetDcAddress() // Flags for NetDfsSetDcAddress()
// //
#define NET_DFS_SETDC_FLAGS 0x00000000 #define NET_DFS_SETDC_FLAGS 0x00000000
#define NET_DFS_SETDC_TIMEOUT 0x00000001 #define NET_DFS_SETDC_TIMEOUT 0x00000001
#define NET_DFS_SETDC_INITPKT 0x00000002 #define NET_DFS_SETDC_INITPKT 0x00000002
skipping to change at line 757 skipping to change at line 735
#endif #endif
} DFS_SITELIST_INFO, *PDFS_SITELIST_INFO, *LPDFS_SITELIST_INFO; } DFS_SITELIST_INFO, *PDFS_SITELIST_INFO, *LPDFS_SITELIST_INFO;
// //
// Remove a volume or additional storage for volume from the Dfs at // Remove a volume or additional storage for volume from the Dfs at
// DfsEntryPath. When applied to the last storage in a volume, removes // DfsEntryPath. When applied to the last storage in a volume, removes
// the volume from the DFS. // the volume from the DFS.
// //
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetDfsRemove( NetDfsRemove(
__in LPWSTR DfsEntryPath, // DFS entry path for this added volume _In_ LPWSTR DfsEntryPath, // DFS entry path for this added volume
or storage or storage
__in_opt LPWSTR ServerName, // Name of server hosting the storage _In_opt_ LPWSTR ServerName, // Name of server hosting the storage
__in_opt LPWSTR ShareName // Name of share hosting the storage _In_opt_ LPWSTR ShareName // Name of share hosting the storage
); );
// //
// Get information about all of the volumes in the Dfs. DfsName is // Get information about all of the volumes in the Dfs. DfsName is
// the "server" part of the UNC name used to refer to this particular Dfs. // the "server" part of the UNC name used to refer to this particular Dfs.
// //
// Valid levels are 1-5, 200, 300 // Valid levels are 1-5, 200, 300
// //
_When_(Level == 1, _At_(Buffer, _Outptr_result_bytebuffer_(*EntriesRead * sizeof
(DFS_INFO_1))))
_When_(Level == 2, _At_(Buffer, _Outptr_result_bytebuffer_(*EntriesRead * sizeof
(DFS_INFO_2))))
_When_(Level == 3, _At_(Buffer, _Outptr_result_bytebuffer_(*EntriesRead * sizeof
(DFS_INFO_3))))
_When_(Level == 4, _At_(Buffer, _Outptr_result_bytebuffer_(*EntriesRead * sizeof
(DFS_INFO_4))))
_When_(Level == 5, _At_(Buffer, _Outptr_result_bytebuffer_(*EntriesRead * sizeof
(DFS_INFO_5))))
_When_(Level == 6, _At_(Buffer, _Outptr_result_bytebuffer_(*EntriesRead * sizeof
(DFS_INFO_6))))
_When_(Level == 8, _At_(Buffer, _Outptr_result_bytebuffer_(*EntriesRead * sizeof
(DFS_INFO_8))))
_When_(Level == 9, _At_(Buffer, _Outptr_result_bytebuffer_(*EntriesRead * sizeof
(DFS_INFO_9))))
_When_(Level == 200, _At_(Buffer, _Outptr_result_bytebuffer_(*EntriesRead * size
of(DFS_INFO_200))))
_When_(Level == 300, _At_(Buffer, _Outptr_result_bytebuffer_(*EntriesRead * size
of(DFS_INFO_300))))
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetDfsEnum( NetDfsEnum(
__in LPWSTR DfsName, // Name of the Dfs for enumeration _In_ LPWSTR DfsName, // Name of the Dfs for enumeration
__in DWORD Level, // Level of information requested _In_ DWORD Level, // Level of information requested
__in DWORD PrefMaxLen, // Advisory, but -1 means "get it all" _In_ DWORD PrefMaxLen, // Advisory, but -1 means "get it all"
__out LPBYTE *Buffer, // API allocates and returns buffer with _Out_ LPBYTE *Buffer, // API allocates and returns buffer with
requested info requested info
__out LPDWORD EntriesRead, // Number of entries returned _Out_ LPDWORD EntriesRead, // Number of entries returned
__inout LPDWORD ResumeHandle // Must be 0 on first call, reused on su _Inout_ LPDWORD ResumeHandle // Must be 0 on first call, reused on su
bsequent calls bsequent calls
); );
// //
// Get information about the volume or storage. // Get information about the volume or storage.
// If ServerName and ShareName are specified, the information returned // If ServerName and ShareName are specified, the information returned
// is specific to that server and share, else the information is specific // is specific to that server and share, else the information is specific
// to the volume as a whole. // to the volume as a whole.
// //
// Valid levels are 1-5, 100 // Valid levels are 1-5, 100
// //
_When_(Level == 1, _At_(Buffer, _Outptr_result_bytebuffer_(sizeof(DFS_INFO_1))))
_When_(Level == 2, _At_(Buffer, _Outptr_result_bytebuffer_(sizeof(DFS_INFO_2))))
_When_(Level == 3, _At_(Buffer, _Outptr_result_bytebuffer_(sizeof(DFS_INFO_3))))
_When_(Level == 4, _At_(Buffer, _Outptr_result_bytebuffer_(sizeof(DFS_INFO_4))))
_When_(Level == 5, _At_(Buffer, _Outptr_result_bytebuffer_(sizeof(DFS_INFO_5))))
_When_(Level == 6, _At_(Buffer, _Outptr_result_bytebuffer_(sizeof(DFS_INFO_6))))
_When_(Level == 7, _At_(Buffer, _Outptr_result_bytebuffer_(sizeof(DFS_INFO_7))))
_When_(Level == 8, _At_(Buffer, _Outptr_result_bytebuffer_(sizeof(DFS_INFO_8))))
_When_(Level == 9, _At_(Buffer, _Outptr_result_bytebuffer_(sizeof(DFS_INFO_9))))
_When_(Level == 50, _At_(Buffer, _Outptr_result_bytebuffer_(sizeof(DFS_INFO_50))
))
_When_(Level == 100, _At_(Buffer, _Outptr_result_bytebuffer_(sizeof(DFS_INFO_100
))))
_When_(Level == 150, _At_(Buffer, _Outptr_result_bytebuffer_(sizeof(DFS_INFO_150
))))
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetDfsGetInfo( NetDfsGetInfo(
__in LPWSTR DfsEntryPath, // DFS entry path for the volume _In_ LPWSTR DfsEntryPath, // DFS entry path for the volume
__in_opt LPWSTR ServerName, // Name of server hosting a storage _In_opt_ LPWSTR ServerName, // Name of server hosting a storage
__in_opt LPWSTR ShareName, // Name of share on server serving the v _In_opt_ LPWSTR ShareName, // Name of share on server serving the v
olume olume
__in DWORD Level, // Level of information requested _In_ DWORD Level, // Level of information requested
__out LPBYTE *Buffer // API allocates and returns buffer with _Out_ LPBYTE *Buffer // API allocates and returns buffer with
requested info requested info
); );
// //
// Set info about the volume or storage. // Set info about the volume or storage.
// If ServerName and ShareName are specified, the information set is // If ServerName and ShareName are specified, the information set is
// specific to that server and share, else the information is specific // specific to that server and share, else the information is specific
// to the volume as a whole. // to the volume as a whole.
// //
// Valid levels are 100, 101 and 102 // Valid levels are 100, 101 and 102
// //
_When_(Level == 101, _At_(Buffer, _In_reads_bytes_(sizeof(DFS_INFO_101))))
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetDfsSetInfo( NetDfsSetInfo(
__in LPWSTR DfsEntryPath, // DFS entry path for the volume _In_ LPWSTR DfsEntryPath, // DFS entry path for the volume
__in_opt LPWSTR ServerName, // Name of server hosting a storage _In_opt_ LPWSTR ServerName, // Name of server hosting a storage
__in_opt LPWSTR ShareName, // Name of share hosting a storage _In_opt_ LPWSTR ShareName, // Name of share hosting a storage
__in DWORD Level, // Level of information to be set _In_ DWORD Level, // Level of information to be set
__in LPBYTE Buffer // Buffer holding information _In_ LPBYTE Buffer // Buffer holding information
); );
// //
// Get client's cached information about the volume or storage. // Get client's cached information about the volume or storage.
// If ServerName and ShareName are specified, the information returned // If ServerName and ShareName are specified, the information returned
// is specific to that server and share, else the information is specific // is specific to that server and share, else the information is specific
// to the volume as a whole. // to the volume as a whole.
// //
// Valid levels are 1-4 // Valid levels are 1-4
// //
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetDfsGetClientInfo( NetDfsGetClientInfo(
__in LPWSTR DfsEntryPath, // DFS entry path for the volume _In_ LPWSTR DfsEntryPath, // DFS entry path for the volume
__in_opt LPWSTR ServerName, // Name of server hosting a storage _In_opt_ LPWSTR ServerName, // Name of server hosting a storage
__in_opt LPWSTR ShareName, // Name of share on server serving the v _In_opt_ LPWSTR ShareName, // Name of share on server serving the v
olume olume
__in DWORD Level, // Level of information requested _In_ DWORD Level, // Level of information requested
__out LPBYTE *Buffer // API allocates and returns buffer with _Out_ LPBYTE *Buffer // API allocates and returns buffer with
requested info requested info
); );
// //
// Set client's cached info about the volume or storage. // Set client's cached info about the volume or storage.
// If ServerName and ShareName are specified, the information set is // If ServerName and ShareName are specified, the information set is
// specific to that server and share, else the information is specific // specific to that server and share, else the information is specific
// to the volume as a whole. // to the volume as a whole.
// //
// Valid levels are 101 and 102. // Valid levels are 101 and 102.
// //
_When_(Level == 101, _At_(Buffer, _In_reads_bytes_(sizeof(DFS_INFO_101))))
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetDfsSetClientInfo( NetDfsSetClientInfo(
__in LPWSTR DfsEntryPath, // DFS entry path for the volume _In_ LPWSTR DfsEntryPath, // DFS entry path for the volume
__in_opt LPWSTR ServerName, // Name of server hosting a storage _In_opt_ LPWSTR ServerName, // Name of server hosting a storage
__in_opt LPWSTR ShareName, // Name of share hosting a storage _In_opt_ LPWSTR ShareName, // Name of share hosting a storage
__in DWORD Level, // Level of information to be set _In_ DWORD Level, // Level of information to be set
__in LPBYTE Buffer // Buffer holding information _In_ LPBYTE Buffer // Buffer holding information
); );
// //
// Move a DFS volume and all subordinate volumes from one place in the // Move a DFS volume and all subordinate volumes from one place in the
// DFS to another place in the DFS. // DFS to another place in the DFS.
// //
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetDfsMove( NetDfsMove(
__in LPWSTR OldDfsEntryPath, // Current DFS entry path for this volum _In_ LPWSTR OldDfsEntryPath, // Current DFS entry path for this volum
e e
__in LPWSTR NewDfsEntryPath, // New DFS entry path for this volume _In_ LPWSTR NewDfsEntryPath, // New DFS entry path for this volume
__in ULONG Flags _In_ ULONG Flags
); );
// //
// Flags accepted by NetDfsMove // Flags accepted by NetDfsMove
// //
// //
// This indicates that if a colliding link is found it should be replaced // This indicates that if a colliding link is found it should be replaced
// //
#define DFS_MOVE_FLAG_REPLACE_IF_EXISTS 0x00000001 #define DFS_MOVE_FLAG_REPLACE_IF_EXISTS 0x00000001
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetDfsRename( NetDfsRename(
__in LPWSTR Path, // Current Win32 path in a Dfs _In_ LPWSTR Path, // Current Win32 path in a Dfs
__in LPWSTR NewPath // New Win32 path in the same Dfs _In_ LPWSTR NewPath // New Win32 path in the same Dfs
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetDfsAddRootTarget( NetDfsAddRootTarget(
__in LPWSTR pDfsPath, _In_ LPWSTR pDfsPath,
__in_opt LPWSTR pTargetPath, _In_opt_ LPWSTR pTargetPath,
__in ULONG MajorVersion, _In_ ULONG MajorVersion,
__in_opt LPWSTR pComment, _In_opt_ LPWSTR pComment,
__in ULONG Flags _In_ ULONG Flags
); );
// //
// Reuse existing definition used by NetrDfsRemoveFtRoot(). // Reuse existing definition used by NetrDfsRemoveFtRoot().
// //
#ifndef DFS_FORCE_REMOVE #ifndef DFS_FORCE_REMOVE
#define DFS_FORCE_REMOVE 0x80000000 #define DFS_FORCE_REMOVE 0x80000000
#endif #endif
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetDfsRemoveRootTarget( NetDfsRemoveRootTarget(
__in LPWSTR pDfsPath, _In_ LPWSTR pDfsPath,
__in_opt LPWSTR pTargetPath, _In_opt_ LPWSTR pTargetPath,
__in ULONG Flags _In_ ULONG Flags
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetDfsGetSecurity( NetDfsGetSecurity(
__in LPWSTR DfsEntry _In_ LPWSTR DfsEntry
Path, Path,
__in SECURITY_INFORMATION Security _In_ SECURITY_INFORMATION Security
Information, Information,
__deref_out_bcount(*lpcbSecurityDescriptor) PSECURITY_DESCRIPTOR *ppSecur _Outptr_result_bytebuffer_(*lpcbSecurityDescriptor) PSECURITY_DESCRIPTOR
ityDescriptor, *ppSecurityDescriptor,
__out LPDWORD lpcbSecu _Out_ LPDWORD lpcbSecu
rityDescriptor rityDescriptor
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetDfsSetSecurity( NetDfsSetSecurity(
__in LPWSTR DfsEntryPath, _In_ LPWSTR DfsEntryPath,
__in SECURITY_INFORMATION SecurityInformation, _In_ SECURITY_INFORMATION SecurityInformation,
__in PSECURITY_DESCRIPTOR pSecurityDescriptor _In_ PSECURITY_DESCRIPTOR pSecurityDescriptor
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetDfsGetStdContainerSecurity( NetDfsGetStdContainerSecurity(
__in LPWSTR MachineN _In_ LPWSTR MachineN
ame, ame,
__in SECURITY_INFORMATION Security _In_ SECURITY_INFORMATION Security
Information, Information,
__deref_out_bcount(*lpcbSecurityDescriptor) PSECURITY_DESCRIPTOR *ppSecur _Outptr_result_bytebuffer_(*lpcbSecurityDescriptor) PSECURITY_DESCRIPTOR
ityDescriptor, *ppSecurityDescriptor,
__out LPDWORD lpcbSecu _Out_ LPDWORD lpcbSecu
rityDescriptor rityDescriptor
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetDfsSetStdContainerSecurity( NetDfsSetStdContainerSecurity(
__in LPWSTR MachineName, _In_ LPWSTR MachineName,
__in SECURITY_INFORMATION SecurityInformation, _In_ SECURITY_INFORMATION SecurityInformation,
__in PSECURITY_DESCRIPTOR pSecurityDescriptor _In_ PSECURITY_DESCRIPTOR pSecurityDescriptor
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetDfsGetFtContainerSecurity( NetDfsGetFtContainerSecurity(
__in LPWSTR DomainNa _In_ LPWSTR DomainNa
me, me,
__in SECURITY_INFORMATION Security _In_ SECURITY_INFORMATION Security
Information, Information,
__deref_out_bcount(*lpcbSecurityDescriptor) PSECURITY_DESCRIPTOR *ppSecur _Outptr_result_bytebuffer_(*lpcbSecurityDescriptor) PSECURITY_DESCRIPTOR
ityDescriptor, *ppSecurityDescriptor,
__out LPDWORD lpcbSecu _Out_ LPDWORD lpcbSecu
rityDescriptor rityDescriptor
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetDfsSetFtContainerSecurity( NetDfsSetFtContainerSecurity(
__in LPWSTR DomainName, _In_ LPWSTR DomainName,
__in SECURITY_INFORMATION SecurityInformation, _In_ SECURITY_INFORMATION SecurityInformation,
__in PSECURITY_DESCRIPTOR pSecurityDescriptor _In_ PSECURITY_DESCRIPTOR pSecurityDescriptor
); );
// //
// Origin of DFS namespace version information. // Origin of DFS namespace version information.
// //
typedef enum { typedef enum {
DFS_NAMESPACE_VERSION_ORIGIN_COMBINED = 0, // Max version {server, AD DS d omain} DFS_NAMESPACE_VERSION_ORIGIN_COMBINED = 0, // Max version {server, AD DS d omain}
// can support. // can support.
DFS_NAMESPACE_VERSION_ORIGIN_SERVER, // Max version server can suppo rt. DFS_NAMESPACE_VERSION_ORIGIN_SERVER, // Max version server can suppo rt.
skipping to change at line 989 skipping to change at line 993
// Valid only if StandaloneDfsMajorVersion != 0. // Valid only if StandaloneDfsMajorVersion != 0.
// //
ULONG StandaloneDfsMajorVersion; ULONG StandaloneDfsMajorVersion;
ULONG StandaloneDfsMinorVersion; ULONG StandaloneDfsMinorVersion;
ULONGLONG StandaloneDfsCapabilities; ULONGLONG StandaloneDfsCapabilities;
} DFS_SUPPORTED_NAMESPACE_VERSION_INFO, *PDFS_SUPPORTED_NAMESPACE_VERSION_INFO; } DFS_SUPPORTED_NAMESPACE_VERSION_INFO, *PDFS_SUPPORTED_NAMESPACE_VERSION_INFO;
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetDfsGetSupportedNamespaceVersion( NetDfsGetSupportedNamespaceVersion(
__in DFS_NAMESPACE_VERSION_ORIGIN Origin, _In_ DFS_NAMESPACE_VERSION_ORIGIN Origin,
__in_opt PWSTR pName, _In_opt_ PWSTR pName,
__deref_out PDFS_SUPPORTED_NAMESPACE_VERSION_INFO *ppVersionInfo _Outptr_ PDFS_SUPPORTED_NAMESPACE_VERSION_INFO *ppVersionInfo
); );
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */
#pragma endregion
#endif // _LMDFS_ #endif // _LMDFS_
 End of changes. 29 change blocks. 
148 lines changed or deleted 165 lines changed or added


 lmerrlog.h (6.1.7601.17887-Windows_7.0)   lmerrlog.h (6.3.9600.17415-Windows_8.1) 
skipping to change at line 32 skipping to change at line 32
on values defined in NETCONS.H. on values defined in NETCONS.H.
--*/ --*/
#ifndef _LMERRLOG_ #ifndef _LMERRLOG_
#define _LMERRLOG_ #define _LMERRLOG_
#if _MSC_VER > 1000 #if _MSC_VER > 1000
#pragma once #pragma once
#endif #endif
#include <winapifamily.h>
#pragma region Desktop Family
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
// //
// Data Structures - Config // Data Structures - Config
// //
typedef struct _ERROR_LOG { typedef struct _ERROR_LOG {
skipping to change at line 77 skipping to change at line 81
#define LOGFLAGS_SEEK 0x2 #define LOGFLAGS_SEEK 0x2
#endif #endif
// //
// Function Prototypes - ErrorLog // Function Prototypes - ErrorLog
// //
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetErrorLogClear ( NetErrorLogClear (
__in_opt LPCWSTR UncServerName, _In_opt_ LPCWSTR UncServerName,
__in_opt LPCWSTR BackupFile, _In_opt_ LPCWSTR BackupFile,
__in_opt LPBYTE Reserved _In_opt_ LPBYTE Reserved
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetErrorLogRead ( NetErrorLogRead (
__in_opt LPCWSTR UncServerName, _In_opt_ LPCWSTR UncServerName,
__in_opt LPWSTR Reserved1, _In_opt_ LPWSTR Reserved1,
__in LPHLOG ErrorLogHandle, _In_ LPHLOG ErrorLogHandle,
__in DWORD Offset, _In_ DWORD Offset,
__in_opt LPDWORD Reserved2, _In_opt_ LPDWORD Reserved2,
__in DWORD Reserved3, _In_ DWORD Reserved3,
__in DWORD OffsetFlag, _In_ DWORD OffsetFlag,
__deref_out LPBYTE *BufPtr, _Outptr_ LPBYTE *BufPtr,
__in DWORD PrefMaxSize, _In_ DWORD PrefMaxSize,
__out LPDWORD BytesRead, _Out_ LPDWORD BytesRead,
__out LPDWORD TotalAvailable _Out_ LPDWORD TotalAvailable
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetErrorLogWrite ( NetErrorLogWrite (
__in_opt LPBYTE Reserved1, _In_opt_ LPBYTE Reserved1,
__in DWORD Code, _In_ DWORD Code,
__in LPCWSTR Component, _In_ LPCWSTR Component,
__in LPBYTE Buffer, _In_ LPBYTE Buffer,
__in DWORD NumBytes, _In_ DWORD NumBytes,
__in LPBYTE MsgBuf, _In_ LPBYTE MsgBuf,
__in DWORD StrCount, _In_ DWORD StrCount,
__in_opt LPBYTE Reserved2 _In_opt_ LPBYTE Reserved2
); );
// //
// Special Values and Constants // Special Values and Constants
// //
// //
// Generic (could be used by more than one service) // Generic (could be used by more than one service)
// error log messages from 0 to 25 // error log messages from 0 to 25
// //
skipping to change at line 1795 skipping to change at line 1799
/* /*
* The remoting of the dynamic update request for the local domain controll er's DNS records * The remoting of the dynamic update request for the local domain controll er's DNS records
* through a secure session has failed with error '%1'. * through a secure session has failed with error '%1'.
* *
* %n%nFor other computers and member servers to locate this domain control ler, the appropriate * %n%nFor other computers and member servers to locate this domain control ler, the appropriate
* records must be registered in DNS. On this domain controller, look for e vents related to * records must be registered in DNS. On this domain controller, look for e vents related to
* failure to set up a secure session to determine why the request is faili ng. If the problem * failure to set up a secure session to determine why the request is faili ng. If the problem
* persists, please contact your domain administrator. * persists, please contact your domain administrator.
*/ */
#define NELOG_NetlogonUserValidationReqInitialTimeOut (ERRLOG2_BASE + 116)
/*
* Netlogon has failed an authentication request of account %1 in domain %2
. The request timed out before it
* could be sent to domain controller %3 in domain %4. This is the first fa
ilure. If the problem continues,
* consolidated events will be logged about every %5 minutes.
* Please see http://support.microsoft.com/kb/2654097 for more information.
*/
#define NELOG_NetlogonUserValidationReqRecurringTimeOut (ERRLOG2_BASE + 117)
/*
* Netlogon has failed an additional %1 authentication requests in the last
%2 minutes.
* The requests timed out before they could be sent to domain controller %3
in domain %4.
* Please see http://support.microsoft.com/kb/2654097 for more information.
*/
#define NELOG_NetlogonUserValidationReqWaitInitialWarning (ERRLOG2_BASE + 118)
/*
* Netlogon took more than %1 seconds for an authentication request of acco
unt %2 in domain %3, through
* domain controller %4 in domain %5. This is the first warning. If the pro
blem persists, a recurring event will be logged
* every %6 minutes.
* Please see http://support.microsoft.com/kb/2654097 for more information
on this error.
*/
#define NELOG_NetlogonUserValidationReqWaitRecurringWarning (ERRLOG2_BASE + 119
)
/*
* Netlogon took more than %1 seconds for %2 authentication requests throug
h domain controller %3 in domain %4 in the last %5 minutes.
* Please see http://support.microsoft.com/kb/2654097 for more information.
*/
#define NELOG_NetlogonFailedToAddAuthzRpcInterface (ERRLOG2_BASE + 120)
/*
* The Netlogon service could not add the AuthZ RPC interface. The
* service was terminated. The following error occurred: '%1'
*/
#define NELOG_NetLogonFailedToInitializeAuthzRm (ERRLOG2_BASE + 121)
/*
* The Netlogon service failed to initialize the AuthZ resource manager.
* The service was terminated. The following error occurred: '%1'.
*/
#define NELOG_NetLogonFailedToInitializeRPCSD (ERRLOG2_BASE + 122)
/*
* The Netlogon service failed to initialize the security descriptor
* for the Netlogon RPC interface. The service was terminated. The
* following error occurred: '%1'.
*/
#define NELOG_NetlogonMachinePasswdSetSucceeded (ERRLOG2_BASE + 123)
/*
* The system successfully changed its password on the domain controller %1.
*
* This event is logged when the password for the computer account is
* changed by the system. It is logged on the computer that changed the
* password.
*/
#define NELOG_NetlogonMsaPasswdSetSucceeded (ERRLOG2_BASE + 124)
/*
* The system successfully changed the password for managed service account
%1
* on the domain controller %2.
*
* This event is logged when the password for a standalone managed service
* account is changed by the system. It is logged on the computer that
* changed the password.
*/
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */
#pragma endregion
#endif // _LMERRLOG_ #endif // _LMERRLOG_
 End of changes. 6 change blocks. 
22 lines changed or deleted 106 lines changed or added


 lmjoin.h (6.1.7601.17887-Windows_7.0)   lmjoin.h (6.3.9600.17415-Windows_8.1) 
skipping to change at line 30 skipping to change at line 30
Notes: Notes:
--*/ --*/
#ifndef __LMJOIN_H__ #ifndef __LMJOIN_H__
#define __LMJOIN_H__ #define __LMJOIN_H__
#if _MSC_VER > 1000 #if _MSC_VER > 1000
#pragma once #pragma once
#endif #endif
#include <winapifamily.h>
#pragma region Desktop Family
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
// //
// Types of name that can be validated // Types of name that can be validated
// //
typedef enum _NETSETUP_NAME_TYPE { typedef enum _NETSETUP_NAME_TYPE {
skipping to change at line 87 skipping to change at line 91
// attributes on the computer o bject should be // attributes on the computer o bject should be
// defered until rename that wi ll follow join // defered until rename that wi ll follow join
#define NETSETUP_JOIN_DC_ACCOUNT 0x00000200 // Allow join if existing accoun t is a DC #define NETSETUP_JOIN_DC_ACCOUNT 0x00000200 // Allow join if existing accoun t is a DC
#define NETSETUP_JOIN_WITH_NEW_NAME 0x00000400 // Check for computer name chang e #define NETSETUP_JOIN_WITH_NEW_NAME 0x00000400 // Check for computer name chang e
#define NETSETUP_JOIN_READONLY 0x00000800 // Perform join using a pre-crea ted account w/o requiring a writable DC #define NETSETUP_JOIN_READONLY 0x00000800 // Perform join using a pre-crea ted account w/o requiring a writable DC
#define NETSETUP_DNS_NAME_CHANGES_ONLY 0x00001000 // When performing machin e rename only update DNS based names #define NETSETUP_DNS_NAME_CHANGES_ONLY 0x00001000 // When performing machin e rename only update DNS based names
#define NETSETUP_INSTALL_INVOCATION 0x00040000 // The APIs were invoked during install #define NETSETUP_INSTALL_INVOCATION 0x00040000 // The APIs were invoked during install
#define NETSETUP_AMBIGUOUS_DC 0x00001000 // When joiing the domain don't try to set the #define NETSETUP_AMBIGUOUS_DC 0x00001000 // When joining the domain don't try to set the
// preferred DC in the registry. // preferred DC in the registry.
#define NETSETUP_NO_NETLOGON_CACHE 0x00002000 // Don't create the netlogon cac he #define NETSETUP_NO_NETLOGON_CACHE 0x00002000 // Don't create the netlogon cac he
#define NETSETUP_DONT_CONTROL_SERVICES 0x00004000 // Don't force netlogon to sta rt #define NETSETUP_DONT_CONTROL_SERVICES 0x00004000 // Don't force netlogon to sta rt
#define NETSETUP_SET_MACHINE_NAME 0x00008000 // For offline join only, set ta rget machine hostname and NB name. #define NETSETUP_SET_MACHINE_NAME 0x00008000 // For offline join only, set ta rget machine hostname and NB name.
#define NETSETUP_FORCE_SPN_SET 0x00010000 // Override other settings durin g domain join #define NETSETUP_FORCE_SPN_SET 0x00010000 // Override other settings durin g domain join
// and attempt to set the SPN. // and attempt to set the SPN.
#define NETSETUP_NO_ACCT_REUSE 0x00020000 // Do not reuse an existing acco unt #define NETSETUP_NO_ACCT_REUSE 0x00020000 // Do not reuse an existing acco unt
#define NETSETUP_ALT_SAMACCOUNTNAME 0x00020000 // do not use OEM code page to d erive the netbios\samAccountName
#define NETSETUP_IGNORE_UNSUPPORTED_FLAGS 0x10000000 // If this bit is set, un recognized flags #define NETSETUP_IGNORE_UNSUPPORTED_FLAGS 0x10000000 // If this bit is set, un recognized flags
// will be ignored by th e NetJoin API and // will be ignored by th e NetJoin API and
// the API will behave a s if the flags // the API will behave a s if the flags
// were not set. // were not set.
#define NETSETUP_VALID_UNJOIN_FLAGS (NETSETUP_ACCT_DELETE | NETSETUP_IGNORE_UNSU PPORTED_FLAGS | NETSETUP_JOIN_DC_ACCOUNT) #define NETSETUP_VALID_UNJOIN_FLAGS (NETSETUP_ACCT_DELETE | NETSETUP_IGNORE_UNSU PPORTED_FLAGS | NETSETUP_JOIN_DC_ACCOUNT)
// The following flags are used when the system is processing information left f rom a prior offline // The following flags are used when the system is processing information left f rom a prior offline
// join. We want to force DC discovery and we don't want to create the netlogon cache. We also // join. We want to force DC discovery and we don't want to create the netlogon cache. We also
skipping to change at line 122 skipping to change at line 127
// //
// 0x80000000 is reserved for internal use only // 0x80000000 is reserved for internal use only
// //
// //
// Joins a machine to the domain. // Joins a machine to the domain.
// //
NET_API_STATUS NET_API_STATUS
NET_API_FUNCTION NET_API_FUNCTION
NetJoinDomain( NetJoinDomain(
IN LPCWSTR lpServer OPTIONAL, _In_opt_ LPCWSTR lpServer,
IN LPCWSTR lpDomain, _In_ LPCWSTR lpDomain,
IN LPCWSTR lpAccountOU, OPTIONAL _In_opt_ LPCWSTR lpMachineAccountOU,
IN LPCWSTR lpAccount OPTIONAL, _In_opt_ LPCWSTR lpAccount,
__in_opt IN LPCWSTR lpPassword OPTIONAL, _In_opt_ LPCWSTR lpPassword,
IN DWORD fJoinOptions _In_ DWORD fJoinOptions
); );
#if(_WIN32_WINNT >= 0x0601) #if(_WIN32_WINNT >= _WIN32_WINNT_WIN7)
// //
// Flags to determine the behavior of NetProvisionComputerAccount // Flags to determine the behavior of NetProvisionComputerAccount and
// NetCreateProvisioningPackage.
// //
// The caller requires account creation by privilege, this option will cause a r etry // The caller requires account creation by privilege, this option will cause a r etry
// on failure using down level account creation APIs. // on failure using down level account creation APIs.
// //
#define NETSETUP_PROVISION_DOWNLEVEL_PRIV_SUPPORT 0x00000001 #define NETSETUP_PROVISION_DOWNLEVEL_PRIV_SUPPORT 0x00000001
// If the named account already exists an attempt will be made to reuse. Require s // If the named account already exists an attempt will be made to reuse. Require s
// sufficient credentials i.e. Domain Administrator or the object owner. // sufficient credentials i.e. Domain Administrator or the object owner.
// //
skipping to change at line 158 skipping to change at line 164
#define NETSETUP_PROVISION_USE_DEFAULT_PASSWORD 0x00000004 #define NETSETUP_PROVISION_USE_DEFAULT_PASSWORD 0x00000004
// Do not try to find the account on any DC in the domain. This is faster but // Do not try to find the account on any DC in the domain. This is faster but
// should only be used when the caller is certain that an account by the same // should only be used when the caller is certain that an account by the same
// name hasn't recently been created. Only valid when specifying the target DC. // name hasn't recently been created. Only valid when specifying the target DC.
// When the pre-requisites are met, this option allows for must faster provision ing // When the pre-requisites are met, this option allows for must faster provision ing
// useful for scenarios such as batch processing. // useful for scenarios such as batch processing.
// //
#define NETSETUP_PROVISION_SKIP_ACCOUNT_SEARCH 0x00000008 #define NETSETUP_PROVISION_SKIP_ACCOUNT_SEARCH 0x00000008
// Include root Certificate Authority certificates in provisioning package.
//
#define NETSETUP_PROVISION_ROOT_CA_CERTS 0x00000010
// Configure site as persistent (if not specified then configure as dynamic).
//
#define NETSETUP_PROVISION_PERSISTENTSITE 0x00000020
// //
// The following are reserved for internal use. // The following are reserved for internal use.
// //
// The operation is online. // The operation is online.
// This is an internal option not available through the API. // This is an internal option not available through the API.
// //
#define NETSETUP_PROVISION_ONLINE_CALLER 0x40000000 #define NETSETUP_PROVISION_ONLINE_CALLER 0x40000000
// Validate the machine password only. This is an internal option not available // Validate the machine password only. This is an internal option not available
// through the API. // through the API.
// //
#define NETSETUP_PROVISION_CHECK_PWD_ONLY 0x80000000 #define NETSETUP_PROVISION_CHECK_PWD_ONLY 0x80000000
NET_API_STATUS NET_API_STATUS
NET_API_FUNCTION NET_API_FUNCTION
NetProvisionComputerAccount( NetProvisionComputerAccount(
__in LPCWSTR lpDomain, _In_z_ LPCWSTR lpDomain,
__in LPCWSTR lpMachineName, _In_z_ LPCWSTR lpMachineName,
__in_opt LPCWSTR lpMachineAccountOU, _In_opt_z_ LPCWSTR lpMachineAccountOU,
__in_opt LPCWSTR lpDcName, _In_opt_z_ LPCWSTR lpDcName,
__in DWORD dwOptions, _In_ DWORD dwOptions,
__deref_opt_out PBYTE *pProvisionBinData, _Outptr_opt_result_bytebuffer_maybenull_(*pdwProvisionBinDataSize)
__out_opt DWORD *pdwProvisionBinDataSize, PBYTE *pProvisionBinData,
__deref_opt_out LPWSTR *pProvisionTextData _Out_opt_ DWORD *pdwProvisionBinDataSize,
_Outptr_opt_result_maybenull_z_
LPWSTR *pProvisionTextData
); );
NET_API_STATUS NET_API_STATUS
NET_API_FUNCTION NET_API_FUNCTION
NetRequestOfflineDomainJoin( NetRequestOfflineDomainJoin(
__in_bcount(cbProvisionBinDataSize) BYTE *pProvisionBinData, _In_reads_bytes_(cbProvisionBinDataSize) BYTE *pProvisionBinData,
__in DWORD cbProvisionBinDataSize, _In_ DWORD cbProvisionBinDataSize,
__in DWORD dwOptions, _In_ DWORD dwOptions,
__in LPCWSTR lpWindowsPath _In_z_ LPCWSTR lpWindowsPath
); );
#endif // (_WIN32_WINNT >= 0x0601) #endif // (_WIN32_WINNT >= _WIN32_WINNT_WIN7)
#if(_WIN32_WINNT >= _WIN32_WINNT_WIN8)
// For dwVersion field of NETSETUP_PROVISIONING_PARAMS
#define NETSETUP_PROVISIONING_PARAMS_WIN8_VERSION 0x00000001
#define NETSETUP_PROVISIONING_PARAMS_CURRENT_VERSION 0x00000002
typedef struct _NETSETUP_PROVISIONING_PARAMS
{
// Version 1 fields
DWORD dwVersion; // _In_
LPCWSTR lpDomain; // _In_z_
LPCWSTR lpHostName; // _In_z_
LPCWSTR lpMachineAccountOU; // _In_opt_z_
LPCWSTR lpDcName; // _In_opt_z_
DWORD dwProvisionOptions; // _In_
LPCWSTR *aCertTemplateNames; // _In_reads_opt_(cCertTemplateNames)
DWORD cCertTemplateNames; // _In_
LPCWSTR *aMachinePolicyNames; // _In_reads_opt_(cMachinePolicyNames)
DWORD cMachinePolicyNames; // _In_
LPCWSTR *aMachinePolicyPaths; // _In_reads_opt_(cMachinePolicyPaths)
DWORD cMachinePolicyPaths; // _In_
// Version 2 fields
LPWSTR lpNetbiosName; // _In_
LPWSTR lpSiteName; // _In_
LPWSTR lpPrimaryDNSDomain; // _In_
} NETSETUP_PROVISIONING_PARAMS, *PNETSETUP_PROVISIONING_PARAMS;
NET_API_STATUS
NET_API_FUNCTION
NetCreateProvisioningPackage(
_In_ PNETSETUP_PROVISIONING_PARAMS pProvisioningParams,
_Outptr_opt_result_bytebuffer_maybenull_(*pdwPackageBinDataSize)
PBYTE *ppPackageBinData,
_Out_opt_ DWORD *pdwPackageBinDataSize,
_Outptr_opt_result_maybenull_z_ LPWSTR *ppPackageTextData
);
NET_API_STATUS
NET_API_FUNCTION
NetRequestProvisioningPackageInstall(
_In_reads_bytes_(dwPackageBinDataSize) BYTE *pPackageBinData,
_In_ DWORD dwPackageBinDataSize,
_In_ DWORD dwProvisionOptions,
_In_z_ LPCWSTR lpWindowsPath,
_Reserved_ PVOID pvReserved
);
#endif // (_WIN32_WINNT >= _WIN32_WINNT_WIN8)
NET_API_STATUS NET_API_STATUS
NET_API_FUNCTION NET_API_FUNCTION
NetUnjoinDomain( NetUnjoinDomain(
IN LPCWSTR lpServer OPTIONAL, _In_opt_ LPCWSTR lpServer,
IN LPCWSTR lpAccount OPTIONAL, _In_opt_ LPCWSTR lpAccount,
__in_opt IN LPCWSTR lpPassword OPTIONAL, _In_opt_ LPCWSTR lpPassword,
IN DWORD fUnjoinOptions _In_ DWORD fUnjoinOptions
); );
NET_API_STATUS NET_API_STATUS
NET_API_FUNCTION NET_API_FUNCTION
NetRenameMachineInDomain( NetRenameMachineInDomain(
IN LPCWSTR lpServer OPTIONAL, _In_opt_ LPCWSTR lpServer,
IN LPCWSTR lpNewMachineName OPTIONAL, _In_opt_ LPCWSTR lpNewMachineName,
IN LPCWSTR lpAccount OPTIONAL, _In_opt_ LPCWSTR lpAccount,
__in_opt IN LPCWSTR lpPassword OPTIONAL, _In_opt_ LPCWSTR lpPassword,
IN DWORD fRenameOptions _In_ DWORD fRenameOptions
); );
// //
// Determine the validity of a name // Determine the validity of a name
// //
NET_API_STATUS NET_API_STATUS
NET_API_FUNCTION NET_API_FUNCTION
NetValidateName( NetValidateName(
IN LPCWSTR lpServer OPTIONAL, _In_opt_ LPCWSTR lpServer,
IN LPCWSTR lpName, _In_ LPCWSTR lpName,
IN LPCWSTR lpAccount OPTIONAL, _In_opt_ LPCWSTR lpAccount,
__in_opt IN LPCWSTR lpPassword OPTIONAL, _In_opt_ LPCWSTR lpPassword,
IN NETSETUP_NAME_TYPE NameType _In_ NETSETUP_NAME_TYPE NameType
); );
// //
// Determines whether a workstation is joined to a domain or not // Determines whether a workstation is joined to a domain or not
// //
NET_API_STATUS NET_API_STATUS
NET_API_FUNCTION NET_API_FUNCTION
NetGetJoinInformation( NetGetJoinInformation(
__in_opt IN LPCWSTR lpServer OPTIONAL, _In_opt_ LPCWSTR lpServer,
__out_opt OUT LPWSTR *lpNameBuffer, _Outptr_ LPWSTR *lpNameBuffer,
OUT PNETSETUP_JOIN_STATUS BufferType _Out_ PNETSETUP_JOIN_STATUS BufferType
); );
// //
// Determines the list of OUs that the client can create a machine account in // Determines the list of OUs that the client can create a machine account in
// //
NET_API_STATUS NET_API_STATUS
NET_API_FUNCTION NET_API_FUNCTION
NetGetJoinableOUs( NetGetJoinableOUs(
IN LPCWSTR lpServer OPTIONAL, _In_ LPCWSTR lpServer,
IN LPCWSTR lpDomain, _In_ LPCWSTR lpDomain,
IN LPCWSTR lpAccount OPTIONAL, _In_opt_ LPCWSTR lpAccount,
__in_opt IN LPCWSTR lpPassword OPTIONAL, _In_opt_ LPCWSTR lpPassword,
__out_opt OUT DWORD *OUCount, _Out_ DWORD *OUCount,
__deref_out OUT LPWSTR **OUs _Outptr_result_buffer_(*OUCount) LPWSTR **OUs
); );
#if(_WIN32_WINNT >= 0x0501) #if(_WIN32_WINNT >= 0x0501)
// //
// Computer rename preparation APIs // Computer rename preparation APIs
// //
#define NET_IGNORE_UNSUPPORTED_FLAGS 0x01 #define NET_IGNORE_UNSUPPORTED_FLAGS 0x01
NET_API_STATUS NET_API_STATUS
NET_API_FUNCTION NET_API_FUNCTION
NetAddAlternateComputerName( NetAddAlternateComputerName(
IN LPCWSTR Server OPTIONAL, _In_opt_ LPCWSTR Server,
IN LPCWSTR AlternateName, _In_ LPCWSTR AlternateName,
IN LPCWSTR DomainAccount OPTIONAL, _In_opt_ LPCWSTR DomainAccount,
__in_opt IN LPCWSTR DomainAccountPassword OPTIONAL, _In_opt_ LPCWSTR DomainAccountPassword,
IN ULONG Reserved _In_ ULONG Reserved
); );
NET_API_STATUS NET_API_STATUS
NET_API_FUNCTION NET_API_FUNCTION
NetRemoveAlternateComputerName( NetRemoveAlternateComputerName(
IN LPCWSTR Server OPTIONAL, _In_opt_ LPCWSTR Server,
IN LPCWSTR AlternateName, _In_ LPCWSTR AlternateName,
IN LPCWSTR DomainAccount OPTIONAL, _In_opt_ LPCWSTR DomainAccount,
__in_opt IN LPCWSTR DomainAccountPassword OPTIONAL, _In_opt_ LPCWSTR DomainAccountPassword,
IN ULONG Reserved _In_ ULONG Reserved
); );
NET_API_STATUS NET_API_STATUS
NET_API_FUNCTION NET_API_FUNCTION
NetSetPrimaryComputerName( NetSetPrimaryComputerName(
IN LPCWSTR Server OPTIONAL, _In_opt_ LPCWSTR Server,
IN LPCWSTR PrimaryName, _In_ LPCWSTR PrimaryName,
IN LPCWSTR DomainAccount OPTIONAL, _In_opt_ LPCWSTR DomainAccount,
__in_opt IN LPCWSTR DomainAccountPassword OPTIONAL, _In_opt_ LPCWSTR DomainAccountPassword,
IN ULONG Reserved _In_ ULONG Reserved
); );
// //
// The following enumeration must be kept // The following enumeration must be kept
// in sync with COMPUTER_NAME_TYPE defined // in sync with COMPUTER_NAME_TYPE defined
// in winbase.h // in winbase.h
// //
typedef enum _NET_COMPUTER_NAME_TYPE { typedef enum _NET_COMPUTER_NAME_TYPE {
NetPrimaryComputerName, NetPrimaryComputerName,
NetAlternateComputerNames, NetAlternateComputerNames,
NetAllComputerNames, NetAllComputerNames,
NetComputerNameTypeMax NetComputerNameTypeMax
} NET_COMPUTER_NAME_TYPE, *PNET_COMPUTER_NAME_TYPE; } NET_COMPUTER_NAME_TYPE, *PNET_COMPUTER_NAME_TYPE;
NET_API_STATUS NET_API_STATUS
NET_API_FUNCTION NET_API_FUNCTION
NetEnumerateComputerNames( NetEnumerateComputerNames(
IN LPCWSTR Server OPTIONAL, _In_opt_ LPCWSTR Server,
IN NET_COMPUTER_NAME_TYPE NameType, _In_ NET_COMPUTER_NAME_TYPE NameType,
IN ULONG Reserved, _In_ ULONG Reserved,
__out OUT PDWORD EntryCount, _Out_ PDWORD EntryCount,
__deref_out OUT LPWSTR **ComputerNames _Outptr_result_buffer_(*EntryCount) LPWSTR **ComputerNames
); );
#endif // (_WIN32_WINNT >= 0x0501) #endif // (_WIN32_WINNT >= 0x0501)
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */
#pragma endregion
#endif // __LMJOIN_H__ #endif // __LMJOIN_H__
 End of changes. 20 change blocks. 
65 lines changed or deleted 134 lines changed or added


 lmmsg.h (6.1.7601.17887-Windows_7.0)   lmmsg.h (6.3.9600.17415-Windows_8.1) 
skipping to change at line 31 skipping to change at line 31
on values defined in NETCONS.H. on values defined in NETCONS.H.
--*/ --*/
#ifndef _LMMSG_ #ifndef _LMMSG_
#define _LMMSG_ #define _LMMSG_
#if _MSC_VER > 1000 #if _MSC_VER > 1000
#pragma once #pragma once
#endif #endif
#include <winapifamily.h>
#pragma region Desktop Family
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
// //
// Function Prototypes // Function Prototypes
// //
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetMessageNameAdd ( NetMessageNameAdd (
__in_opt LPCWSTR servername, _In_opt_ LPCWSTR servername,
__in LPCWSTR msgname _In_ LPCWSTR msgname
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetMessageNameEnum ( NetMessageNameEnum (
__in_opt LPCWSTR servername, _In_opt_ LPCWSTR servername,
__in DWORD level, _In_ DWORD level,
__in LPBYTE *bufptr, _In_ LPBYTE *bufptr,
__in DWORD prefmaxlen, _In_ DWORD prefmaxlen,
__out LPDWORD entriesread, _Out_ LPDWORD entriesread,
__out LPDWORD totalentries, _Out_ LPDWORD totalentries,
__out LPDWORD resume_handle _Out_ LPDWORD resume_handle
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetMessageNameGetInfo ( NetMessageNameGetInfo (
__in_opt LPCWSTR servername, _In_opt_ LPCWSTR servername,
__in LPCWSTR msgname, _In_ LPCWSTR msgname,
__in DWORD level, _In_ DWORD level,
__in LPBYTE *bufptr _In_ LPBYTE *bufptr
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetMessageNameDel ( NetMessageNameDel (
__in_opt LPCWSTR servername, _In_opt_ LPCWSTR servername,
__in LPCWSTR msgname _In_ LPCWSTR msgname
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetMessageBufferSend ( NetMessageBufferSend (
__in_opt LPCWSTR servername, _In_opt_ LPCWSTR servername,
__in LPCWSTR msgname, _In_ LPCWSTR msgname,
__in LPCWSTR fromname, _In_ LPCWSTR fromname,
__in LPBYTE buf, _In_ LPBYTE buf,
__in DWORD buflen _In_ DWORD buflen
); );
// //
// Data Structures // Data Structures
// //
typedef struct _MSG_INFO_0 { typedef struct _MSG_INFO_0 {
LPWSTR msgi0_name; LPWSTR msgi0_name;
}MSG_INFO_0, *PMSG_INFO_0, *LPMSG_INFO_0; }MSG_INFO_0, *PMSG_INFO_0, *LPMSG_INFO_0;
skipping to change at line 110 skipping to change at line 114
// //
#define MSGNAME_NOT_FORWARDED 0 // Name not forwarded #define MSGNAME_NOT_FORWARDED 0 // Name not forwarded
#define MSGNAME_FORWARDED_TO 0x04 // Name forward to remote station #define MSGNAME_FORWARDED_TO 0x04 // Name forward to remote station
#define MSGNAME_FORWARDED_FROM 0x10 // Name forwarded from remote station #define MSGNAME_FORWARDED_FROM 0x10 // Name forwarded from remote station
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */
#pragma endregion
#endif //_LMMSG_ #endif //_LMMSG_
 End of changes. 7 change blocks. 
20 lines changed or deleted 27 lines changed or added


 lmremutl.h (6.1.7601.17887-Windows_7.0)   lmremutl.h (6.3.9600.17415-Windows_8.1) 
skipping to change at line 28 skipping to change at line 28
Requires ANSI C extensions: slash-slash comments, long external names. Requires ANSI C extensions: slash-slash comments, long external names.
--*/ --*/
#ifndef _LMREMUTL_ #ifndef _LMREMUTL_
#define _LMREMUTL_ #define _LMREMUTL_
#if _MSC_VER > 1000 #if _MSC_VER > 1000
#pragma once #pragma once
#endif #endif
#include <winapifamily.h>
#pragma region Desktop Family
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
// //
// Type Definitions // Type Definitions
// //
#ifndef DESC_CHAR_UNICODE #ifndef DESC_CHAR_UNICODE
skipping to change at line 53 skipping to change at line 57
typedef WCHAR DESC_CHAR; typedef WCHAR DESC_CHAR;
typedef LPWSTR LPDESC; typedef LPWSTR LPDESC;
#endif // DESC_CHAR_UNICODE is defined #endif // DESC_CHAR_UNICODE is defined
// //
// Function Prototypes // Function Prototypes
// //
_Check_return_
_Success_( return == 0 )
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetRemoteTOD ( NetRemoteTOD (
IN LPCWSTR UncServerName, _In_opt_ LPCWSTR UncServerName,
__out OUT LPBYTE *BufferPtr _Outptr_result_bytebuffer_(sizeof(TIME_OF_DAY_INFO)) LPBYTE *BufferPtr
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetRemoteComputerSupports( NetRemoteComputerSupports(
IN LPCWSTR UncServerName OPTIONAL, // Must start with "\\". IN LPCWSTR UncServerName OPTIONAL, // Must start with "\\".
IN DWORD OptionsWanted, // Set SUPPORTS_ bits wanted. IN DWORD OptionsWanted, // Set SUPPORTS_ bits wanted.
OUT LPDWORD OptionsSupported // Supported features, masked. OUT LPDWORD OptionsSupported // Supported features, masked.
); );
NET_API_STATUS NET_API_STATUS
__cdecl __cdecl
RxRemoteApi( RxRemoteApi(
IN DWORD ApiNumber, IN DWORD ApiNumber,
__in IN LPCWSTR UncServerName, // Required, with \\name. _In_ IN LPCWSTR UncServerName, // Required, with \\name.
__in IN LPDESC ParmDescString, _In_ IN LPDESC ParmDescString,
__in_opt IN LPDESC DataDesc16 OPTIONAL, _In_opt_ IN LPDESC DataDesc16 OPTIONAL,
__in_opt IN LPDESC DataDesc32 OPTIONAL, _In_opt_ IN LPDESC DataDesc32 OPTIONAL,
__in_opt IN LPDESC DataDescSmb OPTIONAL, _In_opt_ IN LPDESC DataDescSmb OPTIONAL,
__in_opt IN LPDESC AuxDesc16 OPTIONAL, _In_opt_ IN LPDESC AuxDesc16 OPTIONAL,
__in_opt IN LPDESC AuxDesc32 OPTIONAL, _In_opt_ IN LPDESC AuxDesc32 OPTIONAL,
__in_opt IN LPDESC AuxDescSmb OPTIONAL, _In_opt_ IN LPDESC AuxDescSmb OPTIONAL,
IN DWORD Flags, IN DWORD Flags,
... // rest of API's arguments ... // rest of API's arguments
); );
// //
// Data Structures // Data Structures
// //
typedef struct _TIME_OF_DAY_INFO { typedef struct _TIME_OF_DAY_INFO {
DWORD tod_elapsedt; DWORD tod_elapsedt;
skipping to change at line 128 skipping to change at line 134
// //
#define NO_PERMISSION_REQUIRED 0x00000001 // set if use NULL session #define NO_PERMISSION_REQUIRED 0x00000001 // set if use NULL session
#define ALLOCATE_RESPONSE 0x00000002 // set if RxRemoteApi allocates response buffer #define ALLOCATE_RESPONSE 0x00000002 // set if RxRemoteApi allocates response buffer
#define USE_SPECIFIC_TRANSPORT 0x80000000 #define USE_SPECIFIC_TRANSPORT 0x80000000
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */
#pragma endregion
#endif //_LMREMUTL_ #endif //_LMREMUTL_
 End of changes. 5 change blocks. 
10 lines changed or deleted 19 lines changed or added


 lmrepl.h (6.1.7601.17887-Windows_7.0)   lmrepl.h (6.3.9600.17415-Windows_8.1) 
skipping to change at line 32 skipping to change at line 32
You must include LmCons.h before this file. You must include LmCons.h before this file.
--*/ --*/
#ifndef _LMREPL_ #ifndef _LMREPL_
#define _LMREPL_ #define _LMREPL_
#if _MSC_VER > 1000 #if _MSC_VER > 1000
#pragma once #pragma once
#endif #endif
#include <winapifamily.h>
#pragma region Desktop Family
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
#pragma warning(push)
// SAL Annotations not available for obsolete APIs
#pragma warning(disable:28740)
// //
// Replicator Configuration APIs // Replicator Configuration APIs
// //
#define REPL_ROLE_EXPORT 1 #define REPL_ROLE_EXPORT 1
#define REPL_ROLE_IMPORT 2 #define REPL_ROLE_IMPORT 2
#define REPL_ROLE_BOTH 3 #define REPL_ROLE_BOTH 3
#define REPL_INTERVAL_INFOLEVEL (PARMNUM_BASE_INFOLEVEL + 0) #define REPL_INTERVAL_INFOLEVEL (PARMNUM_BASE_INFOLEVEL + 0)
#define REPL_PULSE_INFOLEVEL (PARMNUM_BASE_INFOLEVEL + 1) #define REPL_PULSE_INFOLEVEL (PARMNUM_BASE_INFOLEVEL + 1)
skipping to change at line 254 skipping to change at line 262
IN LPCWSTR dirname IN LPCWSTR dirname
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetReplImportDirUnlock ( NetReplImportDirUnlock (
IN LPCWSTR servername OPTIONAL, IN LPCWSTR servername OPTIONAL,
IN LPCWSTR dirname, IN LPCWSTR dirname,
IN DWORD unlockforce IN DWORD unlockforce
); );
#pragma warning(pop)
#define REPL_STATE_OK 0 #define REPL_STATE_OK 0
#define REPL_STATE_NO_MASTER 1 #define REPL_STATE_NO_MASTER 1
#define REPL_STATE_NO_SYNC 2 #define REPL_STATE_NO_SYNC 2
#define REPL_STATE_NEVER_REPLICATED 3 #define REPL_STATE_NEVER_REPLICATED 3
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */
#pragma endregion
#endif //_LMREPL_ #endif //_LMREPL_
 End of changes. 4 change blocks. 
0 lines changed or deleted 13 lines changed or added


 lmshare.h (6.1.7601.17887-Windows_7.0)   lmshare.h (6.3.9600.17415-Windows_8.1) 
skipping to change at line 28 skipping to change at line 28
Environment: Environment:
User Mode - Win32 User Mode - Win32
Notes: Notes:
You must include <windef.h> and <lmcons.h> before this file. You must include <windef.h> and <lmcons.h> before this file.
--*/ --*/
#include <winapifamily.h>
#pragma region Desktop Family
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
// //
// SHARE API // SHARE API
// //
#ifndef _LMSHARE_ #ifndef _LMSHARE_
#define _LMSHARE_ #define _LMSHARE_
#if _MSC_VER > 1000 #if _MSC_VER > 1000
#pragma once #pragma once
#endif #endif
skipping to change at line 49 skipping to change at line 54
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
#include <lmcons.h> #include <lmcons.h>
// //
// Function Prototypes - Share // Function Prototypes - Share
// //
_Check_return_
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetShareAdd ( NetShareAdd(
__in_opt IN LMSTR servername, _In_opt_ LMSTR servername,
IN DWORD level, _In_ DWORD level,
__inout IN LPBYTE buf, _When_( level == 2, _In_reads_bytes_(sizeof(SHARE_INFO_2)) )
__out_opt OUT LPDWORD parm_err _When_( level == 502, _In_reads_bytes_(sizeof(SHARE_INFO_502)) )
_When_( level == 503, _In_reads_bytes_(sizeof(SHARE_INFO_503)) )
LPBYTE buf,
_Out_opt_ LPDWORD parm_err
); );
_Check_return_
_Success_( return == 0 || return == ERROR_MORE_DATA )
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetShareEnum ( NetShareEnum(
__in_opt IN LMSTR servername, _In_opt_ LMSTR servername,
__in IN DWORD level, _In_ DWORD level,
__deref_out_xcount("size varies with level") OUT LPBYTE *bufptr, _When_( level == 0,_Outptr_result_bytebuffer_(*entriesread * sizeof(SHARE_IN
__in IN DWORD prefmaxlen, FO_0)) )
__out OUT LPDWORD entriesread, _When_( level == 1, _Outptr_result_bytebuffer_(*entriesread * sizeof(SHARE_I
__out OUT LPDWORD totalentries, NFO_1)) )
__inout_opt IN OUT LPDWORD resume_handle _When_( level == 2, _Outptr_result_bytebuffer_(*entriesread * sizeof(SHARE_I
NFO_2)) )
_When_( level == 502, _Outptr_result_bytebuffer_(*entriesread * sizeof(SHARE
_INFO_502)) )
_When_( level == 503, _Outptr_result_bytebuffer_(*entriesread * sizeof(SHARE
_INFO_503)) )
LPBYTE *bufptr,
_In_ DWORD prefmaxlen,
_Out_ LPDWORD entriesread,
_Out_ LPDWORD totalentries,
_Inout_opt_ LPDWORD resume_handle
); );
_Check_return_
_Success_( return == 0 || return == ERROR_MORE_DATA )
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetShareEnumSticky ( NetShareEnumSticky(
__in_opt IN LMSTR servername, _In_opt_ LMSTR servername,
IN DWORD level, _In_ DWORD level,
__out OUT LPBYTE *bufptr, _When_( level == 0, _Outptr_result_bytebuffer_(*entriesread * sizeof(SHARE_I
IN DWORD prefmaxlen, NFO_0)) )
__out OUT LPDWORD entriesread, _When_( level == 1, _Outptr_result_bytebuffer_(*entriesread * sizeof(SHARE_I
__out OUT LPDWORD totalentries, NFO_1)) )
__inout_opt IN OUT LPDWORD resume_handle _When_( level == 2, _Outptr_result_bytebuffer_(*entriesread * sizeof(SHARE_I
NFO_2)) )
_When_( level == 502, _Outptr_result_bytebuffer_(*entriesread * sizeof(SHARE
_INFO_502)) )
_When_( level == 503, _Outptr_result_bytebuffer_(*entriesread * sizeof(SHARE
_INFO_503)) )
LPBYTE *bufptr,
_In_ DWORD prefmaxlen,
_Out_ LPDWORD entriesread,
_Out_ LPDWORD totalentries,
_Inout_opt_ LPDWORD resume_handle
); );
_Check_return_
_Success_( return == 0 || return == ERROR_MORE_DATA )
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetShareGetInfo ( NetShareGetInfo(
__in_opt IN LMSTR servername, _In_opt_ LMSTR servername,
__in_opt IN LMSTR netname, _In_ LMSTR netname,
__in IN DWORD level, _In_ DWORD level,
__deref_opt_out_xcount("size varies with level") OUT LPBYTE *bufptr _When_( level == 0, _Outptr_result_bytebuffer_(sizeof(SHARE_INFO_0)) )
_When_( level == 1, _Outptr_result_bytebuffer_(sizeof(SHARE_INFO_1)) )
_When_( level == 2, _Outptr_result_bytebuffer_(sizeof(SHARE_INFO_2)) )
_When_( level == 501, _Outptr_result_bytebuffer_(sizeof(SHARE_INFO_501)) )
_When_( level == 502, _Outptr_result_bytebuffer_(sizeof(SHARE_INFO_502)) )
_When_( level == 503, _Outptr_result_bytebuffer_(sizeof(SHARE_INFO_503)) )
_When_( level == 1005, _Outptr_result_bytebuffer_(sizeof(SHARE_INFO_1005)) )
LPBYTE *bufptr
); );
_Check_return_
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetShareSetInfo ( NetShareSetInfo(
__in_opt IN LMSTR servername, _In_opt_ LMSTR servername,
__in_opt IN LMSTR netname, _In_ LMSTR netname,
IN DWORD level, _In_ DWORD level,
__inout_opt IN LPBYTE buf, _When_( level == 1, _In_reads_bytes_(sizeof(SHARE_INFO_1)) )
__out_opt OUT LPDWORD parm_err _When_( level == 2, _In_reads_bytes_(sizeof(SHARE_INFO_2)) )
_When_( level == 502, _In_reads_bytes_(sizeof(SHARE_INFO_502)) )
_When_( level == 503, _In_reads_bytes_(sizeof(SHARE_INFO_503)) )
_When_( level == 1004, _In_reads_bytes_(sizeof(SHARE_INFO_1004)) )
_When_( level == 1005, _In_reads_bytes_(sizeof(SHARE_INFO_1005)) )
_When_( level == 1006, _In_reads_bytes_(sizeof(SHARE_INFO_1006)) )
_When_( level == 1501, _In_reads_bytes_(sizeof(SHARE_INFO_1501)) )
LPBYTE buf,
_Out_opt_ LPDWORD parm_err
); );
_Check_return_
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetShareDel ( NetShareDel(
__in_opt IN LMSTR servername, _In_opt_ LMSTR servername,
__in_opt IN LMSTR netname, _In_ LMSTR netname,
IN DWORD reserved _Reserved_ DWORD reserved
); );
_Check_return_
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetShareDelSticky ( NetShareDelSticky(
__in_opt IN LMSTR servername, _In_opt_ LMSTR servername,
__in_opt IN LMSTR netname, _In_ LMSTR netname,
IN DWORD reserved _Reserved_ DWORD reserved
); );
_Check_return_
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetShareCheck ( NetShareCheck(
__in_opt IN LMSTR servername, _In_opt_ LMSTR servername,
__in_opt IN LMSTR device, _In_ LMSTR device,
__out_opt OUT LPDWORD type _Out_ LPDWORD type
); );
_Check_return_
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetShareDelEx ( NetShareDelEx(
__in_opt IN LMSTR servername, _In_opt_ LMSTR servername,
IN DWORD level, _In_ DWORD level,
__in IN LPBYTE buf _When_( level == 0, _In_reads_bytes_(sizeof(SHARE_INFO_0)) )
_When_( level == 1, _In_reads_bytes_(sizeof(SHARE_INFO_1)) )
_When_( level == 2, _In_reads_bytes_(sizeof(SHARE_INFO_2)) )
_When_( level == 502, _In_reads_bytes_(sizeof(SHARE_INFO_502)) )
_When_( level == 503, _In_reads_bytes_(sizeof(SHARE_INFO_503)) )
LPBYTE buf
); );
// //
// Data Structures - Share // Data Structures - Share
// //
typedef struct _SHARE_INFO_0 { typedef struct _SHARE_INFO_0 {
LMSTR shi0_netname; LMSTR shi0_netname;
} SHARE_INFO_0, *PSHARE_INFO_0, *LPSHARE_INFO_0; } SHARE_INFO_0, *PSHARE_INFO_0, *LPSHARE_INFO_0;
skipping to change at line 207 skipping to change at line 257
PSECURITY_DESCRIPTOR shi1501_security_descriptor; PSECURITY_DESCRIPTOR shi1501_security_descriptor;
} SHARE_INFO_1501, *PSHARE_INFO_1501, *LPSHARE_INFO_1501; } SHARE_INFO_1501, *PSHARE_INFO_1501, *LPSHARE_INFO_1501;
typedef struct _SHARE_INFO_1503 { typedef struct _SHARE_INFO_1503 {
GUID shi1503_sharefilter; GUID shi1503_sharefilter;
} SHARE_INFO_1503, *PSHARE_INFO_1503, *LPSHARE_INFO_1503; } SHARE_INFO_1503, *PSHARE_INFO_1503, *LPSHARE_INFO_1503;
// //
// NetShareAlias functions // NetShareAlias functions
// //
_Check_return_
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetServerAliasAdd( NetServerAliasAdd(
__in_opt IN LMSTR servername, _In_opt_ LMSTR servername,
IN DWORD level, _In_ DWORD level,
__out_bcount(sizeof(SERVER_ALIAS_INFO_0)) IN LPBYTE buf _In_reads_bytes_(sizeof(SERVER_ALIAS_INFO_0)) LPBYTE buf
); );
_Check_return_
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetServerAliasDel( NetServerAliasDel(
__in_opt IN LMSTR servername, _In_opt_ LMSTR servername,
IN DWORD level, _In_ DWORD level,
IN LPBYTE buf _When_( level == 0, _In_reads_bytes_(sizeof(SERVER_ALIAS_INFO_0_CONTAINER))
)
LPBYTE buf
); );
_Check_return_
_Success_( return == 0 || return == ERROR_MORE_DATA )
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetServerAliasEnum( NetServerAliasEnum(
__in_opt IN LMSTR servername, _In_opt_ LMSTR servername,
IN DWORD level, _In_ DWORD level,
__out OUT LPBYTE *bufptr, _When_( level == 0, _Outptr_result_bytebuffer_(*entriesread * sizeof(SERVER_
IN DWORD prefmaxlen, ALIAS_INFO_0_CONTAINER)) )
__out OUT LPDWORD entriesread, LPBYTE *bufptr,
__out OUT LPDWORD totalentries, _In_ DWORD prefmaxlen,
__inout_opt IN OUT LPDWORD resumehandle _Out_ LPDWORD entriesread,
_Out_ LPDWORD totalentries,
_Inout_opt_ LPDWORD resumehandle
); );
typedef struct _SERVER_ALIAS_INFO_0 { typedef struct _SERVER_ALIAS_INFO_0 {
LMSTR srvai0_alias; LMSTR srvai0_alias;
LMSTR srvai0_target; LMSTR srvai0_target;
BOOLEAN srvai0_default; BOOLEAN srvai0_default;
ULONG srvai0_reserved; ULONG srvai0_reserved;
} SERVER_ALIAS_INFO_0, *PSERVER_ALIAS_INFO_0, *LPSERVER_ALIAS_INFO_0; } SERVER_ALIAS_INFO_0, *PSERVER_ALIAS_INFO_0, *LPSERVER_ALIAS_INFO_0;
// //
skipping to change at line 281 skipping to change at line 337
// //
// Share types (shi1_type and shi2_type fields). // Share types (shi1_type and shi2_type fields).
// //
#define STYPE_DISKTREE 0 #define STYPE_DISKTREE 0
#define STYPE_PRINTQ 1 #define STYPE_PRINTQ 1
#define STYPE_DEVICE 2 #define STYPE_DEVICE 2
#define STYPE_IPC 3 #define STYPE_IPC 3
#define STYPE_MASK 0x000000FF // AND with shi_type to
#define STYPE_RESERVED1 0x01000000 // Reserved for internal
processing
#define STYPE_RESERVED2 0x02000000
#define STYPE_RESERVED3 0x04000000
#define STYPE_RESERVED4 0x08000000
#define STYPE_RESERVED_ALL 0x3FFFFF00
#define STYPE_TEMPORARY 0x40000000 #define STYPE_TEMPORARY 0x40000000
#define STYPE_SPECIAL 0x80000000 #define STYPE_SPECIAL 0x80000000
#define SHI_USES_UNLIMITED (DWORD)-1 #define SHI_USES_UNLIMITED (DWORD)-1
// //
// Flags values for the 501 and 1005 levels // Flags values for the 501 and 1005 levels
// //
#define SHI1005_FLAGS_DFS 0x0001 // Share is in the DFS #define SHI1005_FLAGS_DFS 0x0001 // Share is in the DFS
#define SHI1005_FLAGS_DFS_ROOT 0x0002 // Share is root of DFS #define SHI1005_FLAGS_DFS_ROOT 0x0002 // Share is root of DFS
#define CSC_MASK_EXT 0x2030 // Used to mask off the following stat es (including SHI1005_FLAGS_ENABLE_HASH) #define CSC_MASK_EXT 0x2030 // Used to mask off the following stat es (including SHI1005_FLAGS_ENABLE_HASH)
#define CSC_MASK 0x0030 // Used to mask off the following stat es #define CSC_MASK 0x0030 // Used to mask off the following stat es
#define CSC_CACHE_MANUAL_REINT 0x0000 // No automatic file by file reintegra tion #define CSC_CACHE_MANUAL_REINT 0x0000 // No automatic file by file reintegra tion
#define CSC_CACHE_AUTO_REINT 0x0010 // File by file reintegration is OK #define CSC_CACHE_AUTO_REINT 0x0010 // File by file reintegration is OK
#define CSC_CACHE_VDO 0x0020 // no need to flow opens #define CSC_CACHE_VDO 0x0020 // no need to flow opens
#define CSC_CACHE_NONE 0x0030 // no CSC for this share #define CSC_CACHE_NONE 0x0030 // no CSC for this share
#define SHI1005_FLAGS_RESTRICT_EXCLUSIVE_OPENS 0x0100 // Used to disal #define SHI1005_FLAGS_RESTRICT_EXCLUSIVE_OPENS 0x00100 // Used to disa
low read-deny read behavior llow read-deny read behavior
#define SHI1005_FLAGS_FORCE_SHARED_DELETE 0x0200 // Used to allow #define SHI1005_FLAGS_FORCE_SHARED_DELETE 0x00200 // Used to allo
s force shared delete ws force shared delete
#define SHI1005_FLAGS_ALLOW_NAMESPACE_CACHING 0x0400 // The clients m #define SHI1005_FLAGS_ALLOW_NAMESPACE_CACHING 0x00400 // The clients
ay cache the namespace may cache the namespace
#define SHI1005_FLAGS_ACCESS_BASED_DIRECTORY_ENUM 0x0800 // Trim visible #define SHI1005_FLAGS_ACCESS_BASED_DIRECTORY_ENUM 0x00800 // Trim visible
files in enumerations based on access files in enumerations based on access
#define SHI1005_FLAGS_FORCE_LEVELII_OPLOCK 0x1000 // Only issue le #define SHI1005_FLAGS_FORCE_LEVELII_OPLOCK 0x01000 // Only issue l
vel2 oplock evel2 oplock
#define SHI1005_FLAGS_ENABLE_HASH 0x2000 // Enable hash g #define SHI1005_FLAGS_ENABLE_HASH 0x02000 // Enable hash
eneration and retrieval requests from share generation and retrieval requests from share
#define SHI1005_FLAGS_ENABLE_CA 0x04000 // Enable conti
nuously available
#define SHI1005_FLAGS_ENCRYPT_DATA 0x08000 // Require encr
yption
#define SHI1005_FLAGS_RESERVED 0x10000 // Reserved for
internal use
// //
// The subset of 1005 infolevel flags that can be set via the API // The subset of 1005 infolevel flags that can be set via the API
// //
#define SHI1005_VALID_FLAGS_SET (CSC_MASK| \ #define SHI1005_VALID_FLAGS_SET (CSC_MASK| \
SHI1005_FLAGS_RESTRICT_EXCLUSIVE_OPENS| \ SHI1005_FLAGS_RESTRICT_EXCLUSIVE_OPENS| \
SHI1005_FLAGS_FORCE_SHARED_DELETE| \ SHI1005_FLAGS_FORCE_SHARED_DELETE| \
SHI1005_FLAGS_ALLOW_NAMESPACE_CACHING| \ SHI1005_FLAGS_ALLOW_NAMESPACE_CACHING| \
SHI1005_FLAGS_ACCESS_BASED_DIRECTORY_ENUM| \ SHI1005_FLAGS_ACCESS_BASED_DIRECTORY_ENUM| \
SHI1005_FLAGS_FORCE_LEVELII_OPLOCK| \ SHI1005_FLAGS_FORCE_LEVELII_OPLOCK| \
SHI1005_FLAGS_ENABLE_HASH) SHI1005_FLAGS_ENABLE_HASH|
\
SHI1005_FLAGS_ENABLE_CA | \
SHI1005_FLAGS_ENCRYPT_DATA | \
SHI1005_FLAGS_RESERVED)
#endif // _LMSHARE_ #endif // _LMSHARE_
// //
// SESSION API // SESSION API
// //
#ifndef _LMSESSION_ #ifndef _LMSESSION_
#define _LMSESSION_ #define _LMSESSION_
// //
// Function Prototypes Session // Function Prototypes Session
// //
_Check_return_
_Success_( return == 0 || return == ERROR_MORE_DATA )
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetSessionEnum ( NetSessionEnum(
__in_opt IN LMSTR servername OPTIONAL, _In_opt_ LMSTR servername,
__in_opt IN LMSTR UncClientName OPTIONAL, _In_opt_ LMSTR UncClientName,
__in_opt IN LMSTR username OPTIONAL, _In_opt_ LMSTR username,
IN DWORD level, _In_ DWORD level,
__out OUT LPBYTE *bufptr, _When_( level == 0, _Outptr_result_bytebuffer_(*entriesread * sizeof(SESSIO
IN DWORD prefmaxlen, N_INFO_0)) )
__out OUT LPDWORD entriesread, _When_( level == 1, _Outptr_result_bytebuffer_(*entriesread * sizeof(SESSIO
__out_opt OUT LPDWORD totalentries, N_INFO_1)) )
__inout_opt IN OUT LPDWORD resume_handle OPTIONAL _When_( level == 2, _Outptr_result_bytebuffer_(*entriesread * sizeof(SESSIO
N_INFO_2)) )
_When_( level == 10, _Outptr_result_bytebuffer_(*entriesread * sizeof(SESSI
ON_INFO_10)) )
_When_( level == 502, _Outptr_result_bytebuffer_(*entriesread * sizeof(SESS
ION_INFO_502)) )
LPBYTE *bufptr,
_In_ DWORD prefmaxlen,
_Out_ LPDWORD entriesread,
_Out_ LPDWORD totalentries,
_Inout_opt_ LPDWORD resume_handle
); );
_Check_return_
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetSessionDel ( NetSessionDel(
__in_opt IN LMSTR servername OPTIONAL, _In_opt_ LMSTR servername,
__in_opt IN LMSTR UncClientName, _In_opt_ LMSTR UncClientName,
__in_opt IN LMSTR username _In_opt_ LMSTR username
); );
_Check_return_
_Success_( return == 0 )
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetSessionGetInfo ( NetSessionGetInfo(
__in_opt IN LMSTR servername OPTIONAL, _In_opt_ LMSTR servername,
__in_opt IN LMSTR UncClientName, _In_ LMSTR UncClientName,
__in_opt IN LMSTR username, _In_ LMSTR username,
IN DWORD level, _In_ DWORD level,
__out OUT LPBYTE *bufptr _When_( level == 0, _Outptr_result_bytebuffer_(sizeof(SESSION_INFO_0)) )
_When_( level == 1, _Outptr_result_bytebuffer_(sizeof(SESSION_INFO_1)) )
_When_( level == 2, _Outptr_result_bytebuffer_(sizeof(SESSION_INFO_2)) )
_When_( level == 10, _Outptr_result_bytebuffer_(sizeof(SESSION_INFO_10)) )
LPBYTE *bufptr
); );
// //
// Data Structures - Session // Data Structures - Session
// //
typedef struct _SESSION_INFO_0 { typedef struct _SESSION_INFO_0 {
LMSTR sesi0_cname; // client name (no backslashes) LMSTR sesi0_cname; // client name (no backslashes)
} SESSION_INFO_0, *PSESSION_INFO_0, *LPSESSION_INFO_0; } SESSION_INFO_0, *PSESSION_INFO_0, *LPSESSION_INFO_0;
skipping to change at line 434 skipping to change at line 517
// //
#ifndef _LMCONNECTION_ #ifndef _LMCONNECTION_
#define _LMCONNECTION_ #define _LMCONNECTION_
// //
// Function Prototypes - CONNECTION // Function Prototypes - CONNECTION
// //
_Check_return_
_Success_( return == 0 || return == ERROR_MORE_DATA )
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetConnectionEnum ( NetConnectionEnum(
__in_opt IN LMSTR servername OPTIONAL, _In_opt_ LMSTR servername,
__in_opt IN LMSTR qualifier, _In_ LMSTR qualifier,
IN DWORD level, _In_ DWORD level,
__out OUT LPBYTE *bufptr, _When_( level == 0, _Outptr_result_bytebuffer_(*entriesread * sizeof(CONNECT
IN DWORD prefmaxlen, ION_INFO_0)) )
__out OUT LPDWORD entriesread, _When_( level == 1, _Outptr_result_bytebuffer_(*entriesread * sizeof(CONNECT
__out OUT LPDWORD totalentries, ION_INFO_1)) )
__inout_opt IN OUT LPDWORD resume_handle OPTIONAL LPBYTE *bufptr,
_In_ DWORD prefmaxlen,
_Out_ LPDWORD entriesread,
_Out_ LPDWORD totalentries,
_Inout_opt_ LPDWORD resume_handle
); );
// //
// Data Structures - CONNECTION // Data Structures - CONNECTION
// //
typedef struct _CONNECTION_INFO_0 { typedef struct _CONNECTION_INFO_0 {
DWORD coni0_id; DWORD coni0_id;
} CONNECTION_INFO_0, *PCONNECTION_INFO_0, *LPCONNECTION_INFO_0; } CONNECTION_INFO_0, *PCONNECTION_INFO_0, *LPCONNECTION_INFO_0;
skipping to change at line 477 skipping to change at line 564
// FILE API // FILE API
// //
#ifndef _LMFILE_ #ifndef _LMFILE_
#define _LMFILE_ #define _LMFILE_
// //
// Function Prototypes - FILE // Function Prototypes - FILE
// //
_Check_return_
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetFileClose ( NetFileClose(
__in_opt IN LMSTR servername OPTIONAL, _In_opt_ LMSTR servername,
IN DWORD fileid _In_ DWORD fileid
); );
_Check_return_
_Success_( return == 0 || return == ERROR_MORE_DATA )
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetFileEnum ( NetFileEnum(
__in_opt IN LMSTR servername OPTIONAL, _In_opt_ LMSTR servername,
__in_opt IN LMSTR basepath OPTIONAL, _In_opt_ LMSTR basepath,
__in_opt IN LMSTR username OPTIONAL, _In_opt_ LMSTR username,
IN DWORD level, _In_ DWORD level,
__out OUT LPBYTE *bufptr, _When_( level == 2, _Outptr_result_bytebuffer_(*entriesread * sizeof(FILE_IN
IN DWORD prefmaxlen, FO_2)) )
__out OUT LPDWORD entriesread, _When_( level == 3, _Outptr_result_bytebuffer_(*entriesread * sizeof(FILE_IN
__out OUT LPDWORD totalentries, FO_3)) )
__inout_opt IN OUT PDWORD_PTR resume_handle OPTIONAL LPBYTE *bufptr,
_In_ DWORD prefmaxlen,
_Out_ LPDWORD entriesread,
_Out_ LPDWORD totalentries,
_Inout_opt_ PDWORD_PTR resume_handle
); );
_Check_return_
_Success_( return == 0)
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetFileGetInfo ( NetFileGetInfo(
__in_opt IN LMSTR servername OPTIONAL, _In_opt_ LMSTR servername,
IN DWORD fileid, _In_ DWORD fileid,
IN DWORD level, _In_ DWORD level,
__out OUT LPBYTE *bufptr _When_( level == 2, _Outptr_result_bytebuffer_(sizeof(FILE_INFO_2)) )
_When_( level == 3, _Outptr_result_bytebuffer_(sizeof(FILE_INFO_3)) )
LPBYTE *bufptr
); );
// //
// Data Structures - File // Data Structures - File
// //
// File APIs are available at information levels 2 & 3 only. Levels 0 & // File APIs are available at information levels 2 & 3 only. Levels 0 &
// 1 are not supported. // 1 are not supported.
// //
skipping to change at line 541 skipping to change at line 637
#define PERM_FILE_READ 0x1 // user has read access #define PERM_FILE_READ 0x1 // user has read access
#define PERM_FILE_WRITE 0x2 // user has write access #define PERM_FILE_WRITE 0x2 // user has write access
#define PERM_FILE_CREATE 0x4 // user has create access #define PERM_FILE_CREATE 0x4 // user has create access
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
#endif // _LMFILE_ #endif // _LMFILE_
#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */
#pragma endregion
 End of changes. 43 change blocks. 
122 lines changed or deleted 244 lines changed or added


 lmstats.h (6.1.7601.17887-Windows_7.0)   lmstats.h (6.3.9600.17415-Windows_8.1) 
skipping to change at line 32 skipping to change at line 32
on values defined in NETCONS.H. on values defined in NETCONS.H.
--*/ --*/
#ifndef _LMSTATS_ #ifndef _LMSTATS_
#define _LMSTATS_ #define _LMSTATS_
#if _MSC_VER > 1000 #if _MSC_VER > 1000
#pragma once #pragma once
#endif #endif
#include <winapifamily.h>
#pragma region Desktop Family
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
#include <lmcons.h> #include <lmcons.h>
// //
// Function Prototypes - Statistics // Function Prototypes - Statistics
// //
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetStatisticsGet ( NetStatisticsGet (
__in LPTSTR ServerName, _In_ LPTSTR ServerName,
__in LPTSTR Service, _In_ LPTSTR Service,
__in DWORD Level, _In_ DWORD Level,
__in DWORD Options, _In_ DWORD Options,
__deref_out LPBYTE *Buffer _Outptr_ LPBYTE *Buffer
); );
// //
// Data Structures - Statistics // Data Structures - Statistics
// //
#ifdef LM20_WORKSTATION_STATISTICS #ifdef LM20_WORKSTATION_STATISTICS
typedef struct _STAT_WORKSTATION_0 { typedef struct _STAT_WORKSTATION_0 {
DWORD stw0_start; DWORD stw0_start;
DWORD stw0_numNCB_r; DWORD stw0_numNCB_r;
skipping to change at line 188 skipping to change at line 192
// //
#define STATSOPT_CLR 1 #define STATSOPT_CLR 1
#define STATS_NO_VALUE ((unsigned long) -1L) #define STATS_NO_VALUE ((unsigned long) -1L)
#define STATS_OVERFLOW ((unsigned long) -2L) #define STATS_OVERFLOW ((unsigned long) -2L)
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */
#pragma endregion
#endif // _LMSTATS.H #endif // _LMSTATS.H
 End of changes. 3 change blocks. 
5 lines changed or deleted 12 lines changed or added


 lmsvc.h (6.1.7601.17887-Windows_7.0)   lmsvc.h (6.3.9600.17415-Windows_8.1) 
skipping to change at line 31 skipping to change at line 31
on values defined in NETCONS.H. on values defined in NETCONS.H.
--*/ --*/
#ifndef _LMSVC_ #ifndef _LMSVC_
#define _LMSVC_ #define _LMSVC_
#if _MSC_VER > 1000 #if _MSC_VER > 1000
#pragma once #pragma once
#endif #endif
#include <winapifamily.h>
#pragma region Desktop Family
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
// //
// Include the file which contains all the service name strings. // Include the file which contains all the service name strings.
// //
#include <lmsname.h> #include <lmsname.h>
skipping to change at line 72 skipping to change at line 76
DWORD svci2_specific_error; DWORD svci2_specific_error;
LPWSTR svci2_display_name; LPWSTR svci2_display_name;
} SERVICE_INFO_2, *PSERVICE_INFO_2, * LPSERVICE_INFO_2; } SERVICE_INFO_2, *PSERVICE_INFO_2, * LPSERVICE_INFO_2;
// //
// Function Prototypes // Function Prototypes
// //
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetServiceControl ( NetServiceControl (
__in_opt LPCWSTR servername, _In_opt_ LPCWSTR servername,
__in LPCWSTR service, _In_ LPCWSTR service,
__in DWORD opcode, _In_ DWORD opcode,
__in DWORD arg, _In_ DWORD arg,
__deref_out LPBYTE *bufptr _Outptr_ LPBYTE *bufptr
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetServiceEnum ( NetServiceEnum (
__in_opt LPCWSTR servername, _In_opt_ LPCWSTR servername,
__in DWORD level, _In_ DWORD level,
__deref_out LPBYTE *bufptr, _Outptr_result_buffer_(_Inexpressible_(entriesread)) LPBYTE *bufptr,
__in DWORD prefmaxlen, _In_ DWORD prefmaxlen,
__out LPDWORD entriesread, _Out_ LPDWORD entriesread,
__out LPDWORD totalentries, _Out_ LPDWORD totalentries,
__inout_opt LPDWORD resume_handle _Inout_opt_ LPDWORD resume_handle
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetServiceGetInfo ( NetServiceGetInfo (
__in_opt LPCWSTR servername, _In_opt_ LPCWSTR servername,
__in LPCWSTR service, _In_ LPCWSTR service,
__in DWORD level, _In_ DWORD level,
__deref_out LPBYTE *bufptr _Outptr_ LPBYTE *bufptr
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetServiceInstall ( NetServiceInstall (
__in_opt LPCWSTR servername, _In_opt_ LPCWSTR servername,
__in LPCWSTR service, _In_ LPCWSTR service,
__in DWORD argc, _In_ DWORD argc,
__in_ecount(argc) LPCWSTR argv[], _In_reads_(argc) LPCWSTR argv[],
__deref_out LPBYTE *bufptr _Outptr_ LPBYTE *bufptr
); );
// //
// Special Values and Constants // Special Values and Constants
// //
// //
// Bitmask and bit values for svci1_status, and svci2_status // Bitmask and bit values for svci1_status, and svci2_status
// fields. For each "subfield", there is a mask defined, // fields. For each "subfield", there is a mask defined,
// and a number of constants representing the value // and a number of constants representing the value
skipping to change at line 534 skipping to change at line 538
#define SERVICE_NT_WAIT_GET(code) \ #define SERVICE_NT_WAIT_GET(code) \
( \ ( \
(((code) & UPPER_GET_HINT_MASK) >> SERVICE_NTIP_WAITTIME_SHIFT) | \ (((code) & UPPER_GET_HINT_MASK) >> SERVICE_NTIP_WAITTIME_SHIFT) | \
(((code) & LOWER_GET_HINT_MASK) >> SERVICE_IP_WAITTIME_SHIFT) \ (((code) & LOWER_GET_HINT_MASK) >> SERVICE_IP_WAITTIME_SHIFT) \
) )
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */
#pragma endregion
#endif // _LMSVC_ #endif // _LMSVC_
 End of changes. 6 change blocks. 
21 lines changed or deleted 28 lines changed or added


 lmwksta.h (6.1.7601.17887-Windows_7.0)   lmwksta.h (6.3.9600.17415-Windows_8.1) 
skipping to change at line 33 skipping to change at line 33
on values defined in NETCONS.H. on values defined in NETCONS.H.
--*/ --*/
#ifndef _LMWKSTA_ #ifndef _LMWKSTA_
#define _LMWKSTA_ #define _LMWKSTA_
#if _MSC_VER > 1000 #if _MSC_VER > 1000
#pragma once #pragma once
#endif #endif
#include <winapifamily.h>
#pragma region Desktop Family
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
#include <lmcons.h> #include <lmcons.h>
#include <lmuseflg.h> // Deletion force level flags #include <lmuseflg.h> // Deletion force level flags
// //
// Function Prototypes // Function Prototypes
// //
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetWkstaGetInfo ( NetWkstaGetInfo (
__in_opt IN LMSTR servername OPTIONAL, _In_opt_ LMSTR servername OPTIONAL,
IN DWORD level, _In_ DWORD level,
__deref_opt_out_xcount("size varies with level") OUT LPBYTE *bufptr _Outptr_opt_result_buffer_(_Inexpressible_("size varies with level")) OUT LP
BYTE *bufptr
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetWkstaSetInfo ( NetWkstaSetInfo (
__in_opt IN LMSTR servername OPTIONAL, _In_opt_ LMSTR servername OPTIONAL,
IN DWORD level, _In_ DWORD level,
IN LPBYTE buffer, _In_reads_(_Inexpressible_("varies")) LPBYTE buffer,
__out_opt OUT LPDWORD parm_err OPTIONAL _Out_opt_ OUT LPDWORD parm_err OPTIONAL
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetWkstaUserGetInfo ( NetWkstaUserGetInfo (
__in_opt IN LMSTR reserved, _In_opt_ LMSTR reserved,
IN DWORD level, _In_ DWORD level,
__out_opt OUT LPBYTE *bufptr _Outptr_result_buffer_(_Inexpressible_("varies")) OUT LPBYTE *bufptr
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetWkstaUserSetInfo ( NetWkstaUserSetInfo (
__in_opt IN LMSTR reserved, _In_opt_ LMSTR reserved,
IN DWORD level, _In_ DWORD level,
OUT LPBYTE buf, _In_reads_(_Inexpressible_("varies")) LPBYTE buf,
__out_opt OUT LPDWORD parm_err OPTIONAL _Out_opt_ LPDWORD parm_err OPTIONAL
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetWkstaUserEnum ( NetWkstaUserEnum (
__in_opt LMSTR servername OPTIONAL, _In_opt_ LMSTR servername OPTIONAL,
IN DWORD level, IN DWORD level,
__out_opt LPBYTE *bufptr, _Out_opt_ LPBYTE *bufptr,
IN DWORD prefmaxlen, IN DWORD prefmaxlen,
__out_opt LPDWORD entriesread, _Out_opt_ LPDWORD entriesread,
__out LPDWORD totalentries, _Out_ LPDWORD totalentries,
__inout_opt LPDWORD resumehandle OPTIONAL _Inout_opt_ LPDWORD resumehandle OPTIONAL
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetWkstaTransportAdd ( NetWkstaTransportAdd (
__in_opt LMSTR servername OPTIONAL, _In_opt_ LPTSTR servername,
IN DWORD level, _In_ DWORD level,
__in LPBYTE buf, _When_( level == 0, _In_reads_bytes_(sizeof(WKSTA_TRANSPORT_INFO_0)))
__out_opt LPDWORD parm_err LPBYTE buf,
_Out_opt_ LPDWORD parm_err
); );
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetWkstaTransportDel ( NetWkstaTransportDel (
__in_opt IN LMSTR servername OPTIONAL, _In_opt_ IN LMSTR servername OPTIONAL,
__in_opt IN LMSTR transportname, _In_opt_ IN LMSTR transportname,
IN DWORD ucond IN DWORD ucond
); );
_Check_return_
_Success_( return == NERR_Success || return == ERROR_MORE_DATA )
NET_API_STATUS NET_API_FUNCTION NET_API_STATUS NET_API_FUNCTION
NetWkstaTransportEnum ( NetWkstaTransportEnum(
__in_opt LMSTR servername OPTIONAL, _In_opt_ LPTSTR servername,
IN DWORD level, _In_ DWORD level,
__out_opt LPBYTE *bufptr, _When_( level == 0, _Outptr_result_bytebuffer_(*entriesread * sizeof(WKSTA_T
IN DWORD prefmaxlen, RANSPORT_INFO_0)) )
__out_opt LPDWORD entriesread, LPBYTE *bufptr,
__out LPDWORD totalentries, _In_ DWORD prefmaxlen,
__inout_opt LPDWORD resumehandle OPTIONAL _Out_ LPDWORD entriesread,
_Out_ LPDWORD totalentries,
_Inout_opt_ LPDWORD resume_handle
); );
// //
// Data Structures // Data Structures
// //
// //
// NetWkstaGetInfo and NetWkstaSetInfo // NetWkstaGetInfo and NetWkstaSetInfo
// //
skipping to change at line 538 skipping to change at line 546
// NetWkstaTransportAdd. // NetWkstaTransportAdd.
// //
#define TRANSPORT_QUALITYOFSERVICE_PARMNUM 201 #define TRANSPORT_QUALITYOFSERVICE_PARMNUM 201
#define TRANSPORT_NAME_PARMNUM 202 #define TRANSPORT_NAME_PARMNUM 202
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */
#pragma endregion
#endif // _LMWKSTA_ #endif // _LMWKSTA_
 End of changes. 13 change blocks. 
33 lines changed or deleted 46 lines changed or added

This html diff was produced by rfcdiff 1.41.