Home | History | Annotate | Download | only in include
      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
    350