483 lines
11 KiB
Plaintext
483 lines
11 KiB
Plaintext
|
/*++
|
||
|
|
||
|
Copyright (c) 1993 Microsoft Corporation
|
||
|
|
||
|
Module Name:
|
||
|
|
||
|
nwwks.idl
|
||
|
|
||
|
Abstract:
|
||
|
|
||
|
This is the IDL file that describes the RPC interface for the
|
||
|
NetWare workstation internal APIs.
|
||
|
|
||
|
Author:
|
||
|
|
||
|
Rita Wong (ritaw) 11-Feb-1993
|
||
|
|
||
|
Environment:
|
||
|
|
||
|
User Mode -Win32
|
||
|
|
||
|
Revision History:
|
||
|
Yi-Hsin Sung ( yihsins ) 24-Apr-1993
|
||
|
Added NwrOpenEnumPrintServers and NwrOpenEnumPrintQueues
|
||
|
|
||
|
Glenn A. Curtis (glennc) 19-Oct-1995
|
||
|
Added NwrGetUser, NwrGetResourceInformation, and NwrGetResourceParent
|
||
|
|
||
|
--*/
|
||
|
|
||
|
//
|
||
|
// Interface Attributes
|
||
|
//
|
||
|
|
||
|
[
|
||
|
uuid(E67AB081-9844-3521-9D32-834F038001C0),
|
||
|
version(1.0),
|
||
|
pointer_default(unique)
|
||
|
]
|
||
|
|
||
|
//
|
||
|
// Interface Keyword
|
||
|
//
|
||
|
|
||
|
interface nwwks
|
||
|
|
||
|
//
|
||
|
// Interface Body
|
||
|
//
|
||
|
|
||
|
{
|
||
|
|
||
|
import "imports.idl";
|
||
|
|
||
|
//
|
||
|
// Handle types
|
||
|
//
|
||
|
|
||
|
typedef [handle] wchar_t * NWWKSTA_IMPERSONATE_HANDLE;
|
||
|
|
||
|
typedef [handle] wchar_t * NWWKSTA_IDENTIFY_HANDLE;
|
||
|
|
||
|
typedef [context_handle] PVOID NWWKSTA_CONTEXT_HANDLE;
|
||
|
|
||
|
typedef NWWKSTA_CONTEXT_HANDLE *LPNWWKSTA_CONTEXT_HANDLE;
|
||
|
|
||
|
typedef [context_handle] PVOID NWWKSTA_PRINTER_CONTEXT;
|
||
|
|
||
|
typedef NWWKSTA_PRINTER_CONTEXT *LPNWWKSTA_PRINTER_CONTEXT;
|
||
|
|
||
|
typedef struct _NW_JOB_INFO {
|
||
|
DWORD nPosition;
|
||
|
[string, unique] wchar_t *pDocument;
|
||
|
[string, unique] wchar_t *pUserName;
|
||
|
} NW_JOB_INFO, *PNW_JOB_INFO;
|
||
|
|
||
|
//
|
||
|
// Function prototype
|
||
|
//
|
||
|
|
||
|
DWORD
|
||
|
NwrCreateConnection(
|
||
|
[in,string,unique] NWWKSTA_IMPERSONATE_HANDLE Reserved,
|
||
|
[in,string,unique] wchar_t * LocalName,
|
||
|
[in,string] wchar_t * RemoteName,
|
||
|
[in] DWORD Type,
|
||
|
[in,string,unique] wchar_t * Password,
|
||
|
[in,string,unique] wchar_t * UserName
|
||
|
);
|
||
|
|
||
|
typedef struct _NWSERVER {
|
||
|
[string] wchar_t * ServerName;
|
||
|
} NWSERVER, *LPNWSERVER;
|
||
|
|
||
|
DWORD
|
||
|
NwrChangePassword(
|
||
|
[in,string,unique] NWWKSTA_IDENTIFY_HANDLE Reserved,
|
||
|
[in] DWORD UserLuid,
|
||
|
[in,string] wchar_t * UserName,
|
||
|
[in,string,unique] wchar_t * OldPassword,
|
||
|
[in,string,unique] wchar_t * NewPassword,
|
||
|
[in,string] wchar_t * TreeName
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrDeleteConnection(
|
||
|
[in,string,unique] NWWKSTA_IMPERSONATE_HANDLE Reserved,
|
||
|
[in,string] wchar_t * ConnectionName,
|
||
|
[in] DWORD UseForce
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrQueryServerResource(
|
||
|
[in,string,unique] NWWKSTA_IMPERSONATE_HANDLE Reserved,
|
||
|
[in,string] wchar_t * LocalName,
|
||
|
[in, out,string, unique, size_is(RemoteNameLen * sizeof(wchar_t))] wchar_t * RemoteName,
|
||
|
[in] DWORD RemoteNameLen,
|
||
|
[out] LPDWORD CharsRequired
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrOpenEnumConnections(
|
||
|
[in,string,unique] NWWKSTA_IDENTIFY_HANDLE Reserved,
|
||
|
[in] DWORD ConnectionType,
|
||
|
[out] LPNWWKSTA_CONTEXT_HANDLE EnumHandle
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrOpenEnumContextInfo(
|
||
|
[in,string,unique] NWWKSTA_IDENTIFY_HANDLE Reserved,
|
||
|
[in] DWORD ConnectionType,
|
||
|
[out] LPNWWKSTA_CONTEXT_HANDLE EnumHandle
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrOpenEnumServersAndNdsTrees(
|
||
|
[in,string,unique] NWWKSTA_IDENTIFY_HANDLE Reserved,
|
||
|
[out] LPNWWKSTA_CONTEXT_HANDLE EnumHandle
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrOpenEnumNdsSubTrees_Disk(
|
||
|
[in,string,unique] NWWKSTA_IDENTIFY_HANDLE Reserved,
|
||
|
[in,string] wchar_t * ParentPathName,
|
||
|
[in,out,unique] LPDWORD ClassTypeOfNDSLeaf,
|
||
|
[out] LPNWWKSTA_CONTEXT_HANDLE EnumHandle
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrOpenEnumNdsSubTrees_Print(
|
||
|
[in,string,unique] NWWKSTA_IDENTIFY_HANDLE Reserved,
|
||
|
[in,string] wchar_t * ParentPathName,
|
||
|
[in,out,unique] LPDWORD ClassTypeOfNDSLeaf,
|
||
|
[out] LPNWWKSTA_CONTEXT_HANDLE EnumHandle
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrOpenEnumNdsSubTrees_Any(
|
||
|
[in,string,unique] NWWKSTA_IDENTIFY_HANDLE Reserved,
|
||
|
[in,string] wchar_t * ParentPathName,
|
||
|
[in,out,unique] LPDWORD ClassTypeOfNDSLeaf,
|
||
|
[out] LPNWWKSTA_CONTEXT_HANDLE EnumHandle
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrOpenEnumVolumes(
|
||
|
[in,string,unique] NWWKSTA_IDENTIFY_HANDLE Reserved,
|
||
|
[in,string] wchar_t * ServerName,
|
||
|
[out] LPNWWKSTA_CONTEXT_HANDLE EnumHandle
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrOpenEnumQueues(
|
||
|
[in,string,unique] NWWKSTA_IDENTIFY_HANDLE Reserved,
|
||
|
[in,string] wchar_t * ServerName,
|
||
|
[out] LPNWWKSTA_CONTEXT_HANDLE EnumHandle
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrOpenEnumVolumesQueues(
|
||
|
[in,string,unique] NWWKSTA_IDENTIFY_HANDLE Reserved,
|
||
|
[in,string] wchar_t * ServerName,
|
||
|
[out] LPNWWKSTA_CONTEXT_HANDLE EnumHandle
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrOpenEnumDirectories(
|
||
|
[in,string,unique] NWWKSTA_IDENTIFY_HANDLE Reserved,
|
||
|
[in,string] wchar_t * VolumeName,
|
||
|
[in,string,unique] wchar_t * UserName,
|
||
|
[in,string,unique] wchar_t * Password,
|
||
|
[out] LPNWWKSTA_CONTEXT_HANDLE EnumHandle
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrEnum(
|
||
|
[in] NWWKSTA_CONTEXT_HANDLE EnumHandle,
|
||
|
[in] DWORD_PTR EntriesRequested,
|
||
|
[out,size_is(BufferSize)] LPBYTE Buffer,
|
||
|
[in] DWORD BufferSize,
|
||
|
[out] LPDWORD BytesNeeded,
|
||
|
[out] LPDWORD EntriesRead
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrEnumConnections(
|
||
|
[in] NWWKSTA_CONTEXT_HANDLE EnumHandle,
|
||
|
[in] DWORD EntriesRequested,
|
||
|
[out,size_is(BufferSize)] LPBYTE Buffer,
|
||
|
[in] DWORD BufferSize,
|
||
|
[out] LPDWORD BytesNeeded,
|
||
|
[out] LPDWORD EntriesRead,
|
||
|
[in] DWORD fImplicitConnections
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrCloseEnum(
|
||
|
[in,out] LPNWWKSTA_CONTEXT_HANDLE EnumHandle
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrLogonUser(
|
||
|
[in,string,unique] NWWKSTA_IDENTIFY_HANDLE Reserved,
|
||
|
[in] PLUID LogonId,
|
||
|
[in,string] wchar_t * UserName,
|
||
|
[in,string,unique] wchar_t * Password,
|
||
|
[in,string,unique] wchar_t * ServerName,
|
||
|
[in,string,unique] wchar_t * NdsServerName,
|
||
|
[in,out,string,unique,size_is(LogonCommandLength * sizeof(wchar_t))] wchar_t * LogonCommand,
|
||
|
[in] DWORD LogonCommandLength,
|
||
|
[in] DWORD PrintOption
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrLogoffUser(
|
||
|
[in,string,unique] NWWKSTA_IDENTIFY_HANDLE Reserved,
|
||
|
[in] PLUID LogonId
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrSetInfo(
|
||
|
[in,string,unique] NWWKSTA_IDENTIFY_HANDLE Reserved,
|
||
|
[in] DWORD PrintOption,
|
||
|
[in,string,unique] wchar_t * ServerName
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrValidateUser(
|
||
|
[in,string,unique] NWWKSTA_IDENTIFY_HANDLE Reserved,
|
||
|
[in,string,unique] wchar_t * ServerName
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrOpenPrinter(
|
||
|
[in,string,unique] NWWKSTA_IDENTIFY_HANDLE Reserved,
|
||
|
[in,string] wchar_t *PrinterName,
|
||
|
[in] DWORD fKnownPrinter,
|
||
|
[out] LPNWWKSTA_PRINTER_CONTEXT PrinterHandle
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrClosePrinter(
|
||
|
[in,out] LPNWWKSTA_PRINTER_CONTEXT PrinterHandle
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrGetPrinter(
|
||
|
[in] NWWKSTA_PRINTER_CONTEXT PrinterHandle,
|
||
|
[in] DWORD Level,
|
||
|
[in,out,unique,size_is(BufferSize)] LPBYTE PrinterInfo,
|
||
|
[in] DWORD BufferSize,
|
||
|
[out] LPDWORD BytesNeeded
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrSetPrinter(
|
||
|
[in] NWWKSTA_PRINTER_CONTEXT PrinterHandle,
|
||
|
[in] DWORD Command
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrEnumPrinters(
|
||
|
[in,string,unique] NWWKSTA_IDENTIFY_HANDLE Reserved,
|
||
|
[in,string,unique] wchar_t *ContainerName,
|
||
|
[in,out,unique,size_is(BufferSize)] LPBYTE Buffer,
|
||
|
[in] DWORD BufferSize,
|
||
|
[out] LPDWORD BytesNeeded,
|
||
|
[out] LPDWORD EntriesRead
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrStartDocPrinter(
|
||
|
[in] NWWKSTA_PRINTER_CONTEXT PrinterHandle,
|
||
|
[in,string,unique] wchar_t *DocumentName,
|
||
|
[in,string,unique] wchar_t *UserName,
|
||
|
[in] DWORD PrintOption,
|
||
|
[in] DWORD fGateway
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrWritePrinter(
|
||
|
[in] NWWKSTA_PRINTER_CONTEXT PrinterHandle,
|
||
|
[in,size_is(BufferSize)] LPBYTE Buffer,
|
||
|
[in] DWORD BufferSize,
|
||
|
[out] LPDWORD BytesWritten
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrAbortPrinter(
|
||
|
[in] NWWKSTA_PRINTER_CONTEXT PrinterHandle
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrEndDocPrinter(
|
||
|
[in] NWWKSTA_PRINTER_CONTEXT PrinterHandle
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrEnumJobs(
|
||
|
[in] NWWKSTA_PRINTER_CONTEXT PrinterHandle,
|
||
|
[in] DWORD FirstJobRequested,
|
||
|
[in] DWORD EntriesRequested,
|
||
|
[in] DWORD Level,
|
||
|
[in,out,unique,size_is(BufferSize)] LPBYTE Buffer,
|
||
|
[in] DWORD BufferSize,
|
||
|
[out] LPDWORD BytesNeeded,
|
||
|
[out] LPDWORD EntriesRead
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrGetJob(
|
||
|
[in] NWWKSTA_PRINTER_CONTEXT PrinterHandle,
|
||
|
[in] DWORD JobId,
|
||
|
[in] DWORD Level,
|
||
|
[in,out,unique,size_is(BufferSize)] LPBYTE JobInfo,
|
||
|
[in] DWORD BufferSize,
|
||
|
[out] LPDWORD BytesNeeded
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrSetJob(
|
||
|
[in] NWWKSTA_PRINTER_CONTEXT PrinterHandle,
|
||
|
[in] DWORD JobId,
|
||
|
[in] DWORD Level,
|
||
|
[in, unique] PNW_JOB_INFO pNwJobInfo,
|
||
|
[in] DWORD Command
|
||
|
);
|
||
|
|
||
|
|
||
|
DWORD
|
||
|
NwrAddJob(
|
||
|
[in] NWWKSTA_PRINTER_CONTEXT PrinterHandle,
|
||
|
[out] LPADDJOB_INFO_1W AddInfo1,
|
||
|
[in] DWORD BufferSize,
|
||
|
[out] LPDWORD BytesNeeded
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrScheduleJob(
|
||
|
[in] NWWKSTA_PRINTER_CONTEXT PrinterHandle,
|
||
|
[in] DWORD JobId
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrWaitForPrinterChange(
|
||
|
[in] NWWKSTA_PRINTER_CONTEXT PrinterHandle,
|
||
|
[in,out] LPDWORD Flags
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrEnumGWDevices(
|
||
|
[in,string,unique] NWWKSTA_IDENTIFY_HANDLE Reserved,
|
||
|
[in, out] PDWORD Index,
|
||
|
[in,out,unique,size_is(BufferSize)] LPBYTE Buffer,
|
||
|
[in] DWORD BufferSize,
|
||
|
[out] LPDWORD BytesNeeded,
|
||
|
[out] LPDWORD EntriesRead
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrAddGWDevice(
|
||
|
[in,string,unique] NWWKSTA_IDENTIFY_HANDLE Reserved,
|
||
|
[in,string,unique] wchar_t *DeviceName,
|
||
|
[in,string,unique] wchar_t *RemoteName,
|
||
|
[in,string,unique] wchar_t *AccountName,
|
||
|
[in,string,unique] wchar_t *Password,
|
||
|
[in] DWORD Flags
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrDeleteGWDevice(
|
||
|
[in,string,unique] NWWKSTA_IDENTIFY_HANDLE Reserved,
|
||
|
[in,string,unique] wchar_t *DeviceName,
|
||
|
[in] DWORD Flags
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrQueryGatewayAccount(
|
||
|
[in,string,unique] NWWKSTA_IMPERSONATE_HANDLE Reserved,
|
||
|
[in, out,string, unique, size_is(AccountNameLen * sizeof(wchar_t))] wchar_t * AccountName,
|
||
|
[in] DWORD AccountNameLen,
|
||
|
[out] LPDWORD AccountCharsNeeded,
|
||
|
[in, out,string, unique, size_is(PasswordLen * sizeof(wchar_t))] wchar_t * Password,
|
||
|
[in] DWORD PasswordLen,
|
||
|
[out] LPDWORD PasswordCharsNeeded
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrSetGatewayAccount(
|
||
|
[in,string,unique] NWWKSTA_IMPERSONATE_HANDLE Reserved,
|
||
|
[in,string] wchar_t * AccountName,
|
||
|
[in,string] wchar_t * Passwoed
|
||
|
);
|
||
|
|
||
|
#ifndef QFE_BUILD
|
||
|
|
||
|
DWORD
|
||
|
NwrGetService(
|
||
|
[in, string, unique] NWWKSTA_IDENTIFY_HANDLE Reserved,
|
||
|
[in] WORD nServiceType,
|
||
|
[in, string] wchar_t *lpServiceName,
|
||
|
[in] DWORD dwProperties,
|
||
|
[in, out, unique, size_is(dwBufferLength)] LPBYTE lpServiceInfo,
|
||
|
[in] DWORD dwBufferLength,
|
||
|
[out] LPDWORD lpdwBytesNeeded
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrSetService(
|
||
|
[in, string, unique] NWWKSTA_IDENTIFY_HANDLE Reserved,
|
||
|
[in] DWORD dwOperation,
|
||
|
[in] LPSERVICE_INFOW lpServiceInfo,
|
||
|
[in] WORD nServiceType
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrGetUser(
|
||
|
[in, string, unique] NWWKSTA_IDENTIFY_HANDLE Reserved,
|
||
|
[in, string, unique] wchar_t * lpRemoteName,
|
||
|
[out, size_is(dwUserNameBufferSize)] LPBYTE lpUserName,
|
||
|
[in] DWORD dwUserNameBufferSize,
|
||
|
[out] LPDWORD lpdwCharsRequired
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrGetResourceInformation(
|
||
|
[in, string, unique] NWWKSTA_IDENTIFY_HANDLE Reserved,
|
||
|
[in, string, unique] wchar_t * lpRemoteName,
|
||
|
[in] DWORD dwType,
|
||
|
[out, size_is(dwBufferSize)] LPBYTE lpBuffer,
|
||
|
[in] DWORD dwBufferSize,
|
||
|
[out] LPDWORD lpdwBytesNeeded,
|
||
|
[out] LPDWORD lpdwSystemOffset
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrGetConnectionPerformance(
|
||
|
[in, string, unique] NWWKSTA_IDENTIFY_HANDLE Reserved,
|
||
|
[in, string, unique] wchar_t * lpRemoteName,
|
||
|
[out, size_is(dwBufferSize)] LPBYTE lpNetConnectInfo,
|
||
|
[in] DWORD dwBufferSize
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrGetResourceParent(
|
||
|
[in, string, unique] NWWKSTA_IDENTIFY_HANDLE Reserved,
|
||
|
[in, string, unique] wchar_t * lpRemoteName,
|
||
|
[in] DWORD dwType,
|
||
|
[out, size_is(dwBufferSize)] LPBYTE lpBuffer,
|
||
|
[in] DWORD dwBufferSize,
|
||
|
[out] LPDWORD lpdwBytesNeeded
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
NwrSetLogonScript(
|
||
|
[in,string,unique] NWWKSTA_IDENTIFY_HANDLE Reserved,
|
||
|
[in] DWORD ScriptOptions
|
||
|
);
|
||
|
|
||
|
|
||
|
#endif
|
||
|
}
|