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.

191 lines
4.1 KiB

  1. /*++
  2. Copyright (c) 1993 Microsoft Corporation
  3. Module Name:
  4. nwstruct.h
  5. Abstract:
  6. Contains data structures used by NCP Server APIs.
  7. Author:
  8. Yi-Hsin Sung (yihsins) 11-Sept-1993
  9. Revision History:
  10. --*/
  11. #ifndef _NWSTRUCT_H_
  12. #define _NWSTRUCT_H_
  13. #include <fpnwapi.h>
  14. #ifdef __cplusplus
  15. extern "C" {
  16. #endif
  17. //
  18. // Volume types : disk or printer
  19. //
  20. #define NWVOL_TYPE_DISKTREE FPNWVOL_TYPE_DISKTREE
  21. #define NWVOL_TYPE_CDROM FPNWVOL_TYPE_CDROM
  22. #define NWVOL_TYPE_REMOVABLE FPNWVOL_TYPE_REMOVABLE
  23. #define NWVOL_MAX_USES_UNLIMITED ((ULONG)-1)
  24. //
  25. // Permissions flags returned in structure FPNWFILEINFO
  26. //
  27. #define NWFILE_PERM_NONE FPNWFILE_PERM_NONE
  28. #define NWFILE_PERM_READ FPNWFILE_PERM_READ
  29. #define NWFILE_PERM_WRITE FPNWFILE_PERM_WRITE
  30. #define NWFILE_PERM_CREATE FPNWFILE_PERM_CREATE
  31. #define NWFILE_PERM_EXEC FPNWFILE_PERM_EXEC
  32. #define NWFILE_PERM_DELETE FPNWFILE_PERM_DELETE
  33. #define NWFILE_PERM_ATRIB FPNWFILE_PERM_ATRIB
  34. #define NWFILE_PERM_PERM FPNWFILE_PERM_PERM
  35. #define NWSERVERADDR FPNWSERVERADDR
  36. typedef FPNWSERVERINFO NWSERVERINFO, *PNWSERVERINFO;
  37. typedef FPNWVOLUMEINFO NWVOLUMEINFO, *PNWVOLUMEINFO;
  38. typedef FPNWVOLUMEINFO_2 NWVOLUMEINFO_2, *PNWVOLUMEINFO_2;
  39. typedef FPNWCONNECTIONINFO NWCONNECTIONINFO, *PNWCONNECTIONINFO;
  40. typedef FPNWVOLUMECONNINFO NWVOLUMECONNINFO, *PNWVOLUMECONNINFO;
  41. typedef FPNWFILEINFO NWFILEINFO, *PNWFILEINFO;
  42. //
  43. // Below are the APIs available to manipulate FPNW servers, volumes, etc.
  44. //
  45. DWORD
  46. NwApiBufferFree(
  47. IN LPVOID pBuffer
  48. );
  49. DWORD
  50. NwServerGetInfo(
  51. IN LPWSTR pServerName OPTIONAL,
  52. IN DWORD dwLevel,
  53. OUT PNWSERVERINFO *ppServerInfo
  54. );
  55. DWORD
  56. NwServerSetInfo(
  57. IN LPWSTR pServerName OPTIONAL,
  58. IN DWORD dwLevel,
  59. IN PNWSERVERINFO pServerInfo
  60. );
  61. DWORD
  62. NwVolumeAdd(
  63. IN LPWSTR pServerName OPTIONAL,
  64. IN DWORD dwLevel,
  65. IN PNWVOLUMEINFO pVolumeInfo
  66. );
  67. DWORD
  68. NwVolumeDel(
  69. IN LPWSTR pServerName OPTIONAL,
  70. IN LPWSTR pVolumeName
  71. );
  72. DWORD
  73. NwVolumeEnum(
  74. IN LPWSTR pServerName OPTIONAL,
  75. IN DWORD dwLevel,
  76. OUT PNWVOLUMEINFO *ppVolumeInfo,
  77. OUT PDWORD pEntriesRead,
  78. IN OUT PDWORD resumeHandle OPTIONAL
  79. );
  80. DWORD
  81. NwVolumeGetInfo(
  82. IN LPWSTR pServerName OPTIONAL,
  83. IN LPWSTR pVolumeName,
  84. IN DWORD dwLevel,
  85. OUT PNWVOLUMEINFO *ppVolumeInfo
  86. );
  87. DWORD
  88. NwVolumeSetInfo(
  89. IN LPWSTR pServerName OPTIONAL,
  90. IN LPWSTR pVolumeName,
  91. IN DWORD dwLevel,
  92. IN PNWVOLUMEINFO pVolumeInfo
  93. );
  94. DWORD
  95. NwConnectionEnum(
  96. IN LPWSTR pServerName OPTIONAL,
  97. IN DWORD dwLevel,
  98. OUT PNWCONNECTIONINFO *ppConnectionInfo,
  99. OUT PDWORD pEntriesRead,
  100. IN OUT PDWORD resumeHandle OPTIONAL
  101. );
  102. DWORD NwConnectionDel(
  103. IN LPWSTR pServerName OPTIONAL,
  104. IN DWORD dwConnectionId
  105. );
  106. DWORD
  107. NwVolumeConnEnum(
  108. IN LPWSTR pServerName OPTIONAL,
  109. IN DWORD dwLevel,
  110. IN LPWSTR pVolumeName,
  111. IN DWORD dwConnectionId,
  112. OUT PNWVOLUMECONNINFO *ppVolumeConnInfo,
  113. OUT PDWORD pEntriesRead,
  114. IN OUT PDWORD resumeHandle OPTIONAL
  115. );
  116. DWORD
  117. NwFileEnum(
  118. IN LPWSTR pServerName OPTIONAL,
  119. IN DWORD dwLevel,
  120. IN LPWSTR pPathName OPTIONAL,
  121. OUT PNWFILEINFO *ppFileInfo,
  122. OUT PDWORD pEntriesRead,
  123. IN OUT PDWORD resumeHandle OPTIONAL
  124. );
  125. DWORD
  126. NwFileClose(
  127. IN LPWSTR pServerName OPTIONAL,
  128. IN DWORD nFileId
  129. );
  130. DWORD NwMessageBufferSend(
  131. IN LPWSTR pServerName OPTIONAL,
  132. IN DWORD dwConnectionId,
  133. IN DWORD fConsoleBroadcast,
  134. IN LPBYTE pbBuffer,
  135. IN DWORD cbBuffer
  136. );
  137. DWORD NwSetDefaultQueue(
  138. IN LPWSTR pServerName OPTIONAL,
  139. IN LPWSTR pQueueName
  140. );
  141. DWORD NwAddPServer(
  142. IN LPWSTR pServerName OPTIONAL,
  143. IN LPWSTR pPServerName
  144. );
  145. DWORD NwRemovePServer(
  146. IN LPWSTR pServerName OPTIONAL,
  147. IN LPWSTR pPServerName
  148. );
  149. #ifdef __cplusplus
  150. } /* extern "C" */
  151. #endif
  152. #endif