Source code of Windows XP (NT5)
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.

126 lines
2.7 KiB

  1. /*++
  2. Copyright (c) 1990 Microsoft Corporation
  3. Module Name:
  4. ftpsvc.idl
  5. Abstract:
  6. Contains the I_Ftp (ftpsvc Remote) RPC interface specification for the
  7. APIs associated with the FTP Daemon service.
  8. Also contains the RPC specific data structures for these API.
  9. Author:
  10. Dan Hinsley (DanHi) 23-Mar-1993
  11. Environment:
  12. User Mode - Win32 - MIDL
  13. Revision History:
  14. MuraliK 20-Sept-1995 Updated structures used in RPC.
  15. --*/
  16. //
  17. // Interface Attributes
  18. //
  19. [
  20. uuid(5C89F409-09CC-101A-89F3-02608C4D2361),
  21. version(1.1),
  22. #ifdef __midl
  23. ms_union,
  24. #endif // __midl
  25. pointer_default(unique)
  26. ]
  27. //
  28. // Interface Keyword
  29. //
  30. interface ftpsvc
  31. //
  32. // Interface Body
  33. //
  34. {
  35. import "infoimp.idl";
  36. #include <lmcons.h>
  37. //
  38. // ---------------------------------------------------------------//
  39. //
  40. typedef [handle] LPWSTR FTP_IMPERSONATE_HANDLE;
  41. typedef [handle] LPWSTR FTP_IDENTIFY_HANDLE;
  42. //
  43. // Ftp Daemon APIs
  44. //
  45. typedef struct _FTP_USER_ENUM_STRUCT {
  46. DWORD EntriesRead;
  47. [size_is(EntriesRead)] LPFTP_USER_INFO Buffer;
  48. } FTP_USER_ENUM_STRUCT, *LPFTP_USER_ENUM_STRUCT;
  49. NET_API_STATUS I_FtprEnumerateUsers(
  50. [in, string, unique] FTP_IMPERSONATE_HANDLE pszServer,
  51. [out] LPFTP_USER_ENUM_STRUCT Buffer );
  52. NET_API_STATUS I_FtprDisconnectUser(
  53. [in,string,unique] FTP_IMPERSONATE_HANDLE pszServer,
  54. [in] DWORD idUser );
  55. NET_API_STATUS I_FtprQueryVolumeSecurity(
  56. [in, string, unique] FTP_IMPERSONATE_HANDLE pszServer,
  57. [out] LPDWORD lpdwReadAccess,
  58. [out] LPDWORD lpdwWriteAccess );
  59. NET_API_STATUS I_FtprSetVolumeSecurity(
  60. [in, string, unique] FTP_IMPERSONATE_HANDLE pszServer,
  61. [in] DWORD dwReadAccess,
  62. [in] DWORD dwWriteAccess );
  63. typedef [switch_type(unsigned long)] union _STATISTICS_INFO
  64. {
  65. [case(0)]
  66. LPFTP_STATISTICS_0 FtpStats0;
  67. [default]
  68. ;
  69. } STATISTICS_INFO, * LPSTATISTICS_INFO;
  70. NET_API_STATUS I_FtprQueryStatistics(
  71. [in, string, unique] FTP_IMPERSONATE_HANDLE pszServer,
  72. [in] DWORD Level,
  73. [out, switch_is(Level)] LPSTATISTICS_INFO StatsInfo );
  74. NET_API_STATUS I_FtprClearStatistics(
  75. [in, string, unique] FTP_IMPERSONATE_HANDLE pszServer );
  76. NET_API_STATUS
  77. NET_API_FUNCTION
  78. FtprGetAdminInformation(
  79. [in, string, unique] FTP_IMPERSONATE_HANDLE pszServer,
  80. [out] LPFTP_CONFIG_INFO * ppConfig
  81. );
  82. NET_API_STATUS
  83. NET_API_FUNCTION
  84. FtprSetAdminInformation(
  85. [in, string, unique] FTP_IMPERSONATE_HANDLE pszServer,
  86. [in] LPFTP_CONFIG_INFO pConfig
  87. );
  88. }