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