Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

90 lines
2.2 KiB

/*++
Copyright (C) Microsoft Corporation, 1995 - 1998
Module Name:
lsapi.idl
Abstract:
Author:
Arthur Hanson (arth) Jan 20-1994
Environment:
User Mode
Revision History:
--*/
[
uuid(57674CD0-5200-11CE-A897-08002B2E9C6D),
version(1.0),
#ifdef __midl
ms_union,
#endif // __midl
pointer_default(unique)
]
interface lsapirpc
{
//
// Import a dummy interface containing #includes for public .h files. This
// trick is necessary so that midl will only generate marshalling routines
// for subtypes that are relevant to the parameters specified on the RPC
// interface. midl also ingores function prototypes contained therein.
//
import "llsimp.idl" ;
//
// Emit these constants into the generated file.
//
cpp_quote("#define LLS_LPC_ENDPOINT \"llslpc\"")
//
// Note: Must use quad backslash to emit two backslashes into #define
// which when compiled will boil down to single backslash
//
cpp_quote("#define LLS_NP_ENDPOINT \"\\\\pipe\\\\llsrpc\"")
typedef [string] LPWSTR PNAMEW;
typedef [string] LPSTR PNAMEA;
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
typedef [context_handle] void *LICENSE_HANDLE;
typedef [ref] LICENSE_HANDLE *PLICENSE_HANDLE;
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
//
// Licensing API's
//
//securitypush, code review, the size of 5K is way larger than needed, it should be max of (MAX_EXPECTED_SID_LENGTH, 72, and MAX_USER_NAME_LENGTH, 35, * sizeof (WCHAR). we should consider to use SECURITY_MAX_SID_SIZE in winnt.h
NTSTATUS
LlsrLicenseRequestW(
[out] PLICENSE_HANDLE pLicenseHandle,
[in, string] LPWSTR Product,
[in] ULONG VersionIndex,
[in] BOOLEAN IsAdmin,
[in] ULONG DataType,
[in, range(0, 1024*5)] ULONG DataSize,
[in, size_is(DataSize)] PBYTE Data
);
NTSTATUS
LlsrLicenseFree(
[in, out] PLICENSE_HANDLE pLicenseHandle
);
}