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.
 
 
 
 
 
 

337 lines
19 KiB

/*
* SVCAPI.H
*
* RSM Service : Service API header (NEW)
*
* Author: ErvinP
*
* (c) 2001 Microsoft Corporation
*
*/
// BUGBUG - contains many redundancies and errors
HANDLE WINAPI OpenNtmsServerSessionW( LPCWSTR lpServer,
LPCWSTR lpApplication,
LPCWSTR lpClientName,
LPCWSTR lpUserName,
DWORD dwOptions,
LPVOID lpConnectionContext);
HANDLE WINAPI OpenNtmsSessionA( LPCSTR lpServer,
LPCSTR lpApplication,
LPCSTR lpClientName,
LPCSTR lpUserName,
DWORD dwOptions,
LPVOID lpConnectionContext);
HRESULT WINAPI CloseNtmsSession(HANDLE hSession);
HRESULT WINAPI SubmitNtmsOperatorRequestW( HANDLE hSession,
DWORD dwRequest,
LPCWSTR lpMessage,
LPNTMS_GUID lpArg1Id,
LPNTMS_GUID lpArg2Id,
LPNTMS_GUID lpRequestId);
HRESULT WINAPI SubmitNtmsOperatorRequestA( HANDLE hSession,
DWORD dwRequest,
LPCSTR lpMessage,
LPNTMS_GUID lpArg1Id,
LPNTMS_GUID lpArg2Id,
LPNTMS_GUID lpRequestId);
HRESULT WINAPI WaitForNtmsOperatorRequest( HANDLE hSession,
LPNTMS_GUID lpRequestId,
DWORD dwTimeout);
HRESULT WINAPI CancelNtmsOperatorRequest(HANDLE hSession, LPNTMS_GUID lpRequestId);
HRESULT WINAPI SatisfyNtmsOperatorRequest(HANDLE hSession, LPNTMS_GUID lpRequestId);
HRESULT WINAPI ImportNtmsDatabase(HANDLE hSession);
HRESULT WINAPI ExportNtmsDatabase(HANDLE hSession);
HRESULT WINAPI GetNtmsMountDrives( HANDLE hSession,
LPNTMS_MOUNT_INFORMATION lpMountInformation,
LPNTMS_GUID lpDriveId,
DWORD dwCount);
HRESULT WINAPI AllocateNtmsMedia( HANDLE hSession,
LPNTMS_GUID lpMediaPool,
LPNTMS_GUID lpPartition, // optional
LPNTMS_GUID lpMediaId, // OUTPUT, media id o
DWORD dwOptions,
DWORD dwTimeout,
LPNTMS_ALLOCATION_INFORMATION lpAllocateInformation);
HRESULT WINAPI DeallocateNtmsMedia( HANDLE hSession,
LPNTMS_GUID lpMediaId,
DWORD dwOptions);
HRESULT WINAPI SwapNtmsMedia( HANDLE hSession,
LPNTMS_GUID lpMediaId1,
LPNTMS_GUID lpMediaId2);
HRESULT WINAPI DecommissionNtmsMedia( HANDLE hSession,
LPNTMS_GUID lpMediaId);
HRESULT WINAPI SetNtmsMediaComplete( HANDLE hSession,
LPNTMS_GUID lpMediaId);
HRESULT WINAPI DeleteNtmsMedia( HANDLE hSession,
LPNTMS_GUID lpMediaId);
HRESULT WINAPI CreateNtmsMediaPoolA( HANDLE hSession,
LPCSTR lpPoolName,
LPNTMS_GUID lpMediaType,
DWORD dwAction,
LPSECURITY_ATTRIBUTES lpSecurityAttributes,
OUT LPNTMS_GUID lpPoolId);
HRESULT WINAPI CreateNtmsMediaPoolW( HANDLE hSession,
LPCWSTR lpPoolName,
LPNTMS_GUID lpMediaType,
DWORD dwAction,
LPSECURITY_ATTRIBUTES lpSecurityAttributes,
OUT LPNTMS_GUID lpPoolId);
HRESULT WINAPI GetNtmsMediaPoolNameA( HANDLE hSession,
LPNTMS_GUID lpPoolId,
LPSTR lpBufName,
LPDWORD lpdwNameSize);
HRESULT WINAPI GetNtmsMediaPoolNameW( HANDLE hSession,
LPNTMS_GUID lpPoolId,
LPWSTR lpBufName,
LPDWORD lpdwNameSize);
HRESULT WINAPI MoveToNtmsMediaPool( HANDLE hSession,
LPNTMS_GUID lpMediaId,
LPNTMS_GUID lpPoolId);
HRESULT WINAPI DeleteNtmsMediaPool(HANDLE hSession, LPNTMS_GUID lpPoolId);
HRESULT WINAPI AddNtmsMediaType( HANDLE hSession,
LPNTMS_GUID lpMediaTypeId,
LPNTMS_GUID lpLibId);
HRESULT WINAPI DeleteNtmsMediaType( HANDLE hSession,
LPNTMS_GUID lpMediaTypeId,
LPNTMS_GUID lpLibId);
HRESULT WINAPI ChangeNtmsMediaType( HANDLE hSession,
LPNTMS_GUID lpMediaId,
LPNTMS_GUID lpPoolId);
HRESULT WINAPI MountNtmsMedia( HANDLE hSession,
LPNTMS_GUID lpMediaId,
LPNTMS_GUID lpDriveId,
DWORD dwCount,
DWORD dwOptions,
int dwPriority,
DWORD dwTimeout,
LPNTMS_MOUNT_INFORMATION lpMountInformation);
HRESULT WINAPI DismountNtmsMedia( HANDLE hSession,
LPNTMS_GUID lpMediaId,
DWORD dwCount,
DWORD dwOptions);
DWORD WINAPI EjectNtmsMedia( HANDLE hSession,
LPNTMS_GUID lpMediaId,
LPNTMS_GUID lpEjectOperation,
DWORD dwAction);
DWORD WINAPI InjectNtmsMedia( HANDLE hSession,
LPNTMS_GUID lpLibraryId,
LPNTMS_GUID lpInjectOperation,
DWORD dwAction);
DWORD WINAPI AccessNtmsLibraryDoor( HANDLE hSession,
LPNTMS_GUID lpLibraryId,
DWORD dwAction);
DWORD WINAPI CleanNtmsDrive( HANDLE hSession,
LPNTMS_GUID lpDriveId);
DWORD WINAPI DismountNtmsDrive( HANDLE hSession,
LPNTMS_GUID lpDriveId);
DWORD WINAPI InventoryNtmsLibrary(
HANDLE hSession,
LPNTMS_GUID lpLibraryId,
DWORD dwAction
)
DWORD WINAPI UpdateNtmsOmidInfo( HANDLE hSession,
LPNTMS_GUID lpMediaId,
DWORD labelType,
DWORD numberOfBytes,
LPVOID lpBuffer);
DWORD WINAPI CancelNtmsLibraryRequest( HANDLE hSession,
LPNTMS_GUID lpRequestId);
DWORD WINAPI ReserveNtmsCleanerSlot( HANDLE hSession,
LPNTMS_GUID lpLibrary,
LPNTMS_GUID lpSlot);
DWORD WINAPI ReleaseNtmsCleanerSlot( HANDLE hSession,
LPNTMS_GUID lpLibrary);
DWORD WINAPI InjectNtmsCleaner( HANDLE hSession,
LPNTMS_GUID lpLibrary,
LPNTMS_GUID lpInjectOperation,
DWORD dwNumberOfCleansLeft,
DWORD dwAction);
DWORD WINAPI EjectNtmsCleaner( HANDLE hSession,
LPNTMS_GUID lpLibrary,
LPNTMS_GUID lpEjectOperation,
DWORD dwAction);
DWORD WINAPI DeleteNtmsLibrary(HANDLE hSession, LPNTMS_GUID lpLibraryId);
DWORD WINAPI DeleteNtmsDrive(HANDLE hSession, LPNTMS_GUID lpDriveId);
DWORD WINAPI GetNtmsRequestOrder( HANDLE hSession,
LPNTMS_GUID lpRequestId,
LPDWORD lpdwOrderNumber);
DWORD WINAPI SetNtmsRequestOrder( HANDLE hSession,
LPNTMS_GUID lpRequestId,
DWORD dwOrderNumber);
DWORD WINAPI DeleteNtmsRequests( HANDLE hSession,
LPNTMS_GUID lpRequestId,
DWORD dwType,
DWORD dwCount);
DWORD WINAPI BeginNtmsDeviceChangeDetection(HANDLE hSession, LPHANDLE lpDetectHandle);
DWORD WINAPI SetNtmsDeviceChangeDetection( HANDLE hSession,
HANDLE DetectHandle,
LPNTMS_GUID lpRequestId,
DWORD dwType,
DWORD dwCount);
DWORD WINAPI EndNtmsDeviceChangeDetection(HANDLE hSession, HANDLE DetectHandle);
/******** BUGBUG: INtmsObjectManagement1 APIs *********************/
DWORD WINAPI GetNtmsObjectSecurity( HANDLE hSession,
LPNTMS_GUID lpObjectId,
DWORD dwType,
SECURITY_INFORMATION RequestedInformation,
PSECURITY_DESCRIPTOR lpSecurityDescriptor,
DWORD nLength,
LPDWORD lpnLengthNeeded);
DWORD WINAPI SetNtmsObjectSecurity( HANDLE hSession,
LPNTMS_GUID lpObjectId,
DWORD dwType,
SECURITY_INFORMATION SecurityInformation,
PSECURITY_DESCRIPTOR lpSecurityDescriptor);
DWORD WINAPI GetNtmsObjectAttributeA( HANDLE hSession,
LPNTMS_GUID lpObjectId,
DWORD dwType,
LPCSTR lpAttributeName,
LPVOID lpAttributeData,
LPDWORD lpAttributeSize);
DWORD WINAPI GetNtmsObjectAttributeW( HANDLE hSession,
LPNTMS_GUID lpObjectId,
DWORD dwType,
LPCWSTR lpAttributeName,
LPVOID lpAttributeData,
LPDWORD lpAttributeSize);
DWORD WINAPI SetNtmsObjectAttributeA( HANDLE hSession,
LPNTMS_GUID lpObjectId,
DWORD dwType,
LPCSTR lpAttributeName,
LPVOID lpAttributeData,
DWORD dwAttributeSize);
DWORD WINAPI SetNtmsObjectAttributeW( HANDLE hSession,
LPNTMS_GUID lpObjectId,
DWORD dwType,
LPCWSTR lpAttributeName,
LPVOID lpAttributeData,
DWORD AttributeSize);
DWORD WINAPI EnumerateNtmsObject( HANDLE hSession,
const LPNTMS_GUID lpContainerId,
LPNTMS_GUID lpList,
LPDWORD lpdwListSize,
DWORD dwType,
DWORD dwOptions);
DWORD WINAPI EnableNtmsObject( HANDLE hSession,
DWORD dwType,
LPNTMS_GUID lpObjectId);
DWORD WINAPI DisableNtmsObject( HANDLE hSession,
DWORD dwType,
LPNTMS_GUID lpObjectId);
/******* BUGBUG: INtmsObjectInfo1 APIs ****************************/
// BUGBUG - these 4 functions have another form with type,size as last args
DWORD WINAPI GetNtmsServerObjectInformationA( HANDLE hSession,
LPNTMS_GUID lpObjectId,
LPNTMS_OBJECTINFORMATIONA lpInfo,
int revision);
DWORD WINAPI GetNtmsServerObjectInformationW( HANDLE hSession,
LPNTMS_GUID lpObjectId,
LPNTMS_OBJECTINFORMATIONW lpInfo,
int revision);
DWORD WINAPI SetNtmsServerObjectInformationA( HANDLE hSession,
LPNTMS_GUID lpObjectId,
LPNTMS_OBJECTINFORMATIONA lpInfo,
int revision);
DWORD WINAPI SetNtmsServerObjectInformationW( HANDLE hSession,
LPNTMS_GUID lpObjectId,
LPNTMS_OBJECTINFORMATIONW lpInfo,
int revision);
DWORD WINAPI CreateNtmsMediaA( HANDLE hSession,
LPNTMS_OBJECTINFORMATIONA lpMedia,
LPNTMS_OBJECTINFORMATIONA lpList,
DWORD dwOptions);
DWORD WINAPI CreateNtmsMediaW( HANDLE hSession,
LPNTMS_OBJECTINFORMATIONW lpMedia,
LPNTMS_OBJECTINFORMATIONW lpList,
DWORD dwOptions);
DWORD WINAPI GetNtmsObjectInformationA( HANDLE hSession,
LPNTMS_GUID lpObjectId,
LPNTMS_OBJECTINFORMATIONA lpInfo);
DWORD WINAPI GetNtmsObjectInformationW( HANDLE hSession,
LPNTMS_GUID lpObjectId,
LPNTMS_OBJECTINFORMATIONW lpInfo);
DWORD WINAPI SetNtmsObjectInformationA( HANDLE hSession,
LPNTMS_GUID lpObjectId,
LPNTMS_OBJECTINFORMATIONA lpInfo);
DWORD WINAPI SetNtmsObjectInformationW( HANDLE hSession,
LPNTMS_GUID lpObjectId,
LPNTMS_OBJECTINFORMATIONW lpInfo);
DWORD WINAPI SubmitNtmsOperatorRequestA( HANDLE hSession,
DWORD dwRequest,
LPCSTR lpMessage,
LPNTMS_GUID lpArg1Id,
LPNTMS_GUID lpArg2Id,
LPNTMS_GUID lpRequestId);
DWORD WINAPI SubmitNtmsOperatorRequestW( HANDLE hSession,
DWORD dwRequest,
LPCWSTR lpMessage,
LPNTMS_GUID lpArg1Id,
LPNTMS_GUID lpArg2Id,
LPNTMS_GUID lpRequestId);
DWORD WINAPI WaitForNtmsOperatorRequest( HANDLE hSession,
LPNTMS_GUID lpRequestId,
DWORD dwTimeout);
DWORD WINAPI CancelNtmsOperatorRequest(HANDLE hSession, LPNTMS_GUID lpRequestId);
DWORD WINAPI SatisfyNtmsOperatorRequest(HANDLE hSession, LPNTMS_GUID lpRequestId);
HANDLE WINAPI OpenNtmsNotification(HANDLE hSession, DWORD dwType);
DWORD WINAPI WaitForNtmsNotification( HANDLE hNotification,
LPNTMS_NOTIFICATIONINFORMATION lpNotificationInformation,
DWORD dwTimeout);
DWORD WINAPI CloseNtmsNotification(HANDLE hNotification);
DWORD WINAPI ImportNtmsDatabase(HANDLE hSession);
DWORD WINAPI ExportNtmsDatabase(HANDLE hSession);
DWORD WINAPI EjectDiskFromSADriveA( LPCSTR lpComputerName,
LPCSTR lpAppName,
LPCSTR lpDeviceName,
HWND hWnd,
LPCSTR lpTitle,
LPCSTR lpMessage,
DWORD dwOptions);
DWORD WINAPI EjectDiskFromSADriveW( LPCWSTR lpComputerName,
LPCWSTR lpAppName,
LPCWSTR lpDeviceName,
HWND hWnd,
LPCWSTR lpTitle,
LPCWSTR lpMessage,
DWORD dwOptions);
DWORD WINAPI GetVolumesFromDriveA( LPSTR pszDriveName,
LPSTR* VolumeNameBufferPtr,
LPSTR* DriveLetterBufferPtr);
DWORD WINAPI GetVolumesFromDriveW( LPWSTR pszDriveName,
LPWSTR *VolumeNameBufferPtr,
LPWSTR *DriveLetterBufferPtr);
DWORD WINAPI IdentifyNtmsSlot( HANDLE hSession,
LPNTMS_GUID lpSlotId,
DWORD dwOption);
DWORD WINAPI GetNtmsUIOptionsA( HANDLE hSession,
const LPNTMS_GUID lpObjectId,
DWORD dwType,
LPSTR lpszDestination,
LPDWORD lpAttributeSize);
DWORD WINAPI GetNtmsUIOptionsW( HANDLE hSession,
const LPNTMS_GUID lpObjectId,
DWORD dwType,
LPWSTR lpszDestination,
LPDWORD lpdwSize);
DWORD WINAPI SetNtmsUIOptionsA( HANDLE hSession,
const LPNTMS_GUID lpObjectId,
DWORD dwType,
DWORD dwOperation,
LPCSTR lpszDestination);
DWORD WINAPI SetNtmsUIOptionsW( HANDLE hSession,
const LPNTMS_GUID lpObjectId,
DWORD dwType,
DWORD dwOperation,
LPCWSTR lpszDestination);