lmwksta.h 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349
  1. /**
  2. * This file has no copyright assigned and is placed in the Public Domain.
  3. * This file is part of the mingw-w64 runtime package.
  4. * No warranty is given; refer to the file DISCLAIMER.PD within this package.
  5. */
  6. #ifndef _LMWKSTA_
  7. #define _LMWKSTA_
  8. #ifdef __cplusplus
  9. extern "C" {
  10. #endif
  11. #include <lmcons.h>
  12. #include <lmuseflg.h>
  13. NET_API_STATUS WINAPI NetWkstaGetInfo(LMSTR servername,DWORD level,LPBYTE *bufptr);
  14. NET_API_STATUS WINAPI NetWkstaSetInfo(LMSTR servername,DWORD level,LPBYTE buffer,LPDWORD parm_err);
  15. NET_API_STATUS WINAPI NetWkstaUserGetInfo(LMSTR reserved,DWORD level,LPBYTE *bufptr);
  16. NET_API_STATUS WINAPI NetWkstaUserSetInfo(LMSTR reserved,DWORD level,LPBYTE buf,LPDWORD parm_err);
  17. NET_API_STATUS WINAPI NetWkstaUserEnum(LMSTR servername,DWORD level,LPBYTE *bufptr,DWORD prefmaxlen,LPDWORD entriesread,LPDWORD totalentries,LPDWORD resumehandle);
  18. NET_API_STATUS WINAPI NetWkstaTransportAdd(LMSTR servername,DWORD level,LPBYTE buf,LPDWORD parm_err);
  19. NET_API_STATUS WINAPI NetWkstaTransportDel(LMSTR servername,LMSTR transportname,DWORD ucond);
  20. NET_API_STATUS WINAPI NetWkstaTransportEnum(LMSTR servername,DWORD level,LPBYTE *bufptr,DWORD prefmaxlen,LPDWORD entriesread,LPDWORD totalentries,LPDWORD resumehandle);
  21. typedef struct _WKSTA_INFO_100 {
  22. DWORD wki100_platform_id;
  23. LMSTR wki100_computername;
  24. LMSTR wki100_langroup;
  25. DWORD wki100_ver_major;
  26. DWORD wki100_ver_minor;
  27. } WKSTA_INFO_100,*PWKSTA_INFO_100,*LPWKSTA_INFO_100;
  28. typedef struct _WKSTA_INFO_101 {
  29. DWORD wki101_platform_id;
  30. LMSTR wki101_computername;
  31. LMSTR wki101_langroup;
  32. DWORD wki101_ver_major;
  33. DWORD wki101_ver_minor;
  34. LMSTR wki101_lanroot;
  35. } WKSTA_INFO_101,*PWKSTA_INFO_101,*LPWKSTA_INFO_101;
  36. typedef struct _WKSTA_INFO_102 {
  37. DWORD wki102_platform_id;
  38. LMSTR wki102_computername;
  39. LMSTR wki102_langroup;
  40. DWORD wki102_ver_major;
  41. DWORD wki102_ver_minor;
  42. LMSTR wki102_lanroot;
  43. DWORD wki102_logged_on_users;
  44. } WKSTA_INFO_102,*PWKSTA_INFO_102,*LPWKSTA_INFO_102;
  45. typedef struct _WKSTA_INFO_302{
  46. DWORD wki302_char_wait;
  47. DWORD wki302_collection_time;
  48. DWORD wki302_maximum_collection_count;
  49. DWORD wki302_keep_conn;
  50. DWORD wki302_keep_search;
  51. DWORD wki302_max_cmds;
  52. DWORD wki302_num_work_buf;
  53. DWORD wki302_siz_work_buf;
  54. DWORD wki302_max_wrk_cache;
  55. DWORD wki302_sess_timeout;
  56. DWORD wki302_siz_error;
  57. DWORD wki302_num_alerts;
  58. DWORD wki302_num_services;
  59. DWORD wki302_errlog_sz;
  60. DWORD wki302_print_buf_time;
  61. DWORD wki302_num_char_buf;
  62. DWORD wki302_siz_char_buf;
  63. LMSTR wki302_wrk_heuristics;
  64. DWORD wki302_mailslots;
  65. DWORD wki302_num_dgram_buf;
  66. } WKSTA_INFO_302,*PWKSTA_INFO_302,*LPWKSTA_INFO_302;
  67. typedef struct _WKSTA_INFO_402{
  68. DWORD wki402_char_wait;
  69. DWORD wki402_collection_time;
  70. DWORD wki402_maximum_collection_count;
  71. DWORD wki402_keep_conn;
  72. DWORD wki402_keep_search;
  73. DWORD wki402_max_cmds;
  74. DWORD wki402_num_work_buf;
  75. DWORD wki402_siz_work_buf;
  76. DWORD wki402_max_wrk_cache;
  77. DWORD wki402_sess_timeout;
  78. DWORD wki402_siz_error;
  79. DWORD wki402_num_alerts;
  80. DWORD wki402_num_services;
  81. DWORD wki402_errlog_sz;
  82. DWORD wki402_print_buf_time;
  83. DWORD wki402_num_char_buf;
  84. DWORD wki402_siz_char_buf;
  85. LMSTR wki402_wrk_heuristics;
  86. DWORD wki402_mailslots;
  87. DWORD wki402_num_dgram_buf;
  88. DWORD wki402_max_threads;
  89. } WKSTA_INFO_402,*PWKSTA_INFO_402,*LPWKSTA_INFO_402;
  90. typedef struct _WKSTA_INFO_502{
  91. DWORD wki502_char_wait;
  92. DWORD wki502_collection_time;
  93. DWORD wki502_maximum_collection_count;
  94. DWORD wki502_keep_conn;
  95. DWORD wki502_max_cmds;
  96. DWORD wki502_sess_timeout;
  97. DWORD wki502_siz_char_buf;
  98. DWORD wki502_max_threads;
  99. DWORD wki502_lock_quota;
  100. DWORD wki502_lock_increment;
  101. DWORD wki502_lock_maximum;
  102. DWORD wki502_pipe_increment;
  103. DWORD wki502_pipe_maximum;
  104. DWORD wki502_cache_file_timeout;
  105. DWORD wki502_dormant_file_limit;
  106. DWORD wki502_read_ahead_throughput;
  107. DWORD wki502_num_mailslot_buffers;
  108. DWORD wki502_num_srv_announce_buffers;
  109. DWORD wki502_max_illegal_datagram_events;
  110. DWORD wki502_illegal_datagram_event_reset_frequency;
  111. WINBOOL wki502_log_election_packets;
  112. WINBOOL wki502_use_opportunistic_locking;
  113. WINBOOL wki502_use_unlock_behind;
  114. WINBOOL wki502_use_close_behind;
  115. WINBOOL wki502_buf_named_pipes;
  116. WINBOOL wki502_use_lock_read_unlock;
  117. WINBOOL wki502_utilize_nt_caching;
  118. WINBOOL wki502_use_raw_read;
  119. WINBOOL wki502_use_raw_write;
  120. WINBOOL wki502_use_write_raw_data;
  121. WINBOOL wki502_use_encryption;
  122. WINBOOL wki502_buf_files_deny_write;
  123. WINBOOL wki502_buf_read_only_files;
  124. WINBOOL wki502_force_core_create_mode;
  125. WINBOOL wki502_use_512_byte_max_transfer;
  126. } WKSTA_INFO_502,*PWKSTA_INFO_502,*LPWKSTA_INFO_502;
  127. typedef struct _WKSTA_INFO_1010 {
  128. DWORD wki1010_char_wait;
  129. } WKSTA_INFO_1010,*PWKSTA_INFO_1010,*LPWKSTA_INFO_1010;
  130. typedef struct _WKSTA_INFO_1011 {
  131. DWORD wki1011_collection_time;
  132. } WKSTA_INFO_1011,*PWKSTA_INFO_1011,*LPWKSTA_INFO_1011;
  133. typedef struct _WKSTA_INFO_1012 {
  134. DWORD wki1012_maximum_collection_count;
  135. } WKSTA_INFO_1012,*PWKSTA_INFO_1012,*LPWKSTA_INFO_1012;
  136. typedef struct _WKSTA_INFO_1027 {
  137. DWORD wki1027_errlog_sz;
  138. } WKSTA_INFO_1027,*PWKSTA_INFO_1027,*LPWKSTA_INFO_1027;
  139. typedef struct _WKSTA_INFO_1028 {
  140. DWORD wki1028_print_buf_time;
  141. } WKSTA_INFO_1028,*PWKSTA_INFO_1028,*LPWKSTA_INFO_1028;
  142. typedef struct _WKSTA_INFO_1032 {
  143. DWORD wki1032_wrk_heuristics;
  144. } WKSTA_INFO_1032,*PWKSTA_INFO_1032,*LPWKSTA_INFO_1032;
  145. typedef struct _WKSTA_INFO_1013 {
  146. DWORD wki1013_keep_conn;
  147. } WKSTA_INFO_1013,*PWKSTA_INFO_1013,*LPWKSTA_INFO_1013;
  148. typedef struct _WKSTA_INFO_1018 {
  149. DWORD wki1018_sess_timeout;
  150. } WKSTA_INFO_1018,*PWKSTA_INFO_1018,*LPWKSTA_INFO_1018;
  151. typedef struct _WKSTA_INFO_1023 {
  152. DWORD wki1023_siz_char_buf;
  153. } WKSTA_INFO_1023,*PWKSTA_INFO_1023,*LPWKSTA_INFO_1023;
  154. typedef struct _WKSTA_INFO_1033 {
  155. DWORD wki1033_max_threads;
  156. } WKSTA_INFO_1033,*PWKSTA_INFO_1033,*LPWKSTA_INFO_1033;
  157. typedef struct _WKSTA_INFO_1041 {
  158. DWORD wki1041_lock_quota;
  159. } WKSTA_INFO_1041,*PWKSTA_INFO_1041,*LPWKSTA_INFO_1041;
  160. typedef struct _WKSTA_INFO_1042 {
  161. DWORD wki1042_lock_increment;
  162. } WKSTA_INFO_1042,*PWKSTA_INFO_1042,*LPWKSTA_INFO_1042;
  163. typedef struct _WKSTA_INFO_1043 {
  164. DWORD wki1043_lock_maximum;
  165. } WKSTA_INFO_1043,*PWKSTA_INFO_1043,*LPWKSTA_INFO_1043;
  166. typedef struct _WKSTA_INFO_1044 {
  167. DWORD wki1044_pipe_increment;
  168. } WKSTA_INFO_1044,*PWKSTA_INFO_1044,*LPWKSTA_INFO_1044;
  169. typedef struct _WKSTA_INFO_1045 {
  170. DWORD wki1045_pipe_maximum;
  171. } WKSTA_INFO_1045,*PWKSTA_INFO_1045,*LPWKSTA_INFO_1045;
  172. typedef struct _WKSTA_INFO_1046 {
  173. DWORD wki1046_dormant_file_limit;
  174. } WKSTA_INFO_1046,*PWKSTA_INFO_1046,*LPWKSTA_INFO_1046;
  175. typedef struct _WKSTA_INFO_1047 {
  176. DWORD wki1047_cache_file_timeout;
  177. } WKSTA_INFO_1047,*PWKSTA_INFO_1047,*LPWKSTA_INFO_1047;
  178. typedef struct _WKSTA_INFO_1048 {
  179. WINBOOL wki1048_use_opportunistic_locking;
  180. } WKSTA_INFO_1048,*PWKSTA_INFO_1048,*LPWKSTA_INFO_1048;
  181. typedef struct _WKSTA_INFO_1049 {
  182. WINBOOL wki1049_use_unlock_behind;
  183. } WKSTA_INFO_1049,*PWKSTA_INFO_1049,*LPWKSTA_INFO_1049;
  184. typedef struct _WKSTA_INFO_1050 {
  185. WINBOOL wki1050_use_close_behind;
  186. } WKSTA_INFO_1050,*PWKSTA_INFO_1050,*LPWKSTA_INFO_1050;
  187. typedef struct _WKSTA_INFO_1051 {
  188. WINBOOL wki1051_buf_named_pipes;
  189. } WKSTA_INFO_1051,*PWKSTA_INFO_1051,*LPWKSTA_INFO_1051;
  190. typedef struct _WKSTA_INFO_1052 {
  191. WINBOOL wki1052_use_lock_read_unlock;
  192. } WKSTA_INFO_1052,*PWKSTA_INFO_1052,*LPWKSTA_INFO_1052;
  193. typedef struct _WKSTA_INFO_1053 {
  194. WINBOOL wki1053_utilize_nt_caching;
  195. } WKSTA_INFO_1053,*PWKSTA_INFO_1053,*LPWKSTA_INFO_1053;
  196. typedef struct _WKSTA_INFO_1054 {
  197. WINBOOL wki1054_use_raw_read;
  198. } WKSTA_INFO_1054,*PWKSTA_INFO_1054,*LPWKSTA_INFO_1054;
  199. typedef struct _WKSTA_INFO_1055 {
  200. WINBOOL wki1055_use_raw_write;
  201. } WKSTA_INFO_1055,*PWKSTA_INFO_1055,*LPWKSTA_INFO_1055;
  202. typedef struct _WKSTA_INFO_1056 {
  203. WINBOOL wki1056_use_write_raw_data;
  204. } WKSTA_INFO_1056,*PWKSTA_INFO_1056,*LPWKSTA_INFO_1056;
  205. typedef struct _WKSTA_INFO_1057 {
  206. WINBOOL wki1057_use_encryption;
  207. } WKSTA_INFO_1057,*PWKSTA_INFO_1057,*LPWKSTA_INFO_1057;
  208. typedef struct _WKSTA_INFO_1058 {
  209. WINBOOL wki1058_buf_files_deny_write;
  210. } WKSTA_INFO_1058,*PWKSTA_INFO_1058,*LPWKSTA_INFO_1058;
  211. typedef struct _WKSTA_INFO_1059 {
  212. WINBOOL wki1059_buf_read_only_files;
  213. } WKSTA_INFO_1059,*PWKSTA_INFO_1059,*LPWKSTA_INFO_1059;
  214. typedef struct _WKSTA_INFO_1060 {
  215. WINBOOL wki1060_force_core_create_mode;
  216. } WKSTA_INFO_1060,*PWKSTA_INFO_1060,*LPWKSTA_INFO_1060;
  217. typedef struct _WKSTA_INFO_1061 {
  218. WINBOOL wki1061_use_512_byte_max_transfer;
  219. } WKSTA_INFO_1061,*PWKSTA_INFO_1061,*LPWKSTA_INFO_1061;
  220. typedef struct _WKSTA_INFO_1062 {
  221. DWORD wki1062_read_ahead_throughput;
  222. } WKSTA_INFO_1062,*PWKSTA_INFO_1062,*LPWKSTA_INFO_1062;
  223. typedef struct _WKSTA_USER_INFO_0 {
  224. LMSTR wkui0_username;
  225. } WKSTA_USER_INFO_0,*PWKSTA_USER_INFO_0,*LPWKSTA_USER_INFO_0;
  226. typedef struct _WKSTA_USER_INFO_1 {
  227. LMSTR wkui1_username;
  228. LMSTR wkui1_logon_domain;
  229. LMSTR wkui1_oth_domains;
  230. LMSTR wkui1_logon_server;
  231. } WKSTA_USER_INFO_1,*PWKSTA_USER_INFO_1,*LPWKSTA_USER_INFO_1;
  232. typedef struct _WKSTA_USER_INFO_1101 {
  233. LMSTR wkui1101_oth_domains;
  234. } WKSTA_USER_INFO_1101,*PWKSTA_USER_INFO_1101,*LPWKSTA_USER_INFO_1101;
  235. typedef struct _WKSTA_TRANSPORT_INFO_0 {
  236. DWORD wkti0_quality_of_service;
  237. DWORD wkti0_number_of_vcs;
  238. LMSTR wkti0_transport_name;
  239. LMSTR wkti0_transport_address;
  240. WINBOOL wkti0_wan_ish;
  241. } WKSTA_TRANSPORT_INFO_0,*PWKSTA_TRANSPORT_INFO_0,*LPWKSTA_TRANSPORT_INFO_0;
  242. #define WKSTA_PLATFORM_ID_PARMNUM 100
  243. #define WKSTA_COMPUTERNAME_PARMNUM 1
  244. #define WKSTA_LANGROUP_PARMNUM 2
  245. #define WKSTA_VER_MAJOR_PARMNUM 4
  246. #define WKSTA_VER_MINOR_PARMNUM 5
  247. #define WKSTA_LOGGED_ON_USERS_PARMNUM 6
  248. #define WKSTA_LANROOT_PARMNUM 7
  249. #define WKSTA_LOGON_DOMAIN_PARMNUM 8
  250. #define WKSTA_LOGON_SERVER_PARMNUM 9
  251. #define WKSTA_CHARWAIT_PARMNUM 10
  252. #define WKSTA_CHARTIME_PARMNUM 11
  253. #define WKSTA_CHARCOUNT_PARMNUM 12
  254. #define WKSTA_KEEPCONN_PARMNUM 13
  255. #define WKSTA_KEEPSEARCH_PARMNUM 14
  256. #define WKSTA_MAXCMDS_PARMNUM 15
  257. #define WKSTA_NUMWORKBUF_PARMNUM 16
  258. #define WKSTA_MAXWRKCACHE_PARMNUM 17
  259. #define WKSTA_SESSTIMEOUT_PARMNUM 18
  260. #define WKSTA_SIZERROR_PARMNUM 19
  261. #define WKSTA_NUMALERTS_PARMNUM 20
  262. #define WKSTA_NUMSERVICES_PARMNUM 21
  263. #define WKSTA_NUMCHARBUF_PARMNUM 22
  264. #define WKSTA_SIZCHARBUF_PARMNUM 23
  265. #define WKSTA_ERRLOGSZ_PARMNUM 27
  266. #define WKSTA_PRINTBUFTIME_PARMNUM 28
  267. #define WKSTA_SIZWORKBUF_PARMNUM 29
  268. #define WKSTA_MAILSLOTS_PARMNUM 30
  269. #define WKSTA_NUMDGRAMBUF_PARMNUM 31
  270. #define WKSTA_WRKHEURISTICS_PARMNUM 32
  271. #define WKSTA_MAXTHREADS_PARMNUM 33
  272. #define WKSTA_LOCKQUOTA_PARMNUM 41
  273. #define WKSTA_LOCKINCREMENT_PARMNUM 42
  274. #define WKSTA_LOCKMAXIMUM_PARMNUM 43
  275. #define WKSTA_PIPEINCREMENT_PARMNUM 44
  276. #define WKSTA_PIPEMAXIMUM_PARMNUM 45
  277. #define WKSTA_DORMANTFILELIMIT_PARMNUM 46
  278. #define WKSTA_CACHEFILETIMEOUT_PARMNUM 47
  279. #define WKSTA_USEOPPORTUNISTICLOCKING_PARMNUM 48
  280. #define WKSTA_USEUNLOCKBEHIND_PARMNUM 49
  281. #define WKSTA_USECLOSEBEHIND_PARMNUM 50
  282. #define WKSTA_BUFFERNAMEDPIPES_PARMNUM 51
  283. #define WKSTA_USELOCKANDREADANDUNLOCK_PARMNUM 52
  284. #define WKSTA_UTILIZENTCACHING_PARMNUM 53
  285. #define WKSTA_USERAWREAD_PARMNUM 54
  286. #define WKSTA_USERAWWRITE_PARMNUM 55
  287. #define WKSTA_USEWRITERAWWITHDATA_PARMNUM 56
  288. #define WKSTA_USEENCRYPTION_PARMNUM 57
  289. #define WKSTA_BUFFILESWITHDENYWRITE_PARMNUM 58
  290. #define WKSTA_BUFFERREADONLYFILES_PARMNUM 59
  291. #define WKSTA_FORCECORECREATEMODE_PARMNUM 60
  292. #define WKSTA_USE512BYTESMAXTRANSFER_PARMNUM 61
  293. #define WKSTA_READAHEADTHRUPUT_PARMNUM 62
  294. #define WKSTA_OTH_DOMAINS_PARMNUM 101
  295. #define TRANSPORT_QUALITYOFSERVICE_PARMNUM 201
  296. #define TRANSPORT_NAME_PARMNUM 202
  297. #ifdef __cplusplus
  298. }
  299. #endif
  300. #endif