127 lines
2.7 KiB
Plaintext
127 lines
2.7 KiB
Plaintext
|
/*++
|
||
|
|
||
|
Copyright (c) 1990 Microsoft Corporation
|
||
|
|
||
|
Module Name:
|
||
|
|
||
|
ftpsvc.idl
|
||
|
|
||
|
Abstract:
|
||
|
|
||
|
Contains the I_Ftp (ftpsvc Remote) RPC interface specification for the
|
||
|
APIs associated with the FTP Daemon service.
|
||
|
Also contains the RPC specific data structures for these API.
|
||
|
|
||
|
Author:
|
||
|
|
||
|
Dan Hinsley (DanHi) 23-Mar-1993
|
||
|
|
||
|
Environment:
|
||
|
|
||
|
User Mode - Win32 - MIDL
|
||
|
|
||
|
Revision History:
|
||
|
|
||
|
MuraliK 20-Sept-1995 Updated structures used in RPC.
|
||
|
|
||
|
--*/
|
||
|
|
||
|
//
|
||
|
// Interface Attributes
|
||
|
//
|
||
|
|
||
|
[
|
||
|
uuid(5C89F409-09CC-101A-89F3-02608C4D2361),
|
||
|
version(1.1),
|
||
|
#ifdef __midl
|
||
|
ms_union,
|
||
|
#endif // __midl
|
||
|
pointer_default(unique)
|
||
|
]
|
||
|
|
||
|
|
||
|
//
|
||
|
// Interface Keyword
|
||
|
//
|
||
|
|
||
|
interface ftpsvc
|
||
|
|
||
|
|
||
|
//
|
||
|
// Interface Body
|
||
|
//
|
||
|
|
||
|
{
|
||
|
|
||
|
import "infoimp.idl";
|
||
|
#include <lmcons.h>
|
||
|
|
||
|
//
|
||
|
// ---------------------------------------------------------------//
|
||
|
//
|
||
|
|
||
|
|
||
|
typedef [handle] LPWSTR FTP_IMPERSONATE_HANDLE;
|
||
|
|
||
|
typedef [handle] LPWSTR FTP_IDENTIFY_HANDLE;
|
||
|
|
||
|
|
||
|
//
|
||
|
// Ftp Daemon APIs
|
||
|
//
|
||
|
|
||
|
typedef struct _FTP_USER_ENUM_STRUCT {
|
||
|
DWORD EntriesRead;
|
||
|
[size_is(EntriesRead)] LPFTP_USER_INFO Buffer;
|
||
|
} FTP_USER_ENUM_STRUCT, *LPFTP_USER_ENUM_STRUCT;
|
||
|
|
||
|
NET_API_STATUS I_FtprEnumerateUsers(
|
||
|
[in, string, unique] FTP_IMPERSONATE_HANDLE pszServer,
|
||
|
[out] LPFTP_USER_ENUM_STRUCT Buffer );
|
||
|
|
||
|
NET_API_STATUS I_FtprDisconnectUser(
|
||
|
[in,string,unique] FTP_IMPERSONATE_HANDLE pszServer,
|
||
|
[in] DWORD idUser );
|
||
|
|
||
|
NET_API_STATUS I_FtprQueryVolumeSecurity(
|
||
|
[in, string, unique] FTP_IMPERSONATE_HANDLE pszServer,
|
||
|
[out] LPDWORD lpdwReadAccess,
|
||
|
[out] LPDWORD lpdwWriteAccess );
|
||
|
|
||
|
NET_API_STATUS I_FtprSetVolumeSecurity(
|
||
|
[in, string, unique] FTP_IMPERSONATE_HANDLE pszServer,
|
||
|
[in] DWORD dwReadAccess,
|
||
|
[in] DWORD dwWriteAccess );
|
||
|
|
||
|
typedef [switch_type(unsigned long)] union _STATISTICS_INFO
|
||
|
{
|
||
|
[case(0)]
|
||
|
LPFTP_STATISTICS_0 FtpStats0;
|
||
|
[default]
|
||
|
;
|
||
|
} STATISTICS_INFO, * LPSTATISTICS_INFO;
|
||
|
|
||
|
NET_API_STATUS I_FtprQueryStatistics(
|
||
|
[in, string, unique] FTP_IMPERSONATE_HANDLE pszServer,
|
||
|
[in] DWORD Level,
|
||
|
[out, switch_is(Level)] LPSTATISTICS_INFO StatsInfo );
|
||
|
|
||
|
NET_API_STATUS I_FtprClearStatistics(
|
||
|
[in, string, unique] FTP_IMPERSONATE_HANDLE pszServer );
|
||
|
|
||
|
NET_API_STATUS
|
||
|
NET_API_FUNCTION
|
||
|
FtprGetAdminInformation(
|
||
|
[in, string, unique] FTP_IMPERSONATE_HANDLE pszServer,
|
||
|
[out] LPFTP_CONFIG_INFO * ppConfig
|
||
|
);
|
||
|
|
||
|
NET_API_STATUS
|
||
|
NET_API_FUNCTION
|
||
|
FtprSetAdminInformation(
|
||
|
[in, string, unique] FTP_IMPERSONATE_HANDLE pszServer,
|
||
|
[in] LPFTP_CONFIG_INFO pConfig
|
||
|
);
|
||
|
|
||
|
}
|