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.

297 lines
8.0 KiB

  1. //////////////////////////////////////////////////////////////////////////////
  2. //
  3. // Copyright (C) 1993 Microsoft Corporation
  4. //
  5. // Module Name:
  6. //
  7. // nwapi32.h
  8. //
  9. // Abstract:
  10. //
  11. // This module contains the support to routines
  12. // into the CSNW that use NTSTATUS.
  13. //
  14. // Author:
  15. //
  16. // Chris Sandys (a-chrisa) 09-Sep-1993
  17. //
  18. // Revision History:
  19. // Chuck Y Chan Feb 7, 1996 Spilt of NTSTATUS type calls
  20. // from nwapi32.h
  21. //
  22. //////////////////////////////////////////////////////////////////////////////
  23. #ifndef _NWPAPI32_H_
  24. #define _NWPAPI32_H_
  25. #include <nwapi32.h>
  26. #ifdef __cplusplus
  27. extern "C" {
  28. #endif /* __cplusplus */
  29. ///////////////////////////////////////////////////////////////////////////////
  30. // //
  31. // Versions of functions above, but return NTSTATUS. Keep around because //
  32. // existing DSMN code calls them. Do not extenf this set. The NWC* functions //
  33. // are the ones to use. //
  34. // //
  35. ///////////////////////////////////////////////////////////////////////////////
  36. NTSTATUS
  37. NWPAttachToFileServerW(
  38. const WCHAR *pszServerName,
  39. NWLOCAL_SCOPE ScopeFlag,
  40. NWCONN_HANDLE *phNewConn
  41. );
  42. NTSTATUS
  43. NWPDetachFromFileServer(
  44. NWCONN_HANDLE hConn
  45. );
  46. NTSTATUS
  47. NWPGetFileServerVersionInfo(
  48. NWCONN_HANDLE hConn,
  49. VERSION_INFO *lpVerInfo
  50. );
  51. DWORD
  52. NWPLoginToFileServerW(
  53. NWCONN_HANDLE hConn,
  54. LPWSTR pszUserName,
  55. NWOBJ_TYPE wObType,
  56. LPWSTR pszPassword
  57. );
  58. DWORD
  59. NWPLogoutFromFileServer(
  60. NWCONN_HANDLE hConn
  61. );
  62. NTSTATUS
  63. NWPDeleteObject(
  64. NWCONN_HANDLE hConn,
  65. const char *pszObjectName,
  66. NWOBJ_TYPE wObjType
  67. );
  68. NTSTATUS
  69. NWPCreateObject(
  70. NWCONN_HANDLE hConn,
  71. const char *pszObjectName,
  72. NWOBJ_TYPE wObjType,
  73. NWFLAGS ucObjectFlags,
  74. NWFLAGS ucObjSecurity
  75. );
  76. NTSTATUS
  77. NWPWritePropertyValue(
  78. NWCONN_HANDLE hConn,
  79. const char *pszObjectName,
  80. NWOBJ_TYPE wObjType,
  81. const char *pszPropertyName,
  82. NWSEGMENT_NUM segmentNumber,
  83. NWSEGMENT_DATA *segmentData,
  84. NWFLAGS moreSegments
  85. );
  86. NTSTATUS
  87. NWPChangeObjectPasswordEncrypted(
  88. NWCONN_HANDLE hConn,
  89. const char *pszObjectName,
  90. NWOBJ_TYPE wObjType,
  91. BYTE *validationKey,
  92. BYTE *newKeyedPassword
  93. );
  94. NTSTATUS
  95. NWPGetObjectID(
  96. NWCONN_HANDLE hConn,
  97. const char *pszObjectName,
  98. NWOBJ_TYPE wObjType,
  99. NWOBJ_ID *objectID
  100. );
  101. NTSTATUS
  102. NWPAddObjectToSet(
  103. NWCONN_HANDLE hConn,
  104. const char *pszObjectName,
  105. NWOBJ_TYPE wObjType,
  106. const char *pszPropertyName,
  107. const char *pszMemberName,
  108. NWOBJ_TYPE memberType
  109. );
  110. NTSTATUS
  111. NWPDeleteObjectFromSet(
  112. NWCONN_HANDLE hConn,
  113. const char *pszObjectName,
  114. NWOBJ_TYPE wObjType,
  115. const char *pszPropertyName,
  116. const char *pszMemberName,
  117. NWOBJ_TYPE memberType
  118. );
  119. NTSTATUS
  120. NWPCreateProperty(
  121. NWCONN_HANDLE hConn,
  122. const char *pszObjectName,
  123. NWOBJ_TYPE wObjType,
  124. const char *pszPropertyName,
  125. NWFLAGS ucObjectFlags,
  126. NWFLAGS ucObjSecurity
  127. );
  128. NTSTATUS
  129. NWPDeleteProperty(
  130. NWCONN_HANDLE hConn,
  131. const char *pszObjectName,
  132. NWOBJ_TYPE wObjType,
  133. const char *pszPropertyName
  134. );
  135. NTSTATUS
  136. NWPGetChallengeKey(
  137. NWCONN_HANDLE hConn,
  138. UCHAR *challengeKey
  139. );
  140. NTSTATUS
  141. NWPReadPropertyValue(
  142. NWCONN_HANDLE hConn,
  143. const char *pszObjName,
  144. NWOBJ_TYPE wObjType,
  145. char *pszPropName,
  146. unsigned char ucSegment,
  147. char *pValue,
  148. NWFLAGS *pucMoreFlag,
  149. NWFLAGS *pucPropFlag
  150. );
  151. NTSTATUS
  152. NWPCreateDirectory(
  153. NWCONN_HANDLE hConn,
  154. NWDIR_HANDLE dirHandle,
  155. const char *pszPath,
  156. NWACCESS_RIGHTS accessMask
  157. );
  158. NTSTATUS
  159. NWPAddTrustee(
  160. NWCONN_HANDLE hConn,
  161. NWDIR_HANDLE dirHandle,
  162. const char *pszPath,
  163. NWOBJ_ID dwTrusteeID,
  164. NWRIGHTS_MASK rightsMask
  165. );
  166. NTSTATUS
  167. NWPRenameBinderyObject(
  168. NWCONN_HANDLE hConn,
  169. const char *pszObjectName,
  170. const char *pszNewObjectName,
  171. NWOBJ_TYPE wObjType
  172. );
  173. NTSTATUS
  174. NWPGetObjectName(
  175. NWCONN_HANDLE hConn,
  176. NWOBJ_ID dwObjectID,
  177. char *pszObjName,
  178. NWOBJ_TYPE *pwObjType
  179. );
  180. NTSTATUS
  181. NWPScanObject(
  182. NWCONN_HANDLE hConn,
  183. const char *pszSearchName,
  184. NWOBJ_TYPE wObjSearchType,
  185. NWOBJ_ID *pdwObjectID,
  186. char *pszObjectName,
  187. NWOBJ_TYPE *pwObjType,
  188. NWFLAGS *pucHasProperties,
  189. NWFLAGS *pucObjectFlags,
  190. NWFLAGS *pucObjSecurity
  191. );
  192. NTSTATUS
  193. NWPScanProperty(
  194. NWCONN_HANDLE hConn,
  195. const char *pszObjectName,
  196. NWOBJ_TYPE wObjType,
  197. char *pszSearchName,
  198. NWOBJ_ID *pdwSequence,
  199. char *pszPropName,
  200. NWFLAGS *pucPropFlags,
  201. NWFLAGS *pucPropSecurity,
  202. NWFLAGS *pucHasValue,
  203. NWFLAGS *pucMore
  204. );
  205. NTSTATUS
  206. NWPScanForTrustees(
  207. NWCONN_HANDLE hConn,
  208. NWDIR_HANDLE dirHandle,
  209. char *pszsearchDirPath,
  210. NWSEQUENCE *pucsequenceNumber,
  211. BYTE *numberOfEntries,
  212. TRUSTEE_INFO *tl
  213. );
  214. NTSTATUS
  215. NWPScanDirectoryForTrustees2(
  216. NWCONN_HANDLE hConn,
  217. NWDIR_HANDLE dirHandle,
  218. char *pszsearchDirPath,
  219. NWSEQUENCE *pucsequenceNumber,
  220. char *pszdirName,
  221. NWDATE_TIME *dirDateTime,
  222. NWOBJ_ID *ownerID,
  223. TRUSTEE_INFO *trusteeList
  224. );
  225. NTSTATUS
  226. NWPGetBinderyAccessLevel(
  227. NWCONN_HANDLE hConn,
  228. NWFLAGS *accessLevel,
  229. NWOBJ_ID *objectID
  230. );
  231. NTSTATUS
  232. NWPGetFileServerDescription(
  233. NWCONN_HANDLE hConn,
  234. char *pszCompany,
  235. char *pszVersion,
  236. char *pszRevision
  237. );
  238. NTSTATUS
  239. NWPGetVolumeNumber(
  240. NWCONN_HANDLE hConn,
  241. char *pszVolume,
  242. NWVOL_NUM *VolumeNumber
  243. );
  244. NTSTATUS
  245. NWPGetVolumeUsage(
  246. NWCONN_HANDLE hConn,
  247. NWVOL_NUM VolumeNumber,
  248. DWORD *TotalBlocks,
  249. DWORD *FreeBlocks,
  250. DWORD *PurgeableBlocks,
  251. DWORD *NotYetPurgeableBlocks,
  252. DWORD *TotalDirectoryEntries,
  253. DWORD *AvailableDirectoryEntries,
  254. BYTE *SectorsPerBlock
  255. );
  256. #ifdef __cplusplus
  257. }
  258. #endif /* __cplusplus */
  259. #endif //_NWPAPI32_H_