windows-nt/Source/XPSP1/NT/net/sfm/afp/service/idl/afpsvc.idl
2020-09-26 16:20:57 +08:00

335 lines
7.4 KiB
Plaintext
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/********************************************************************/
/** 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
);
}