Workstation and Workstation User Functions
The workstation functions perform administrative tasks on a local or remote workstation. Any user or application with admin group membership on a local or remote server can perform administrative tasks on that workstation to control its operation, user access, and resource sharing. The workstation functions are:
NetWkstaGetInfo
NetWkstaSetInfo
The workstation user functions allow access to user-specific information. The user-specific information is separated from the workstation information because there can be more than one user on a workstation. The workstation user functions are:
NetWkstaUserEnum
NetWkstaUserGetInfo
NetWkstaUserSetInfo
The low-level parameters that affect a workstation's operation can be examined and modified by calling NetWkstaGetInfo and NetWkstaSetInfo.
The workstation API structures are restructured from those of LAN Man 2.x to allow the information to be grouped by type and security accesses. The LAN Manager 2.x workstation information format is discontinued due to the following problems:
·The base level (0 and 1) were not grouped by accessibility such that a non superset level (level 10) was required to allow guest access to the information.
·Platform specific implementation information was included in the base levels such that every platform had to return all information including a default for non-relevant fields. This grew the size of the information structures unneccessarily, making the function cumbersome to use.
The workstation functions allow access to two discrete groups of workstation information:
·System information.
·Platform specific information (Windows NT, OS/2, MS-DOS, and so on)
Within each group the fields are categorized by security access such that the guest accessible fields are a subset of the user accessible fields that are a subset of the admin accessible fields.
The system information structure contains a platform base number that identifies the levels and format of the platform-specific information structures.
The workstation function information structures are as follows:
WKSTA_INFO_100
WKSTA_INFO_101
WKSTA_INFO_102
WKSTA_INFO_302
WKSTA_INFO_402
The workstation user function information structures are:
WKSTA_USER_INFO_0WKSTA_USER_INFO_1WKSTA_USER_INFO_1101
For NetWkstaSetInfo, parmnum values refer to the members of the workstation info structure, as follows. These values are used when indicating an error in a specific parameter through parm_err.
parmnum value | Member of wksta_info structure |
WKSTA_PLATFORM_ID_PARMNUM | wki_platform_id |
WKSTA_COMPUTERNAME_PARMNUM | wki_computername |
WKSTA_LANGROUP_PARMNUM | wki_langroup |
WKSTA_OTH_DOMAINS_PARMNUM | wki_oth_domains |
WKSTA_VER_MAJOR_PARMNUM | wki_ver_major |
WKSTA_VER_MINOR_PARMNUM | wki_ver_minor |
WKSTA_LOGGED_ON_USERS_PARMNUM | wki_logged_on_users |
WKSTA_LANROOT_PARMNUM | wki_lanroot |
WKSTA_LOGON_DOMAIN_PARMNUM | wki_logon_domain |
WKSTA_LOGON_SERVER_PARMNUM | wki_logon_server |
WKSTA_CHARWAIT_PARMNUM | wki_char_wait |
WKSTA_CHARTIME_PARMNUM | wki_collection_time |
WKSTA_CHARCOUNT_PARMNUM | wki_maximum_collection_count |
WKSTA_KEEPCONN_PARMNUM | wki_keep_conn |
WKSTA_KEEPSEARCH_PARMNUM | wki_keep_search |
WKSTA_MAXCMDS_PARMNUM | wki_max_cmds |
WKSTA_NUMWORKBUF_PARMNUM | wki_num_work_buf |
WKSTA_MAXWRKCACHE_PARMNUM | wki_max_wrk_cache |
WKSTA_SESSTIMEOUT_PARMNUM | wki_sess_timeout |
WKSTA_SIZERROR_PARMNUM | wki_siz_error |
WKSTA_NUMALERTS_PRAMNUM | wki_num_alerts |
WKSTA_NUMSERVICES_PARMNUM | wki_num_services |
WKSTA_ERRLOGSZ_PARMNUM | wki_errlog_sz |
WKSTA_PRINTBUFTIME_PARMNUM | wki_print_buf_time |
WKSTA_NUMCHARBUF_PARMNUM | wki_num_char_buf |
WKSTA_SIZCHARBUF_PARMNUM | wki_siz_char_buf |
WKSTA_WRKHEURISTICS_PARMNUM | wki_wrk_heuristics |
WKSTA_MAILSLOTS_PRAMNUM | wki_mailslots |
WKSTA_MAXTHREADS_PARMNUM | wki_max_threads |
WKSTA_SIZWORKBUF_PARMNUM | wki_siz_work_buf |
WKSTA_DORMANTTIMEOUT_PARMNUM | wki_dormant_timeout |
WKSTA_LOCKQUOTA_PARMNUM | wki_lock_quota |
WKSTA_LOCKINCREMENT_PARMNUM | wki_lock_increment |
WKSTA_LOCKMAXIMUM_PARMNUM | wki_lock_maximum |
WKSTA_PIPEINCREMENT_PRAMNUM | wki_pipe_increment |
WKSTA_PIPEMAXIMUM_PARMNUM | wki_pipe_maximum |
WKSTA_RAWREADTHRESHOLD_PARMNUM | wki_raw_read_threshold |
WKSTA_USEOPLOCKING_PARMNUM | wki_use_opportunistic_locking |
WKSTA_USEOPBATCH_PARMNUM | wki_use_op_batch |
WKSTA_USEUNLOCKBEHIND_PARMNUM | wki_use_unlock_behind |
WKSTA_USECLOSEBEHIND_PARMNUM | wki_use_close_behind |
WKSTA_BUFNAMEDPIPES_PARMNUM | wksta_buf_named_pipes |
WKSTA_USELOCKANDREADANDUNLOCK _PARMNUM |
wki_use_lock_and_read_and _unlock |
WKSTA_UTILIZENTCACHING_PARMNUM | wki_utilize_nt_caching |
WKSTA_USERAWREAD_PARMNUM | wki_use_raw_read |
WKSTA_USEWRITERAWWITHDATA_PARMNUM | wki_use_write_raw_with_data |
WKSTA_USEENCRYPTION_PARMNUM | wki_use_encryption |
WKSTA_BUFFILESWITHDENYWRITE _PARMNUM |
wki_buf_files_with_deny_write |
WKSTA_BUFREADONLYFILES_PRAMNUM | wki_buf_read_only_files |
WKSTA_FORCECORECREATEMODE_PARMNUM | wki_force_core_create_mode |
WKSTA_USE512BYTESMAXTRANSFER _PARMNUM |
wki_use_512_bytes_max_transfer |