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.

1210 lines
48 KiB

  1. /*++
  2. Copyright (c) Microsoft Corporation. All rights reserved.
  3. Module Name:
  4. RemDef.h
  5. Abstract:
  6. Definition of descriptor strings for Net API remote calls.
  7. Names defined in this file follow the format:
  8. RemPrefix_RemDescriptor
  9. where RemPrefix is either REM16, REM32, or REMSmb, indicating whether
  10. the descriptor is for 16-bit or 32-bit data for conversion,
  11. or for an actual XACT SMB.
  12. RemDescriptor follows one of the following formats:
  13. StructureName_level - info structures
  14. StructureName_level_suffix - special info structures
  15. ApiName_P - parameter descriptors
  16. This file also contains some field index equates. These are similar
  17. to parmnum equates, except that the field index equates are guaranteed
  18. to reflect the field's position in the descriptor. (See the
  19. RapParmNumDescriptor routine for more information on how this is used.)
  20. If the parmnum value (in the LM*.H header files) is identical to the
  21. field index value, then no field index equate is given. Where the numbers
  22. are different, then for each parmnum of the form:
  23. ParmNumPrefix_PARMNUM
  24. this file will have an equate of the form:
  25. ParmNumPrefix_FIELDINDEX
  26. where ParmNumPrefix is, for instance, PRJ_PRIORITY (for print job priority).
  27. Notes:
  28. 1. While the above formats should be followed, the equate names
  29. cannot exceed 32 characters, and abbreviated forms should be used.
  30. 2. The remote API mechanism requires that the return parameter length
  31. is less than or equal to the send parameter length. This assumption
  32. is made in order to reduce the overhead in the buffer management
  33. required for the API call. This restriction is not unreasonable
  34. as the APIs were designed to return data in the data buffer and just
  35. use return parameters for data lengths & file handles etc.
  36. HOWEVER, if it has been spec'ed to return a large parameter field, it
  37. is possible to pad the size of the send parameter using a REM_FILL_BYTES
  38. field to meet the above restriction.
  39. 3. Some of the descriptors have different size byte arrays in the 16 and
  40. 32-bit versions. This allows the 32-bit version to be UNICODE where
  41. the 16-bit version is an 8-bit (codepage) string. RapConvertSingleEntry
  42. automatically makes this conversion if it detects one byte count being
  43. twice the other's.
  44. Author:
  45. John Rogers (JohnRo)
  46. Shanku Niyogi (w-shanku)
  47. Environment:
  48. Portable to just about anything.
  49. Requires ANSI C extensions: slash-slash comments, long external names.
  50. Revision History:
  51. Ported from Lanman 2.0 code.
  52. 17-Jan-1992 rfirth
  53. Changed REM32_share_info_2 from "zQDzDDDzzQ" to "zQDzDXDzzQ" to allow
  54. shi2_max_uses field to go from -1 (0xffff) to -1L (0xffffffff), not
  55. 65535L
  56. 17-Aug-1992 JohnRo
  57. RAID 3607: REPLLOCK.RP$ is being created during tree copy.
  58. Re-ordered revision history.
  59. 01-Sep-1992 JohnRo
  60. RAID 5088: NetGetDCName to downlevel doesn't UNICODE translate.
  61. 09-Sep-1992 JohnRo
  62. RAID 1100: last string in access type truncated in NetAuditRead.
  63. --*/
  64. #ifndef _REMDEF_
  65. #define _REMDEF_
  66. //====================================================================
  67. //
  68. // Conversion descriptors. The 16 and 32 bit versions must have the
  69. // same number of fields. Fields not present in one version can be
  70. // indicated with the REM_IGNORE ('Q') character.
  71. //
  72. // These strings should NOT be passed over the network.
  73. //
  74. //====================================================================
  75. #define REM16_share_info_0 "B13"
  76. #define REM32_share_info_0 "z"
  77. #define REM16_share_info_1 "B13BWz"
  78. #define REM32_share_info_1 "zQDz"
  79. #define REM16_share_info_2 "B13BWzWWWzB9B"
  80. #define REM32_share_info_2 "zQDzDXDzzQ"
  81. #define SHI_REMARK_FIELDINDEX 4
  82. #define SHI_PERMISSIONS_FIELDINDEX 5
  83. #define SHI_MAX_USES_FIELDINDEX 6
  84. #define SHI_PASSWD_FIELDINDEX 9
  85. #define REM16_share_info_90 "B13BWz"
  86. #define REM16_share_info_92 "zzz"
  87. #define REM16_share_info_93 "zzz"
  88. #define REM16_share_info_0_setinfo "U"
  89. #define REM32_share_info_0_setinfo "z"
  90. #define REM16_share_info_1_setinfo "UUUz"
  91. #define REM32_share_info_1_setinfo "zQDz"
  92. #define REM16_share_info_2_setinfo "UUUzWWUUB9U"
  93. #define REM32_share_info_2_setinfo "zQDzQDDzQQ"
  94. #define REM16_share_info_90_setinfo "B13BWz"
  95. #define REM16_share_info_91_setinfo "B13BWzWWWOB9BB9BWzWWzWW"
  96. #define REM16_NetShareEnum_P "WrLeh"
  97. #define REM16_NetShareGetInfo_P "zWrLh"
  98. #define REM16_NetShareSetInfo_P "zWsTP"
  99. #define REM16_NetShareAdd_P "WsT"
  100. #define REM16_NetShareDel_P "zW"
  101. #define REM16_NetShareCheck_P "zh"
  102. #define REM16_session_info_0 "z"
  103. #define REM32_session_info_0 "z"
  104. #define REM16_session_info_1 "zzWWWDDD"
  105. #define REM32_session_info_1 "zzQDQDDD"
  106. #define REM16_session_info_2 "zzWWWDDDz"
  107. #define REM32_session_info_2 "zzQDQDDDz"
  108. #define REM16_session_info_10 "zzDD"
  109. #define REM32_session_info_10 "zzDD"
  110. #define REM16_NetSessionEnum_P "WrLeh"
  111. #define REM16_NetSessionGetInfo_P "zWrLh"
  112. #define REM16_NetSessionDel_P "zW"
  113. #define REM16_connection_info_0 "W"
  114. #define REM32_connection_info_0 "D"
  115. #define REM16_connection_info_1 "WWWWDzz"
  116. #define REM32_connection_info_1 "DDDDDzz"
  117. #define REM16_NetConnectionEnum_P "zWrLeh"
  118. #define REM16_file_info_0 "W"
  119. #define REM32_file_info_0 "D"
  120. #define REM16_file_info_1 "WWWzz"
  121. #define REM32_file_info_1 "DDDzz"
  122. #define REM16_file_info_2 "D"
  123. #define REM32_file_info_2 "D"
  124. #define REM16_file_info_3 "DWWzz"
  125. #define REM32_file_info_3 "DDDzz"
  126. #define REM16_file_info_50 "QB16BBDZ??ZZZ"
  127. #define REM16_NetFileEnum_P "zWrLeh"
  128. #define REM16_NetFileEnum2_P "zzWrLehb8g8"
  129. #define REM16_NetFileGetInfo_P "WWrLh"
  130. #define REM16_NetFileGetInfo2_P "DWrLh"
  131. #define REM16_NetFileClose_P "W"
  132. #define REM16_NetFileClose2_P "D"
  133. #define REM16_server_info_0 "QB16"
  134. #define REM32_server_info_0 "Dz"
  135. #define REM16_server_info_1 "QB16BBDz"
  136. #define REM32_server_info_1 "DzDDDz"
  137. #define REM16_server_info_2 "QB16BBDzJJJWWzWWWWWWWB21BzWWWWWWWWWWWWWWWWWWWWWWz"
  138. #define REM32_server_info_2 "DzDDDzQQQDXQQQQQDDDQDzQQQQQQQQQQQQQQQQQQQQQQQ"
  139. #define REM16_server_info_3 "QB16BBDzJJJWWzWWWWWWWB21BzWWWWWWWWWWWWWWWWWWWWWWzDWz"
  140. #define REM32_server_info_3 "DzDDDzQQQDXQQQQQDDDQDzQQQQQQQQQQQQQQQQQQQQQQQQQQ"
  141. #define REM32_server_info_50 "QB16BBDzWWzzz"
  142. #define REM32_server_info_100 "Dz"
  143. #define REM32_server_info_101 "DzDDDz"
  144. #define REM32_server_info_102 "DzDDDzDDWDDDz"
  145. #define REM32_server_info_402 "DDDzDDDzDDDDDDDDDDDDDDDDDDDDDDz"
  146. #define REM32_server_info_403 "DDDzDDDzDDDDDDDDDDDDDDDDDDDDDDzDDz"
  147. #define REM16_server_info_1_setinfo "B16BBDz"
  148. #define REM32_server_info_1_setinfo "zDDDz"
  149. #define REM16_server_info_2_setinfo "B16BBDzDDDWWzWWWWWWWB21BOWWWWWWWWWWWWWWWWWWWWWWz"
  150. #define REM32_server_info_2_setinfo "zDDDzQQQDDQQQQQWDDQQOQQQQQQQQQQQQQQQQQQQQQQQ"
  151. #define REM16_server_admin_command "B"
  152. #define REM16_server_diskenum_0 "B3"
  153. #define REM32_server_diskenum_0 "B3"
  154. #define REM16_authenticator_info_0 "B8D"
  155. #define REM16_server_diskft_100 "B"
  156. #define REM16_server_diskft_101 "BBWWWWDW"
  157. #define REM16_server_diskft_102 "BBWWWWDN"
  158. #define REM16_server_diskfterr_0 "DWWDDW"
  159. #define REM16_ft_info_0 "WWW"
  160. #define REM16_ft_drivestats_0 "BBWDDDDDDD"
  161. #define REM16_ft_error_info_1 "DWWDDWBBDD"
  162. #define REM16_I_NetServerDiskEnum_P "WrLeh"
  163. #define REM16_I_NetServerDiskGetInfo_P "WWrLh"
  164. #define REM16_I_FTVerifyMirror_P "Wz"
  165. #define REM16_I_FTAbortVerify_P "W"
  166. #define REM16_I_FTGetInfo_P "WrLh"
  167. #define REM16_I_FTSetInfo_P "WsTP"
  168. #define REM16_I_FTLockDisk_P "WWh"
  169. #define REM16_I_FTFixError_P "Dzhh2"
  170. #define REM16_I_FTAbortFix_P "D"
  171. #define REM16_I_FTDiagnoseError_P "Dhhhh"
  172. #define REM16_I_FTGetDriveStats_P "WWrLh"
  173. #define REM16_I_FTErrorGetInfo_P "DWrLh"
  174. #define REM16_NetServerEnum_P "WrLeh"
  175. #define REM16_I_NetServerEnum_P "WrLeh"
  176. #define REM16_NetServerEnum2_P "WrLehDz"
  177. #define REM16_I_NetServerEnum2_P "WrLehDz"
  178. #define REM16_NetServerGetInfo_P "WrLh"
  179. #define REM16_NetServerSetInfo_P "WsTP"
  180. #define REM16_NetServerDiskEnum_P "WrLeh"
  181. #define REM16_NetServerAdminCommand_P "zhrLeh"
  182. #define REM16_NetServerReqChalleng_P "zb8g8"
  183. #define REM16_NetServerAuthenticat_P "zb8g8"
  184. #define REM16_NetServerPasswordSet_P "zb12g12b16"
  185. #define REM16_NetAuditOpen_P "h"
  186. #define REM16_NetAuditClear_P "zz"
  187. #define REM16_NetAuditRead_P "zb16g16DhDDrLeh"
  188. #define REM16_audit_entry_fixed "WWJWW"
  189. #define REM32_audit_entry_fixed "DDGDD"
  190. #define REM16_audit_entry_srvstatus "W"
  191. #define REM32_audit_entry_srvstatus "D"
  192. #define REM16_audit_entry_sesslogon "WWW"
  193. #define REM32_audit_entry_sesslogon "DDD"
  194. #define REM16_audit_entry_sesslogoff "WWW"
  195. #define REM32_audit_entry_sesslogoff "DDD"
  196. #define REM16_audit_entry_sesspwerr "WW"
  197. #define REM32_audit_entry_sesspwerr "DD"
  198. #define REM16_audit_entry_connstart "WWWW"
  199. #define REM32_audit_entry_connstart "DDDD"
  200. #define REM16_audit_entry_connstop "WWWWW"
  201. #define REM32_audit_entry_connstop "DDDDD"
  202. #define REM16_audit_entry_connrej "WWWW"
  203. #define REM32_audit_entry_connrej "DDDD"
  204. #define REM16_audit_entry_resaccess "WWWWWWW"
  205. #define REM32_audit_entry_resaccess "DDDDDDD"
  206. #define REM16_audit_entry_resaccess2 "WWWWWWD"
  207. // Note: 16-bit ae_resaccess and ae_resaccess2 both get converted to
  208. // 32-bit ae_resaccess.
  209. #define REM16_audit_entry_resaccessrej "WWWW"
  210. #define REM32_audit_entry_resaccessrej "DDDD"
  211. #define REM16_audit_entry_closefile "WWWWDW"
  212. #define REM32_audit_entry_closefile "DDDDDD"
  213. #define REM16_audit_entry_servicestat "WWWWDWW"
  214. #define REM32_audit_entry_servicestat "DDDDDDD"
  215. #define REM16_audit_entry_aclmod "WWWWW"
  216. #define REM32_audit_entry_aclmod "DDDDD"
  217. #define REM16_audit_entry_uasmod "WWWWWW"
  218. #define REM32_audit_entry_uasmod "DDDDDD"
  219. #define REM16_audit_entry_netlogon "WWWW"
  220. #define REM32_audit_entry_netlogon "DDDD"
  221. #define REM16_audit_entry_netlogoff "WWWW"
  222. #define REM32_audit_entry_netlogoff "DDDD"
  223. #define REM16_audit_entry_acclim "WWWW"
  224. #define REM32_audit_entry_acclim "DDDD"
  225. #define REM16_audit_entry_lockout "WWWW"
  226. #define REM32_audit_entry_lockout "DDDD"
  227. #define REM16_AuditLogReturnBuf "K"
  228. #define REM16_NetErrorLogOpen_P "h"
  229. #define REM16_NetErrorLogClear_P "zz"
  230. #define REM16_NetErrorLogRead_P "zb16g16DhDDrLeh"
  231. #define REM16_ErrorLogReturnBuf "K"
  232. #define REM16_chardev_info_0 "B9"
  233. #define REM32_chardev_info_0 "z"
  234. #define REM16_chardev_info_1 "B10WB22D"
  235. #define REM32_chardev_info_1 "zDzD"
  236. #define REM16_chardevQ_info_0 "B13"
  237. #define REM32_chardevQ_info_0 "z"
  238. #define REM16_chardevQ_info_1 "B14WzWW"
  239. #define REM32_chardevQ_info_1 "zDzDD"
  240. #define REM16_chardevQ_info_1_setinfo "UWzUU"
  241. #define REM32_chardevQ_info_1_setinfo "QWzQQ"
  242. #define REM16_NetCharDevEnum_P "WrLeh"
  243. #define REM16_NetCharDevGetInfo_P "zWrLh"
  244. #define REM16_NetCharDevControl_P "zW"
  245. #define REM16_NetCharDevQEnum_P "zWrLeh"
  246. #define REM16_NetCharDevQGetInfo_P "zzWrLh"
  247. #define REM16_NetCharDevQSetInfo_P "zWsTP"
  248. #define REM16_NetCharDevQPurge_P "z"
  249. #define REM16_NetCharDevQPurgeSelf_P "zz"
  250. #define REM16_msg_info_0 "B16"
  251. #define REM32_msg_info_0 "z"
  252. #define REM16_msg_info_1 "B16BBB16"
  253. #define REM32_msg_info_1 "zQDz"
  254. #define REM16_send_struct "K"
  255. #define REM16_NetMessageNameEnum_P "WrLeh"
  256. #define REM16_NetMessageNameGetInfo_P "zWrLh"
  257. #define REM16_NetMessageNameAdd_P "zW"
  258. #define REM16_NetMessageNameDel_P "zW"
  259. #define REM16_NetMessageNameFwd_P "zzW"
  260. #define REM16_NetMessageNameUnFwd_P "z"
  261. #define REM16_NetMessageBufferSend_P "zsT"
  262. #define REM16_NetMessageFileSend_P "zz"
  263. #define REM16_NetMessageLogFileSet_P "zW"
  264. #define REM16_NetMessageLogFileGet_P "rLh"
  265. #define REM16_service_info_0 "B16"
  266. #define REM32_service_info_0 "z"
  267. #define REM16_service_info_1 "B16WDW"
  268. #define REM32_service_info_1 "zDDD"
  269. #define REM16_service_info_2 "B16WDWB64QQ"
  270. #define REM32_service_info_2 "zDDDzDz"
  271. #define REM16_service_cmd_args "K"
  272. #define REM16_NetServiceEnum_P "WrLeh"
  273. #define REM16_NetServiceControl_P "zWWrL"
  274. #define REM16_NetServiceInstall_P "zF88sg88T" // See NOTE 2
  275. #define REM16_NetServiceGetInfo_P "zWrLh"
  276. #define REM16_access_info_0 "z"
  277. #define REM32_access_info_0 "z"
  278. #define REM16_access_info_0_setinfo "z"
  279. #define REM32_access_info_0_setinfo "z"
  280. #define REM16_access_info_1 "zWN"
  281. #define REM32_access_info_1 "zDA"
  282. #define REM16_access_info_1_setinfo "OWN"
  283. #define REM32_access_info_1_setinfo "ODA"
  284. #define REM16_access_list "B21BW"
  285. #define REM16_access_list_filler "QQQ"
  286. #define REM32_access_list "zQD"
  287. #define ACCESS_ATTR_FIELDINDEX 2
  288. #define REM16_NetAccessEnum_P "zWWrLeh"
  289. #define REM16_NetAccessGetInfo_P "zWrLh"
  290. #define REM16_NetAccessSetInfo_P "zWsTP"
  291. #define REM16_NetAccessAdd_P "WsT"
  292. #define REM16_NetAccessDel_P "z"
  293. #define REM16_NetAccessGetUserPerms_P "zzh"
  294. #define REM16_group_info_0 "B21"
  295. #define REM32_group_info_0 "z"
  296. #define REM16_group_info_1 "B21Bz"
  297. #define REM32_group_info_1 "zQz"
  298. #define REM16_group_users_info_0 "B21"
  299. #define REM32_group_users_info_0 "z"
  300. #define REM16_group_users_info_1 "B21BN"
  301. #define REM16_group_users_info_0_set "B21BN"
  302. #define REM32_group_users_info_0_set "zQA"
  303. #define REM16_group_info_1_setinfo "UUz"
  304. #define REM32_group_info_1_setinfo "QQz"
  305. #define GRPI_COMMENT_FIELDINDEX 3
  306. #define REM16_NetGroupEnum_P "WrLeh"
  307. #define REM16_NetGroupAdd_P "WsT"
  308. #define REM16_NetGroupDel_P "z"
  309. #define REM16_NetGroupAddUser_P "zz"
  310. #define REM16_NetGroupDelUser_P "zz"
  311. #define REM16_NetGroupGetUsers_P "zWrLeh"
  312. #define REM16_NetGroupSetUsers_P "zWsTW"
  313. #define REM16_NetGroupGetInfo_P "zWrLh"
  314. #define REM16_NetGroupSetInfo_P "zWsTP"
  315. #define REM16_user_info_0 "B21"
  316. #define REM32_user_info_0 "z"
  317. #define REM16_user_info_1 "B21BB16DWzzWz"
  318. #define REM32_user_info_1 "zQb16DDzzDz"
  319. #define REM32_user_info_1_NOCRYPT "zQzDDzzDz"
  320. #define REM32_user_info_1_OWF "zQB16DDzzDz"
  321. #define REM16_user_info_2 "B21BB16DWzzWzDzzzzJJJDWb21WWzWW"
  322. #define REM32_user_info_2 "zQb16DDzzDzDzzzzGGGDDb21DDzDD"
  323. #define REM32_user_info_2_NOCRYPT "zQzDDzzDzDzzzzGGGDDb21DDzDD"
  324. #define REM32_user_info_22 "zQB16DDzzDzDzzzzGGGDDb21DDzDD"
  325. #define REM16_user_info_10 "B21Bzzz"
  326. #define REM32_user_info_10 "zQzzz"
  327. #define REM16_user_info_11 "B21BzzzWDDzzJJWWzWzDWb21W"
  328. #define REM32_user_info_11 "zQzzzDDDzzGGDDzDzDDb21D"
  329. #define REM16_user_info_1_setinfo "UUB16UWzzWz"
  330. #define REM32_user_info_1_setinfo "zQB16DDzzDz"
  331. #define REM32_user_info_1_setinfo_NOCRYPT "zQzDDzzDz"
  332. #define REM16_user_info_2_setinfo "UUB16UWzzWzDzzzzUUJDWB21WWzWW"
  333. #define REM32_user_info_2_setinfo "QQzQDzzDzDzzzzQQGDDB21DDzDD"
  334. #define REM32_user_info_2_setinfo_NOCRYPT "QQzQDzzDzDzzzzQQGDDB21DDzDD"
  335. #define REM32_user_info_3 "zQb16DDzzDzDzzzzGGGDDb21DDzDDDDzzD"
  336. #define REM32_user_info_3_NOCRYPT "zQzDDzzDzDzzzzGGGDDb21DDzDDDDzzD"
  337. #define REM32_user_info_3_setinfo "QQzQDzzDzDzzzzQQGDDB21DDzDDDDzzD"
  338. #define REM32_user_info_3_setinfo_NOCRYPT "QQzQDzzDzDzzzzQQGDDB21DDzDDDDzzD"
  339. #define USER_PASSWD_FIELDINDEX 3
  340. #define USER_PRIV_FIELDINDEX 5
  341. #define USER_DIR_FIELDINDEX 6
  342. #define USER_COMMENT_FIELDINDEX 7
  343. #define USER_USER_FLAGS_FIELDINDEX 8
  344. #define USER_SCRIPT_PATH_FIELDINDEX 9
  345. #define USER_AUTH_FLAGS_FIELDINDEX 10
  346. #define USER_FULL_NAME_FIELDINDEX 11
  347. #define USER_USR_COMMENT_FIELDINDEX 12
  348. #define USER_PARMS_FIELDINDEX 13
  349. #define USER_WORKSTATION_FIELDINDEX 14
  350. #define USER_ACCT_EXPIRES_FIELDINDEX 17
  351. #define USER_MAX_STORAGE_FIELDINDEX 18
  352. #define USER_LOGON_HOURS_FIELDINDEX 20
  353. #define USER_LOGON_SERVER_FIELDINDEX 23
  354. #define USER_COUNTRY_CODE_FIELDINDEX 24
  355. #define USER_CODE_PAGE_FIELDINDEX 25
  356. #define REM16_user_info_100 "DWW"
  357. #define REM16_user_info_101 "B60"
  358. #define REM16_user_modals_info_0 "WDDDWW"
  359. #define REM32_user_modals_info_0 "DDDDDQ"
  360. #define MODAL0_MIN_LEN_FIELDINDEX 1
  361. #define MODAL0_MAX_AGE_FIELDINDEX 2
  362. #define MODAL0_MIN_AGE_FIELDINDEX 3
  363. #define MODAL0_FORCEOFF_FIELDINDEX 4
  364. #define MODAL0_HISTLEN_FIELDINDEX 5
  365. #define REM16_user_modals_info_1 "Wz"
  366. #define REM32_user_modals_info_1 "Dz"
  367. #define REM16_user_modals_info_0_setinfo "WDDDWU"
  368. #define REM32_user_modals_info_0_setinfo "DDDDDQ"
  369. #define REM16_user_modals_info_1_setinfo "Wz"
  370. #define REM32_user_modals_info_1_setinfo "Dz"
  371. #define MODAL1_ROLE_FIELDINDEX 1
  372. #define MODAL1_PRIMARY_FIELDINDEX 2
  373. #define REM16_user_modals_info_100 "B50"
  374. #define REM16_user_modals_info_101 "zDDzDD"
  375. #define REM16_user_logon_info_0 "B21B"
  376. #define REM32_user_logon_info_0 "zQ"
  377. #define REM16_user_logon_info_1 "WB21BWDWWJJJJDJJzzzD"
  378. #define REM32_user_logon_info_1 "QzQDDDDGGGGDGGzzzD"
  379. #define REM16_user_logon_info_2 "B21BzzzJ"
  380. #define REM32_user_logon_info_2 "zQzzzG"
  381. #define REM16_user_logoff_info_1 "WDW"
  382. #define REM32_user_logoff_info_1 "QDW"
  383. #define REM16_NetUserEnum_P "WrLeh"
  384. #define REM16_NetUserAdd_P "WsTW"
  385. #define REM16_NetUserAdd2_P "WsTWW"
  386. #define REM16_NetUserDel_P "z"
  387. #define REM16_NetUserGetInfo_P "zWrLh"
  388. #define REM16_NetUserSetInfo_P "zWsTPW"
  389. #define REM16_NetUserSetInfo2_P "zWsTPWW"
  390. #define REM16_NetUserPasswordSet_P "zb16b16W"
  391. #define REM16_NetUserPasswordSet2_P "zb16b16WW"
  392. #define REM16_NetUserGetGroups_P "zWrLeh"
  393. #define REM16_NetUserSetGroups_P "zWsTW"
  394. #define REM16_NetUserModalsGet_P "WrLh"
  395. #define REM16_NetUserModalsSet_P "WsTP"
  396. #define REM16_NetUserEnum2_P "WrLDieh"
  397. #define REM16_NetUserValidate2_P "Wb62WWrLhWW"
  398. #define REM16_wksta_info_0 "QWDzzzzQBBQQDWDWWWWWWWWWWWWWWWWWWWzzW"
  399. #define REM32_wksta_info_0 "DQQQzQzzDDDzQQQQQQQQQQQQQQQQQQQQQQQQQ"
  400. #define REM16_wksta_info_1 "QWDzzzzQBBQQDWDWWWWWWWWWWWWWWWWWWWzzWzzW"
  401. #define REM16_wksta_info_10 "QzzzQBBzz"
  402. #define REM32_wksta_info_100 "DzzDD"
  403. #define REM32_wksta_info_101 "DzzDDz"
  404. #define REM32_wksta_info_102 "DzzDDzD"
  405. #define REM32_wksta_info_302 "DDDDDDDDDDDDDDDDDzDzD"
  406. #define REM32_wksta_info_402 "DDDDDDDDDDDDDDDDDzDDD"
  407. #define REM32_wksta_info_502 "DDDDDDDDDDDDDDDDDBBBBBBBBBBBBBB"
  408. #define REM16_use_info_0 "B9Bz"
  409. #define REM32_use_info_0 "zQz"
  410. #define REM16_use_info_1 "B9BzzWWWW"
  411. #define REM32_use_info_1 "zQzzDDDD"
  412. #define REM16_printQ_0 "B13"
  413. #ifndef UNICODE
  414. #define REM32_printQ_0 REM16_printQ_0
  415. #else
  416. #define REM32_printQ_0 "B26"
  417. #endif
  418. // Can't do set info of level 0.
  419. #define REM16_printQ_1 "B13BWWWzzzzzWW"
  420. #ifndef UNICODE
  421. #define REM32_printQ_1 REM16_printQ_1
  422. #else
  423. #define REM32_printQ_1 "B26WWWWzzzzzWW"
  424. #endif
  425. #define PRQ_PRIORITY_LVL1_FIELDINDEX 3
  426. #define PRQ_STARTTIME_LVL1_FIELDINDEX 4
  427. #define PRQ_UNTILTIME_LVL1_FIELDINDEX 5
  428. #define PRQ_SEPARATOR_LVL1_FIELDINDEX 6
  429. #define PRQ_PROCESSOR_LVL1_FIELDINDEX 7
  430. #define PRQ_DESTINATIONS_LVL1_FIELDINDEX 8
  431. #define PRQ_PARMS_LVL1_FIELDINDEX 9
  432. #define PRQ_COMMENT_LVL1_FIELDINDEX 10
  433. #define REM16_printQ_1_setinfo "UUWWWzzzzzUU"
  434. #define REM32_printQ_1_setinfo REM32_printQ_1
  435. #define REM16_printQ_2 "B13BWWWzzzzzWN"
  436. #ifndef UNICODE
  437. #define REM32_printQ_2 REM16_printQ_2
  438. #else
  439. #define REM32_printQ_2 "B26WWWWzzzzzWN"
  440. #endif
  441. // Can't do set info of level 2.
  442. #define REM16_printQ_3 "zWWWWzzzzWWzzl"
  443. #define REM32_printQ_3 REM16_printQ_3
  444. #define PRQ_PRIORITY_LVL3_FIELDINDEX 2
  445. #define PRQ_STARTTIME_LVL3_FIELDINDEX 3
  446. #define PRQ_UNTILTIME_LVL3_FIELDINDEX 4
  447. #define PRQ_SEPARATOR_LVL3_FIELDINDEX 6
  448. #define PRQ_PROCESSOR_LVL3_FIELDINDEX 7
  449. #define PRQ_PARMS_LVL3_FIELDINDEX 8
  450. #define PRQ_COMMENT_LVL3_FIELDINDEX 9
  451. #define PRQ_PRINTERS_LVL3_FIELDINDEX 12
  452. #define PRQ_DRIVERNAME_LVL3_FIELDINDEX 13
  453. #define PRQ_DRIVERDATA_LVL3_FIELDINDEX 14
  454. #define REM16_printQ_3_setinfo "UWWWUzzzzUUzzl"
  455. #define REM32_printQ_3_setinfo REM32_printQ_3
  456. #define REM16_printQ_4 "zWWWWzzzzWNzzl"
  457. #define REM32_printQ_4 REM16_printQ_4
  458. // Can't do set info of level 4.
  459. #define REM16_printQ_5 "z"
  460. #define REM32_printQ_5 REM16_printQ_5
  461. // Can't do set info of level 5.
  462. #define REM16_printQ_52 "WzzzzzzzzWzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz"
  463. #define REM32_printQ_52 REM16_printQ_52
  464. #define REM16_DosPrintQEnum_P "WrLeh"
  465. #define REM16_DosPrintQGetInfo_P "zWrLh"
  466. #define REM16_DosPrintQSetInfo_P "zWsTP"
  467. #define REM16_DosPrintQAdd_P "WsT"
  468. #define REM16_DosPrintQDel_P "z"
  469. #define REM16_DosPrintQPause_P "z"
  470. #define REM16_DosPrintQPurge_P "z"
  471. #define REM16_DosPrintQContinue_P "z"
  472. #define REM16_print_job_0 "W"
  473. #define REM32_print_job_0 REM16_print_job_0
  474. // print_job_0 cannot be used with setinfo.
  475. #define REM16_print_job_1 "WB21BB16B10zWWzJDz"
  476. #ifndef UNICODE
  477. #define REM32_print_job_1 "WB21BB16B10zWWzGDz"
  478. #else
  479. #define REM32_print_job_1 "WB42WB32B20zWWzGDz"
  480. #endif
  481. #define PRJ_NOTIFYNAME_LVL1_FIELDINDEX 4
  482. #define PRJ_DATATYPE_LVL1_FIELDINDEX 5
  483. #define PRJ_PARMS_LVL1_FIELDINDEX 6
  484. #define PRJ_POSITION_LVL1_FIELDINDEX 7
  485. #define PRJ_COMMENT_LVL1_FIELDINDEX 12
  486. #define REM16_print_job_1_setinfo "UUUB16B10zWUUUUz"
  487. #define REM32_print_job_1_setinfo REM32_print_job_1
  488. #define REM16_print_job_2 "WWzWWJDzz"
  489. #define REM32_print_job_2 "WWzWWGDzz"
  490. // print_job_2 cannot be used with setinfo.
  491. #define REM16_print_job_3 "WWzWWJDzzzzzzzzzzlz"
  492. #define REM32_print_job_3 "WWzWWGDzzzzzzzzzzlz"
  493. #define PRJ_PRIORITY_LVL3_FIELDINDEX 2
  494. #define PRJ_POSITION_LVL3_FIELDINDEX 4
  495. #define PRJ_COMMENT_LVL3_FIELDINDEX 8
  496. #define PRJ_DOCUMENT_LVL3_FIELDINDEX 9
  497. #define PRJ_NOTIFYNAME_LVL3_FIELDINDEX 10
  498. #define PRJ_DATATYPE_LVL3_FIELDINDEX 11
  499. #define PRJ_PARMS_LVL3_FIELDINDEX 12
  500. #define PRJ_PROCPARMS_LVL3_FIELDINDEX 16
  501. #define PRJ_DRIVERDATA_LVL3_FIELDINDEX 18
  502. #define REM16_print_job_3_setinfo "UWUWUUUzzzzzUUUzUlU"
  503. #define REM32_print_job_3_setinfo REM32_print_job_3
  504. #define REM16_print_job_info_1_setinfo "WB21BB16B10zWWODDz"
  505. #define REM16_print_job_info_3_setinfo "WWzWWDDzzzzzOzzzzlO"
  506. #define REM16_DosPrintJobEnum_P "zWrLeh"
  507. #define REM16_DosPrintJobGetInfo_P "WWrLh"
  508. #define REM16_DosPrintJobSetInfo_P "WWsTP"
  509. #define REM16_DosPrintJobAdd_P "zsTF129g129h" // See note 2
  510. #define REM16_DosPrintJobSchedule_P "W"
  511. #define REM16_DosPrintJobDel_P "W"
  512. #define REM16_DosPrintJobPause_P "W"
  513. #define REM16_DosPrintJobContinue_P "W"
  514. #define REM16_print_dest_0 "B9"
  515. #ifndef UNICODE
  516. #define REM32_print_dest_0 REM16_print_dest_0
  517. #else
  518. #define REM32_print_dest_0 "B18"
  519. #endif
  520. // Can't do set info of level 0.
  521. #define REM16_print_dest_1 "B9B21WWzW"
  522. #ifndef UNICODE
  523. #define REM32_print_dest_1 REM16_print_dest_1
  524. #else
  525. #define REM32_print_dest_1 "B18B42WWzW"
  526. #endif
  527. // Can't do set info of level 1.
  528. #define REM16_print_dest_2 "z"
  529. #define REM32_print_dest_2 REM16_print_dest_2
  530. // Can't do set info of level 2.
  531. #define REM16_print_dest_3 "zzzWWzzzWW"
  532. #define REM32_print_dest_3 REM16_print_dest_3
  533. #define REM16_print_dest_info_3_setinfo "zOzWWOzzWW"
  534. // Level 3 parmnums and field indexes are identical, so no equates here.
  535. #define REM16_print_dest_3_setinfo "UUzUUUzzUU"
  536. #define REM32_print_dest_3_setinfo REM32_print_dest_3
  537. #define REM16_DosPrintDestEnum_P "WrLeh"
  538. #define REM16_DosPrintDestGetInfo_P "zWrLh"
  539. #define REM16_DosPrintDestControl_P "zW"
  540. #define REM16_DosPrintDestAdd_P "WsT"
  541. #define REM16_DosPrintDestSetInfo_P "zWsTP"
  542. #define REM16_DosPrintDestDel_P "z"
  543. #define REM16_NetProfileSave_P "zDW"
  544. #define REM16_NetProfileLoad_P "zDrLD"
  545. #define REM16_profile_load_info "WDzD"
  546. #define REM16_statistics_info "B"
  547. #define REM16_statistics2_info_W "B120"
  548. #define REM16_stat_workstation_0 "JDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
  549. #define REM32_stat_workstation_0 "GDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
  550. #define REM16_statistics2_info_S "B68"
  551. #define REM16_stat_server_0 "JDDDDDDDDDDDDDDDD"
  552. #define REM32_stat_server_0 "GDDDDDDDDDDDDDDDD"
  553. #define REM16_NetStatisticsGet_P "rLeh"
  554. #define REM16_NetStatisticsClear_P ""
  555. #define REM16_NetStatisticsGet2_P "zDWDrLh"
  556. #define REM16_NetRemoteTOD_P "rL"
  557. #define REM16_time_of_day_info "JDBBBBWWBBWB"
  558. #define REM32_time_of_day_info "GDDDDDXDDDDD"
  559. #define REM16_netbios_info_0 "B17"
  560. #define REM16_netbios_info_1 "B17B9BBWWDWWW"
  561. #define REM16_NetBiosEnum_P "WrLeh"
  562. #define REM16_NetBiosGetInfo_P "zWrLh"
  563. #define REM16_Spl_open_data "zzlzzzzzz"
  564. #define REM16_plain_data "K"
  565. #define REM16_NetSplQmAbort_P "Di"
  566. #define REM16_NetSplQmClose_P "Di"
  567. #define REM16_NetSplQmEndDoc_P "Dhi"
  568. #define REM16_NetSplQmOpen_P "zTsWii"
  569. #define REM16_NetSplQmStartDoc_P "Dzi"
  570. #define REM16_NetSplQmWrite_P "DTsi"
  571. #define REM16_configgetall_info "B"
  572. #define REM32_configgetall_info REM16_configgetall_info
  573. #define REM16_configget_info "B"
  574. #define REM32_configget_info REM16_configget_info
  575. #define REM16_configset_info_0 "zz"
  576. #define REM32_configset_info_0 REM16_configset_info_0
  577. #define REM16_NetConfigGetAll_P "zzrLeh"
  578. #define REM16_NetConfigGet_P "zzzrLe"
  579. #define REM16_NetConfigSet_P "zzWWsTD"
  580. #define REM16_NetBuildGetInfo_P "DWrLh"
  581. #define REM16_build_info_0 "WD"
  582. #define REM16_NetGetDCName_P "zrL"
  583. #define REM16_dc_name "B18"
  584. #ifndef UNICODE
  585. #define REM32_dc_name REM16_dc_name
  586. #else
  587. #define REM32_dc_name "B36"
  588. #endif
  589. #define REM16_challenge_info_0 "B8"
  590. #define REM16_account_delta_info_0 "K"
  591. #define REM16_account_sync_info_0 "K"
  592. #define REM16_NetAccountDeltas_P "zb12g12b24WWrLehg24"
  593. #define REM16_NetAccountSync_P "zb12g12DWrLehig24"
  594. #define REM16_NetLogonEnum_P "WrLeh"
  595. #define REM16_I_NetPathType_P "ziD"
  596. #define REM16_I_NetPathCanonicalize_P "zrLziDD"
  597. #define REM16_I_NetPathCompare_P "zzDD"
  598. #define REM16_I_NetNameValidate_P "zWD"
  599. #define REM16_I_NetNameCanonicalize_P "zrLWD"
  600. #define REM16_I_NetNameCompare_P "zzWD"
  601. #define REM16_LocalOnlyCall ""
  602. #define REM32_LocalOnlyCall ""
  603. //
  604. // The following definitions exist for DOS LANMAN--Windows 3.0
  605. // Normally, there is a const char far * servername
  606. // as the first parameter, but this will be ignored (sort of)
  607. //
  608. #define REM16_DosPrintJobGetId_P "WrL"
  609. #define REM16_GetPrintId "WB16B13B"
  610. #define REM16_NetRemoteCopy_P "zzzzWWrL"
  611. #define REM16_copy_info "WB1"
  612. #define REM16_NetRemoteMove_P "zzzzWWrL"
  613. #define REM16_move_info "WB1"
  614. #define REM16_NetHandleGetInfo_P "WWrLh"
  615. #define REM16_NetHandleSetInfo_P "WWsTP"
  616. #define REM16_handle_info_1 "DW"
  617. #define REM16_handle_info_2 "z"
  618. #define REM16_WWkstaGetInfo_P "WrLhOW"
  619. // The following strings are defined for RIPL APIs
  620. #define REM16_RplWksta_info_0 "z"
  621. #define REM16_RplWksta_info_1 "zz"
  622. #define REM16_RplWksta_info_2 "b13b16b15b15zN"
  623. #define REM16_RplWksta_info_3 "b16b49"
  624. #define REM16_RplWkstaEnum_P "WzWrLehb4g4"
  625. #define REM16_RplWkstaGetInfo_P "zWrLh"
  626. #define REM16_RplWkstaSetInfo_P "zWsTPW"
  627. #define REM16_RplWkstaAdd_P "WsTW"
  628. #define REM16_RplWkstaDel_P "zW"
  629. #define REM16_RplProfile_info_0 "z"
  630. #define REM16_RplProfile_info_1 "zz"
  631. #define REM16_RplProfile_info_2 "b16b47"
  632. #define REM16_RplProfile_info_3 "b16b47b16"
  633. #define REM16_RplProfileEnum_P "WzWrLehb4g4"
  634. #define REM16_RplProfileGetInfo_P "zWrLh"
  635. #define REM16_RplProfileSetInfo_P "zWsTP"
  636. #define REM16_RplProfileAdd_P "WzsTW"
  637. #define REM16_RplProfileDel_P "zW"
  638. #define REM16_RplProfileClone_P "WzsTW"
  639. #define REM16_RplBaseProfileEnum_P "WrLehb4g4"
  640. // LAN Manager 3.0 API strings go here
  641. #define REM16_I_GuidGetAgent_P "g6i"
  642. #define REM16_I_GuidSetAgent_P "b6D"
  643. // update support
  644. #define REM16_NetAccountUpdate_P "b12g12WWrLh"
  645. #define REM16_NetAccountConfirmUpd_P "b12g12D"
  646. #define REM16_update_info_0 "K"
  647. //
  648. // SamrOemChangePasswordUser2 api support
  649. //
  650. #define REM32_SamOEMChgPasswordUser2_P "zsT" // Parameters to the call
  651. #define REMSmb_SamOEMChgPasswordUser2 "B516B16" // data that is passed
  652. //====================================================================
  653. //
  654. // SMB XACT message descriptors. These are the only descriptors that
  655. // can be passed over the network, and must not have any internal-
  656. // use-only characters as defined in RemTypes.h
  657. //
  658. //====================================================================
  659. #define REMSmb_share_info_0 "B13"
  660. #define REMSmb_share_info_1 "B13BWz"
  661. #define REMSmb_share_info_2 "B13BWzWWWzB9B"
  662. #define REMSmb_share_info_90 "B13BWz"
  663. #define REMSmb_share_info_92 "zzz"
  664. #define REMSmb_share_info_93 "zzz"
  665. #define REMSmb_share_info_0_setinfo "B13"
  666. #define REMSmb_share_info_1_setinfo "B13BWz"
  667. #define REMSmb_share_info_2_setinfo "B13BWzWWOB9B"
  668. #define REMSmb_share_info_90_setinfo "B13BWz"
  669. #define REMSmb_share_info_91_setinfo "B13BWzWWWOB9BB9BWzWWzWW"
  670. #define REMSmb_NetShareEnum_P "WrLeh"
  671. #define REMSmb_NetShareGetInfo_P "zWrLh"
  672. #define REMSmb_NetShareSetInfo_P "zWsTP"
  673. #define REMSmb_NetShareAdd_P "WsT"
  674. #define REMSmb_NetShareDel_P "zW"
  675. #define REMSmb_NetShareCheck_P "zh"
  676. #define REMSmb_session_info_0 "z"
  677. #define REMSmb_session_info_1 "zzWWWDDD"
  678. #define REMSmb_session_info_2 "zzWWWDDDz"
  679. #define REMSmb_session_info_10 "zzDD"
  680. #define REMSmb_NetSessionEnum_P "WrLeh"
  681. #define REMSmb_NetSessionGetInfo_P "zWrLh"
  682. #define REMSmb_NetSessionDel_P "zW"
  683. #define REMSmb_connection_info_0 "W"
  684. #define REMSmb_connection_info_1 "WWWWDzz"
  685. #define REMSmb_NetConnectionEnum_P "zWrLeh"
  686. #define REMSmb_file_info_0 "W"
  687. #define REMSmb_file_info_1 "WWWzz"
  688. #define REMSmb_file_info_2 "D"
  689. #define REMSmb_file_info_3 "DWWzz"
  690. #define REMSmb_NetFileEnum_P "zWrLeh"
  691. #define REMSmb_NetFileEnum2_P "zzWrLehb8g8"
  692. #define REMSmb_NetFileGetInfo_P "WWrLh"
  693. #define REMSmb_NetFileGetInfo2_P "DWrLh"
  694. #define REMSmb_NetFileClose_P "W"
  695. #define REMSmb_NetFileClose2_P "D"
  696. #define REMSmb_server_info_0 "B16"
  697. #define REMSmb_server_info_1 "B16BBDz"
  698. #define REMSmb_server_info_2 "B16BBDzDDDWWzWWWWWWWB21BzWWWWWWWWWWWWWWWWWWWWWWz"
  699. #define REMSmb_server_info_3 "B16BBDzDDDWWzWWWWWWWB21BzWWWWWWWWWWWWWWWWWWWWWWzDWz"
  700. #define REMSmb_server_info_1_setinfo "B16BBDz"
  701. #define REMSmb_server_info_2_setinfo "B16BBDzDDDWWzWWWWWWWB21BOWWWWWWWWWWWWWWWWWWWWWWz"
  702. #define REMSmb_server_admin_command "B"
  703. #define REMSmb_server_diskenum_0 "B3"
  704. #define REMSmb_authenticator_info_0 "B8D"
  705. #define REMSmb_server_diskft_100 "B"
  706. #define REMSmb_server_diskft_101 "BBWWWWDW"
  707. #define REMSmb_server_diskft_102 "BBWWWWDN"
  708. #define REMSmb_server_diskfterr_0 "DWWDDW"
  709. #define REMSmb_ft_info_0 "WWW"
  710. #define REMSmb_ft_drivestats_0 "BBWDDDDDDD"
  711. #define REMSmb_ft_error_info_1 "DWWDDWBBDD"
  712. #define REMSmb_I_NetServerDiskEnum_P "WrLeh"
  713. #define REMSmb_I_NetServerDiskGetInfo_P "WWrLh"
  714. #define REMSmb_I_FTVerifyMirror_P "Wz"
  715. #define REMSmb_I_FTAbortVerify_P "W"
  716. #define REMSmb_I_FTGetInfo_P "WrLh"
  717. #define REMSmb_I_FTSetInfo_P "WsTP"
  718. #define REMSmb_I_FTLockDisk_P "WWh"
  719. #define REMSmb_I_FTFixError_P "Dzhh2"
  720. #define REMSmb_I_FTAbortFix_P "D"
  721. #define REMSmb_I_FTDiagnoseError_P "Dhhhh"
  722. #define REMSmb_I_FTGetDriveStats_P "WWrLh"
  723. #define REMSmb_I_FTErrorGetInfo_P "DWrLh"
  724. #define REMSmb_NetServerEnum_P "WrLeh"
  725. #define REMSmb_I_NetServerEnum_P "WrLeh"
  726. #define REMSmb_NetServerEnum2_P "WrLehDz"
  727. #define REMSmb_I_NetServerEnum2_P "WrLehDz"
  728. #define REMSmb_NetServerEnum3_P "WrLehDzz"
  729. #define REMSmb_NetServerGetInfo_P "WrLh"
  730. #define REMSmb_NetServerSetInfo_P "WsTP"
  731. #define REMSmb_NetServerDiskEnum_P "WrLeh"
  732. #define REMSmb_NetServerAdminCommand_P "zhrLeh"
  733. #define REMSmb_NetServerReqChalleng_P "zb8g8"
  734. #define REMSmb_NetServerAuthenticat_P "zb8g8"
  735. #define REMSmb_NetServerPasswordSet_P "zb12g12b16"
  736. #define REMSmb_NetAuditOpen_P "h"
  737. #define REMSmb_NetAuditClear_P "zz"
  738. #define REMSmb_NetAuditRead_P "zb16g16DhDDrLeh"
  739. #define REMSmb_AuditLogReturnBuf "K"
  740. #define REMSmb_NetErrorLogOpen_P "h"
  741. #define REMSmb_NetErrorLogClear_P "zz"
  742. #define REMSmb_NetErrorLogRead_P "zb16g16DhDDrLeh"
  743. #define REMSmb_ErrorLogReturnBuf "K"
  744. #define REMSmb_chardev_info_0 "B9"
  745. #define REMSmb_chardev_info_1 "B10WB22D"
  746. #define REMSmb_chardevQ_info_0 "B13"
  747. #define REMSmb_chardevQ_info_1 "B14WzWW"
  748. #define REMSmb_NetCharDevEnum_P "WrLeh"
  749. #define REMSmb_NetCharDevGetInfo_P "zWrLh"
  750. #define REMSmb_NetCharDevControl_P "zW"
  751. #define REMSmb_NetCharDevQEnum_P "zWrLeh"
  752. #define REMSmb_NetCharDevQGetInfo_P "zzWrLh"
  753. #define REMSmb_NetCharDevQSetInfo_P "zWsTP"
  754. #define REMSmb_NetCharDevQPurge_P "z"
  755. #define REMSmb_NetCharDevQPurgeSelf_P "zz"
  756. #define REMSmb_msg_info_0 "B16"
  757. #define REMSmb_msg_info_1 "B16BBB16"
  758. #define REMSmb_send_struct "K"
  759. #define REMSmb_NetMessageNameEnum_P "WrLeh"
  760. #define REMSmb_NetMessageNameGetInfo_P "zWrLh"
  761. #define REMSmb_NetMessageNameAdd_P "zW"
  762. #define REMSmb_NetMessageNameDel_P "zW"
  763. #define REMSmb_NetMessageNameFwd_P "zzW"
  764. #define REMSmb_NetMessageNameUnFwd_P "z"
  765. #define REMSmb_NetMessageBufferSend_P "zsT"
  766. #define REMSmb_NetMessageFileSend_P "zz"
  767. #define REMSmb_NetMessageLogFileSet_P "zW"
  768. #define REMSmb_NetMessageLogFileGet_P "rLh"
  769. #define REMSmb_service_info_0 "B16"
  770. #define REMSmb_service_info_1 "B16WDW"
  771. #define REMSmb_service_info_2 "B16WDWB64"
  772. #define REMSmb_service_cmd_args "K"
  773. #define REMSmb_NetServiceEnum_P "WrLeh"
  774. #define REMSmb_NetServiceControl_P "zWWrL"
  775. #define REMSmb_NetServiceInstall_P "zF88sg88T" // See NOTE 2
  776. #define REMSmb_NetServiceGetInfo_P "zWrLh"
  777. #define REMSmb_access_info_0 "z"
  778. #define REMSmb_access_info_0_setinfo "z"
  779. #define REMSmb_access_info_1 "zWN"
  780. #define REMSmb_access_info_1_setinfo "OWN"
  781. #define REMSmb_access_list "B21BW"
  782. #define REMSmb_NetAccessEnum_P "zWWrLeh"
  783. #define REMSmb_NetAccessGetInfo_P "zWrLh"
  784. #define REMSmb_NetAccessSetInfo_P "zWsTP"
  785. #define REMSmb_NetAccessAdd_P "WsT"
  786. #define REMSmb_NetAccessDel_P "z"
  787. #define REMSmb_NetAccessGetUserPerms_P "zzh"
  788. #define REMSmb_group_info_0 "B21"
  789. #define REMSmb_group_info_1 "B21Bz"
  790. #define REMSmb_group_users_info_0 "B21"
  791. #define REMSmb_group_users_info_1 "B21BN"
  792. #define REMSmb_NetGroupEnum_P "WrLeh"
  793. #define REMSmb_NetGroupAdd_P "WsT"
  794. #define REMSmb_NetGroupDel_P "z"
  795. #define REMSmb_NetGroupAddUser_P "zz"
  796. #define REMSmb_NetGroupDelUser_P "zz"
  797. #define REMSmb_NetGroupGetUsers_P "zWrLeh"
  798. #define REMSmb_NetGroupSetUsers_P "zWsTW"
  799. #define REMSmb_NetGroupGetInfo_P "zWrLh"
  800. #define REMSmb_NetGroupSetInfo_P "zWsTP"
  801. #define REMSmb_user_info_0 "B21"
  802. #define REMSmb_user_info_1 "B21BB16DWzzWz"
  803. #define REMSmb_user_info_2 "B21BB16DWzzWzDzzzzDDDDWb21WWzWW"
  804. #define REMSmb_user_info_10 "B21Bzzz"
  805. #define REMSmb_user_info_11 "B21BzzzWDDzzDDWWzWzDWb21W"
  806. #define REMSmb_user_info_100 "DWW"
  807. #define REMSmb_user_info_101 "B60"
  808. #define REMSmb_user_modals_info_0 "WDDDWW"
  809. #define REMSmb_user_modals_info_1 "Wz"
  810. #define REMSmb_user_modals_info_100 "B50"
  811. #define REMSmb_user_modals_info_101 "zDDzDD"
  812. #define REMSmb_user_logon_info_0 "B21B"
  813. #define REMSmb_user_logon_info_1 "WB21BWDWWDDDDDDDzzzD"
  814. #define REMSmb_user_logon_info_2 "B21BzzzD"
  815. #define REMSmb_user_logoff_info_1 "WDW"
  816. #define REMSmb_NetUserEnum_P "WrLeh"
  817. #define REMSmb_NetUserAdd_P "WsTW"
  818. #define REMSmb_NetUserAdd2_P "WsTWW"
  819. #define REMSmb_NetUserDel_P "z"
  820. #define REMSmb_NetUserGetInfo_P "zWrLh"
  821. #define REMSmb_NetUserSetInfo_P "zWsTPW"
  822. #define REMSmb_NetUserSetInfo2_P "zWsTPWW"
  823. #define REMSmb_NetUserPasswordSet_P "zb16b16W"
  824. #define REMSmb_NetUserPasswordSet2_P "zb16b16WW"
  825. #define REMSmb_NetUserGetGroups_P "zWrLeh"
  826. #define REMSmb_NetUserSetGroups_P "zWsTW"
  827. #define REMSmb_NetUserModalsGet_P "WrLh"
  828. #define REMSmb_NetUserModalsSet_P "WsTP"
  829. #define REMSmb_NetUserEnum2_P "WrLDieh"
  830. #define REMSmb_NetUserValidate2_P "Wb62WWrLhWW"
  831. #define REMSmb_wksta_info_0 "WDzzzzBBDWDWWWWWWWWWWWWWWWWWWWzzW"
  832. #define REMSmb_wksta_info_0_setinfo "WDOOOOBBDWDWWWWWWWWWWWWWWWWWWWzzW"
  833. #define REMSmb_wksta_info_1 "WDzzzzBBDWDWWWWWWWWWWWWWWWWWWWzzWzzW"
  834. #define REMSmb_wksta_info_1_setinfo "WDOOOOBBDWDWWWWWWWWWWWWWWWWWWWzzWzzW"
  835. #define REMSmb_wksta_info_10 "zzzBBzz"
  836. #define REMSmb_wksta_annc_info "K"
  837. #define REMSmb_NetWkstaLogon_P "zzirL"
  838. #define REMSmb_NetWkstaLogoff_P "zD"
  839. #define REMSmb_NetWkstaSetUID_P "zzzW"
  840. #define REMSmb_NetWkstaGetInfo_P "WrLh"
  841. #define REMSmb_NetWkstaSetInfo_P "WsTP"
  842. #define REMSmb_NetWkstaUserLogon_P "zzWb54WrLh"
  843. #define REMSmb_NetWkstaUserLogoff_P "zzWb38WrLh"
  844. #define REMSmb_use_info_0 "B9Bz"
  845. #define REMSmb_use_info_1 "B9BzzWWWW"
  846. #define REMSmb_use_info_2 "B9BzzWWWWWWWzB16"
  847. #define REMSmb_NetUseEnum_P "WrLeh"
  848. #define REMSmb_NetUseAdd_P "WsT"
  849. #define REMSmb_NetUseDel_P "zW"
  850. #define REMSmb_NetUseGetInfo_P "zWrLh"
  851. #define REMSmb_printQ_0 "B13"
  852. #define REMSmb_printQ_1 "B13BWWWzzzzzWW"
  853. #define REMSmb_printQ_2 "B13BWWWzzzzzWN"
  854. #define REMSmb_printQ_3 "zWWWWzzzzWWzzl"
  855. #define REMSmb_printQ_4 "zWWWWzzzzWNzzl"
  856. #define REMSmb_printQ_5 "z"
  857. #define REMSmb_DosPrintQEnum_P "WrLeh"
  858. #define REMSmb_DosPrintQGetInfo_P "zWrLh"
  859. #define REMSmb_DosPrintQSetInfo_P "zWsTP"
  860. #define REMSmb_DosPrintQAdd_P "WsT"
  861. #define REMSmb_DosPrintQDel_P "z"
  862. #define REMSmb_DosPrintQPause_P "z"
  863. #define REMSmb_DosPrintQPurge_P "z"
  864. #define REMSmb_DosPrintQContinue_P "z"
  865. #define REMSmb_print_job_0 "W"
  866. #define REMSmb_print_job_1 "WB21BB16B10zWWzDDz"
  867. #define REMSmb_print_job_2 "WWzWWDDzz"
  868. #define REMSmb_print_job_3 "WWzWWDDzzzzzzzzzzlz"
  869. #define REMSmb_print_job_info_1_setinfo "WB21BB16B10zWWODDz"
  870. #define REMSmb_print_job_info_3_setinfo "WWzWWDDzzzzzOzzzzlO"
  871. #define REMSmb_DosPrintJobEnum_P "zWrLeh"
  872. #define REMSmb_DosPrintJobGetInfo_P "WWrLh"
  873. #define REMSmb_DosPrintJobSetInfo_P "WWsTP"
  874. #define REMSmb_DosPrintJobAdd_P "zsTF129g129h" // See note 2
  875. #define REMSmb_DosPrintJobSchedule_P "W"
  876. #define REMSmb_DosPrintJobDel_P "W"
  877. #define REMSmb_DosPrintJobPause_P "W"
  878. #define REMSmb_DosPrintJobContinue_P "W"
  879. #define REMSmb_print_dest_0 "B9"
  880. #define REMSmb_print_dest_1 "B9B21WWzW"
  881. #define REMSmb_print_dest_2 "z"
  882. #define REMSmb_print_dest_3 "zzzWWzzzWW"
  883. #define REMSmb_print_dest_info_3_setinfo "zOzWWOzzWW"
  884. #define REMSmb_DosPrintDestEnum_P "WrLeh"
  885. #define REMSmb_DosPrintDestGetInfo_P "zWrLh"
  886. #define REMSmb_DosPrintDestControl_P "zW"
  887. #define REMSmb_DosPrintDestAdd_P "WsT"
  888. #define REMSmb_DosPrintDestSetInfo_P "zWsTP"
  889. #define REMSmb_DosPrintDestDel_P "z"
  890. #define REMSmb_NetProfileSave_P "zDW"
  891. #define REMSmb_NetProfileLoad_P "zDrLD"
  892. #define REMSmb_profile_load_info "WDzD"
  893. #define REMSmb_statistics_info "B"
  894. #define REMSmb_statistics2_info_W "B120"
  895. #define REMSmb_stat_workstation_0 "DDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
  896. #define REMSmb_statistics2_info_S "B68"
  897. #define REMSmb_stat_server_0 "DDDDDDDDDDDDDDDDD"
  898. #define REMSmb_NetStatisticsGet_P "rLeh"
  899. #define REMSmb_NetStatisticsClear_P ""
  900. #define REMSmb_NetStatisticsGet2_P "zDWDrLh"
  901. #define REMSmb_NetRemoteTOD_P "rL"
  902. #define REMSmb_time_of_day_info "DDBBBBWWBBWB"
  903. #define REMSmb_netbios_info_0 "B17"
  904. #define REMSmb_netbios_info_1 "B17B9BBWWDWWW"
  905. #define REMSmb_NetBiosEnum_P "WrLeh"
  906. #define REMSmb_NetBiosGetInfo_P "zWrLh"
  907. #define REMSmb_Spl_open_data "zzlzzzzzz"
  908. #define REMSmb_plain_data "K"
  909. #define REMSmb_NetSplQmAbort_P "Di"
  910. #define REMSmb_NetSplQmClose_P "Di"
  911. #define REMSmb_NetSplQmEndDoc_P "Dhi"
  912. #define REMSmb_NetSplQmOpen_P "zTsWii"
  913. #define REMSmb_NetSplQmStartDoc_P "Dzi"
  914. #define REMSmb_NetSplQmWrite_P "DTsi"
  915. #define REMSmb_configgetall_info "B"
  916. #define REMSmb_configget_info "B"
  917. #define REMSmb_configset_info_0 "zz"
  918. #define REMSmb_NetConfigGetAll_P "zzrLeh"
  919. #define REMSmb_NetConfigGet_P "zzzrLe"
  920. #define REMSmb_NetConfigSet_P "zzWWsTD"
  921. #define REMSmb_NetBuildGetInfo_P "DWrLh"
  922. #define REMSmb_build_info_0 "WD"
  923. #define REMSmb_NetGetDCName_P "zrL"
  924. #define REMSmb_dc_name "B18"
  925. #define REMSmb_challenge_info_0 "B8"
  926. #define REMSmb_account_delta_info_0 "K"
  927. #define REMSmb_account_sync_info_0 "K"
  928. #define REMSmb_NetAccountDeltas_P "zb12g12b24WWrLehg24"
  929. #define REMSmb_NetAccountSync_P "zb12g12DWrLehig24"
  930. #define REMSmb_NetLogonEnum_P "WrLeh"
  931. #define REMSmb_I_NetPathType_P "ziD"
  932. #define REMSmb_I_NetPathCanonicalize_P "zrLziDD"
  933. #define REMSmb_I_NetPathCompare_P "zzDD"
  934. #define REMSmb_I_NetNameValidate_P "zWD"
  935. #define REMSmb_I_NetNameCanonicalize_P "zrLWD"
  936. #define REMSmb_I_NetNameCompare_P "zzWD"
  937. #define REMSmb_LocalOnlyCall ""
  938. //
  939. // The following definitions exist for DOS LANMAN--Windows 3.0
  940. // Normally, there is a const char far * servername
  941. // as the first parameter, but this will be ignored (sort of)
  942. //
  943. #define REMSmb_DosPrintJobGetId_P "WrL"
  944. #define REMSmb_GetPrintId "WB16B13B"
  945. #define REMSmb_NetRemoteCopy_P "zzzzWWrL"
  946. #define REMSmb_copy_info "WB1"
  947. #define REMSmb_NetRemoteMove_P "zzzzWWrL"
  948. #define REMSmb_move_info "WB1"
  949. #define REMSmb_NetHandleGetInfo_P "WWrLh"
  950. #define REMSmb_NetHandleSetInfo_P "WWsTP"
  951. #define REMSmb_handle_info_1 "DW"
  952. #define REMSmb_handle_info_2 "z"
  953. #define REMSmb_WWkstaGetInfo_P "WrLhOW"
  954. // The following strings are defined for RIPL APIs
  955. #define REMSmb_RplWksta_info_0 "z"
  956. #define REMSmb_RplWksta_info_1 "zz"
  957. #define REMSmb_RplWksta_info_2 "b13b16b15b15zN"
  958. #define REMSmb_RplWksta_info_3 "b16b49"
  959. #define REMSmb_RplWkstaEnum_P "WzWrLehb4g4"
  960. #define REMSmb_RplWkstaGetInfo_P "zWrLh"
  961. #define REMSmb_RplWkstaSetInfo_P "zWsTPW"
  962. #define REMSmb_RplWkstaAdd_P "WsTW"
  963. #define REMSmb_RplWkstaDel_P "zW"
  964. #define REMSmb_RplProfile_info_0 "z"
  965. #define REMSmb_RplProfile_info_1 "zz"
  966. #define REMSmb_RplProfile_info_2 "b16b47"
  967. #define REMSmb_RplProfile_info_3 "b16b47b16"
  968. #define REMSmb_RplProfileEnum_P "WzWrLehb4g4"
  969. #define REMSmb_RplProfileGetInfo_P "zWrLh"
  970. #define REMSmb_RplProfileSetInfo_P "zWsTP"
  971. #define REMSmb_RplProfileAdd_P "WzsTW"
  972. #define REMSmb_RplProfileDel_P "zW"
  973. #define REMSmb_RplProfileClone_P "WzsTW"
  974. #define REMSmb_RplBaseProfileEnum_P "WrLehb4g4"
  975. // LAN Manager 3.0 API strings go here
  976. #define REMSmb_I_GuidGetAgent_P "g6i"
  977. #define REMSmb_I_GuidSetAgent_P "b6D"
  978. // update support
  979. #define REMSmb_NetAccountUpdate_P "b12g12WWrLh"
  980. #define REMSmb_NetAccountConfirmUpd_P "b12g12D"
  981. #define REMSmb_update_info_0 "K"
  982. #endif // ndef _REMDEF_