windows-nt/Source/XPSP1/NT/net/sfm/afp/service/idl/afpsvc.idl

335 lines
7.4 KiB
Plaintext
Raw Normal View History

2020-09-26 03:20:57 -05:00
/********************************************************************/
/** Copyright(c) 1991 Microsoft Corporation. **/
/********************************************************************/
//***
//
// Filename: afpsvc.idl
//
// Description: Contains the AfpAdminr (Afp Remote) RPC interface
// specification for the API associated with the Afp Server
// Service. Also contains the RPC specific data structures for
// these APIs.
//
// History:
// June 11,1992. NarenG Created original version.
//
// ??? Use UUID generator when it is working ???
// ??? Do we still need the #define LPWSTR ???
//
// Interface Attributes
//
[
uuid(4B324FC8-1670-01D3-1278-5A47BF6EE188),
version(0.0),
pointer_default(unique)
]
interface afpsvc
{
import "import.idl";
//
// BUGBUG - remove this when MIDL understands LPWSTR
//
#define LPWSTR wchar_t*
typedef [handle] AFP_SERVER_HANDLE AFPSVC_HANDLE;
//
// Volume API
//
//
// Structures - AfpAdminrVolume
//
typedef struct _VOLUME_INFO_CONTAINER {
DWORD dwEntriesRead;
[size_is(dwEntriesRead)] PAFP_VOLUME_INFO pBuffer;
} VOLUME_INFO_CONTAINER, *PVOLUME_INFO_CONTAINER;
//
// Function Prototypes - AfpAdminVolume
//
DWORD
AfpAdminrVolumeEnum (
[in] AFPSVC_HANDLE hServer,
[in,out] PVOLUME_INFO_CONTAINER pInfoStruct,
[in] DWORD dwPreferedMaximumLength,
[out] LPDWORD lpdwTotalEntries,
[in,out,unique] LPDWORD lpdwResumeHandle
);
DWORD
AfpAdminrVolumeSetInfo (
[in] AFPSVC_HANDLE hServer,
[in] PAFP_VOLUME_INFO pAfpVolumeInfo,
[in] DWORD dwParmNum
);
DWORD
AfpAdminrVolumeGetInfo (
[in] AFPSVC_HANDLE hServer,
[in,string] LPWSTR lpwsVolumeName,
[out] PAFP_VOLUME_INFO* ppAfpVolumeInfo
);
DWORD
AfpAdminrVolumeDelete(
[in] AFPSVC_HANDLE hServer,
[in,string] LPWSTR lpwsVolumeName
);
DWORD
AfpAdminrVolumeAdd(
[in] AFPSVC_HANDLE hServer,
[in] PAFP_VOLUME_INFO pAfpVolumeInfo
);
DWORD
AfpAdminrInvalidVolumeEnum (
[in] AFPSVC_HANDLE hServer,
[in,out] PVOLUME_INFO_CONTAINER pInfoStruct
);
DWORD
AfpAdminrInvalidVolumeDelete(
[in] AFPSVC_HANDLE hServer,
[in,string] LPWSTR lpwsVolumeName
);
//
// Function prototypes - AfpAdminDirectory
//
DWORD
AfpAdminrDirectoryGetInfo(
[in] AFPSVC_HANDLE hServer,
[in,string] LPWSTR lpwsPath,
[in,out] PAFP_DIRECTORY_INFO* ppAfpDirectoryInfo
);
DWORD
AfpAdminrDirectorySetInfo(
[in] AFPSVC_HANDLE hServer,
[in] PAFP_DIRECTORY_INFO pAfpDirectoryInfo,
[in] DWORD dwParmNum
);
//
// Function prototypes - AfpAdminServer
//
DWORD
AfpAdminrServerGetInfo(
[in] AFPSVC_HANDLE hServer,
[in,out] PAFP_SERVER_INFO* ppAfpServerInfo
);
DWORD
AfpAdminrServerSetInfo(
[in] AFPSVC_HANDLE hServer,
[in] PAFP_SERVER_INFO pAfpServerInfo,
[in] DWORD dwParmNum
);
//
// Session API
//
//
// Structures - AfpAdminrSession
//
typedef struct _SESSION_INFO_CONTAINER {
DWORD dwEntriesRead;
[size_is(dwEntriesRead)] PAFP_SESSION_INFO pBuffer;
} SESSION_INFO_CONTAINER, *PSESSION_INFO_CONTAINER;
//
// Function Prototypes - AfpAdminSession
//
DWORD
AfpAdminrSessionEnum (
[in] AFPSVC_HANDLE hServer,
[in,out] PSESSION_INFO_CONTAINER pInfoStruct,
[in] DWORD dwPreferedMaximumLength,
[out] LPDWORD lpdwTotalEntries,
[in,out,unique] LPDWORD lpdwResumeHandle
);
DWORD
AfpAdminrSessionClose(
[in] AFPSVC_HANDLE hServer,
[in] DWORD dwSessionId
);
//
// Connection API
//
//
// Structures - AfpAdminrConnection
//
typedef struct _CONN_INFO_CONTAINER {
DWORD dwEntriesRead;
[size_is(dwEntriesRead)] PAFP_CONNECTION_INFO pBuffer;
} CONN_INFO_CONTAINER, *PCONN_INFO_CONTAINER;
//
// Function Prototypes - AfpAdminConnection
//
DWORD
AfpAdminrConnectionEnum (
[in] AFPSVC_HANDLE hServer,
[in,out] PCONN_INFO_CONTAINER pInfoStruct,
[in] DWORD dwFilter,
[in] DWORD dwId,
[in] DWORD dwPreferedMaximumLength,
[out] LPDWORD lpdwTotalEntries,
[in,out,unique] LPDWORD lpdwResumeHandle
);
DWORD
AfpAdminrConnectionClose(
[in] AFPSVC_HANDLE hServer,
[in] DWORD dwConnectionId
);
//
// File API
//
//
// Structures - AfpAdminrFile
//
typedef struct _FILE_INFO_CONTAINER {
DWORD dwEntriesRead;
[size_is(dwEntriesRead)] PAFP_FILE_INFO pBuffer;
} FILE_INFO_CONTAINER, *PFILE_INFO_CONTAINER;
//
// Function Prototypes - AfpAdminFile
//
DWORD
AfpAdminrFileEnum (
[in] AFPSVC_HANDLE hServer,
[in,out] PFILE_INFO_CONTAINER pInfoStruct,
[in] DWORD dwPreferedMaximumLength,
[out] LPDWORD lpdwTotalEntries,
[in,out,unique] LPDWORD lpdwResumeHandle
);
DWORD
AfpAdminrFileClose(
[in] AFPSVC_HANDLE hServer,
[in] DWORD dwCloseId
);
//
// ETC Mappings API
//
//
// Function prototypes - AfpAdminETCMap
//
DWORD
AfpAdminrETCMapGetInfo(
[in] AFPSVC_HANDLE hServer,
[in,out] PAFP_ETCMAP_INFO *ppAfpETCMapInfo
);
DWORD
AfpAdminrETCMapAdd(
[in] AFPSVC_HANDLE hServer,
[in] PAFP_TYPE_CREATOR pAfpTypeCreator
);
DWORD
AfpAdminrETCMapDelete(
[in] AFPSVC_HANDLE hServer,
[in] PAFP_TYPE_CREATOR pAfpTypeCreator
);
DWORD
AfpAdminrETCMapSetInfo(
[in] AFPSVC_HANDLE hServer,
[in] PAFP_TYPE_CREATOR pAfpTypeCreator
);
DWORD
AfpAdminrETCMapAssociate(
[in] AFPSVC_HANDLE hServer,
[in] PAFP_TYPE_CREATOR pAfpTypeCreator,
[in] PAFP_EXTENSION pAfpExtension
);
//
// Statistics APIs
//
DWORD
AfpAdminrStatisticsGet(
[in] AFPSVC_HANDLE hServer,
[in,out] PAFP_STATISTICS_INFO * ppAfpStatisticsInfo
);
DWORD
AfpAdminrStatisticsGetEx(
[in] AFPSVC_HANDLE hServer,
[in,out] PAFP_STATISTICS_INFO_EX * ppAfpStatisticsInfo
);
DWORD
AfpAdminrStatisticsClear(
[in] AFPSVC_HANDLE hServer
);
//
// Profile API
//
DWORD
AfpAdminrProfileGet(
[in] AFPSVC_HANDLE hServer,
[in,out] PAFP_PROFILE_INFO * ppAfpProfileInfo
);
DWORD
AfpAdminrProfileClear(
[in] AFPSVC_HANDLE hServer
);
//
// Message API
//
DWORD
AfpAdminrMessageSend(
[in] AFPSVC_HANDLE hServer,
[in] PAFP_MESSAGE_INFO pAfpMessageInfo
);
DWORD
AfpAdminrFinderSetInfo(
[in] AFPSVC_HANDLE hServer,
[in,string] LPWSTR lpwsType,
[in,string] LPWSTR lpwsCreator,
[in,string] LPWSTR lpwsData,
[in,string] LPWSTR lpwsResource,
[in,string] LPWSTR lpwsTarget,
[in] DWORD dwParmNum
);
}