/* DO NOT EDIT This filter was automatically generated from wkssvc.idl and wkssvc.cnf. Pidl is a perl based IDL compiler for DCE/RPC idl files. It is maintained by the Samba team, not the Wireshark team. Instructions on how to download and install Pidl can be found at http://wiki.wireshark.org/Pidl */ #ifdef HAVE_CONFIG_H #include "config.h" #endif #include #include #include #include "packet-dcerpc.h" #include "packet-dcerpc-nt.h" #include "packet-windows-common.h" #include "packet-dcerpc-wkssvc.h" /* Ett declarations */ static gint ett_dcerpc_wkssvc = -1; static gint ett_wkssvc_wkssvc_NetWkstaInfo100 = -1; static gint ett_wkssvc_wkssvc_NetWkstaInfo101 = -1; static gint ett_wkssvc_wkssvc_NetWkstaInfo102 = -1; static gint ett_wkssvc_wkssvc_NetWkstaInfo502 = -1; static gint ett_wkssvc_wkssvc_NetWkstaInfo1010 = -1; static gint ett_wkssvc_wkssvc_NetWkstaInfo1011 = -1; static gint ett_wkssvc_wkssvc_NetWkstaInfo1012 = -1; static gint ett_wkssvc_wkssvc_NetWkstaInfo1013 = -1; static gint ett_wkssvc_wkssvc_NetWkstaInfo1018 = -1; static gint ett_wkssvc_wkssvc_NetWkstaInfo1023 = -1; static gint ett_wkssvc_wkssvc_NetWkstaInfo1027 = -1; static gint ett_wkssvc_wkssvc_NetWkstaInfo1033 = -1; static gint ett_wkssvc_wkssvc_NetWkstaInfo = -1; static gint ett_wkssvc_USER_INFO_0 = -1; static gint ett_wkssvc_USER_INFO_0_CONTAINER = -1; static gint ett_wkssvc_USER_INFO_1 = -1; static gint ett_wkssvc_USER_INFO_1_CONTAINER = -1; static gint ett_wkssvc_WKS_USER_ENUM_UNION = -1; static gint ett_wkssvc_wkssvc_NetWkstaTransportInfo0 = -1; static gint ett_wkssvc_wkssvc_NetWkstaTransportCtr0 = -1; static gint ett_wkssvc_wkssvc_NetWkstaTransportCtr = -1; static gint ett_wkssvc_wkssvc_PasswordBuffer = -1; static gint ett_wkssvc_wkssvc_joinflags = -1; static gint ett_wkssvc_wkssvc_renameflags = -1; /* Header field declarations */ static gint hf_wkssvc_wkssvc_NetWkstaInfo502_use_raw_read = -1; static gint hf_wkssvc_wkssvc_NetWkstaEnumUsers_entriesread = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo502_dgram_event_reset_freq = -1; static gint hf_wkssvc_wkssvc_NetWkstaTransportCtr0_count = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo502_pipe_increment = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo_info502 = -1; static gint hf_wkssvc_wkssvc_NetWkstaGetInfo_info = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo502_log_election_packets = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo102_lan_root = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo502_char_wait = -1; static gint hf_wkssvc_USER_INFO_0_user = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo502_buf_files_deny_write = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo502_force_core_create_mode = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo1013_keep_connection = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo1011_collection_time = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo101_platform_id = -1; static gint hf_wkssvc_wkssvc_NetrRenameMachineInDomain2_EncryptedPassword = -1; static gint hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE = -1; static gint hf_wkssvc_wkssvc_NetrAddAlternateComputerName_server_name = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo102_logged_on_users = -1; static gint hf_wkssvc_wkssvc_NetrUnjoinDomain2_server_name = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo102_server_name = -1; static gint hf_wkssvc_wkssvc_NetWkstaTransportInfo0_vc_count = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo502_read_ahead_throughput = -1; static gint hf_wkssvc_wkssvc_NetrRenameMachineInDomain2_Account = -1; static gint hf_wkssvc_wkssvc_NetrAddAlternateComputerName_NewAlternateMachineName = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo100_version_minor = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo502_num_mailslot_buffers = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo102_domain_name = -1; static gint hf_wkssvc_WKS_USER_ENUM_UNION_user0 = -1; static gint hf_wkssvc_WKS_USER_ENUM_UNION_user1 = -1; static gint hf_wkssvc_USER_INFO_1_user_name = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo502_maximum_collection_count = -1; static gint hf_wkssvc_wkssvc_NetWkstaEnumUsers_prefmaxlen = -1; static gint hf_wkssvc_wkssvc_NetWkstaEnumUsers_level = -1; static gint hf_wkssvc_USER_INFO_1_other_domains = -1; static gint hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_JOIN_TYPE = -1; static gint hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_MACHINE_PWD_PASSED = -1; static gint hf_wkssvc_wkssvc_NetrRemoveAlternateComputerName_server_name = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo502_use_encryption = -1; static gint hf_wkssvc_wkssvc_NetWkstaEnumUsers_totalentries = -1; static gint hf_wkssvc_wkssvc_NetrAddAlternateComputerName_EncryptedPassword = -1; static gint hf_wkssvc_wkssvc_NetWkstaTransportInfo0_quality_of_service = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo100_platform_id = -1; static gint hf_wkssvc_wkssvc_NetWkstaTransportEnum_ctr = -1; static gint hf_wkssvc_wkssvc_NetrRenameMachineInDomain2_server_name = -1; static gint hf_wkssvc_wkssvc_NetrJoinDomain2_admin_account = -1; static gint hf_wkssvc_wkssvc_NetWkstaGetInfo_server_name = -1; static gint hf_wkssvc_wkssvc_NetWkstaSetInfo_level = -1; static gint hf_wkssvc_wkssvc_renameflags_WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE = -1; static gint hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_DEFER_SPN = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo1023_size_char_buf = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo_info1010 = -1; static gint hf_wkssvc_platform_id = -1; static gint hf_wkssvc_wkssvc_NetrJoinDomain2_server_name = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo_info1011 = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo_info1012 = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo502_lock_maximum = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo_info1013 = -1; static gint hf_wkssvc_USER_INFO_0_CONTAINER_user0 = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo101_server_name = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo_info1018 = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo502_buf_read_only_files = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo101_version_minor = -1; static gint hf_wkssvc_wkssvc_NetrJoinDomain2_domain_name = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo101_lan_root = -1; static gint hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_ACCOUNT_DELETE = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo101_domain_name = -1; static gint hf_wkssvc_opnum = -1; static gint hf_wkssvc_wkssvc_NetrUnjoinDomain2_account = -1; static gint hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_DOMAIN_JOIN_IF_JOINED = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo502_dormant_file_limit = -1; static gint hf_wkssvc_USER_INFO_1_CONTAINER_user1 = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo502_use_unlock_behind = -1; static gint hf_wkssvc_wkssvc_NetWkstaEnumUsers_resumehandle = -1; static gint hf_wkssvc_wkssvc_NetrRemoveAlternateComputerName_EncryptedPassword = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo502_pipe_maximum = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo502_cache_file_timeout = -1; static gint hf_wkssvc_wkssvc_NetWkstaTransportEnum_level = -1; static gint hf_wkssvc_wkssvc_NetrUnjoinDomain2_encrypted_password = -1; static gint hf_wkssvc_USER_INFO_1_CONTAINER_entries_read = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo_info1023 = -1; static gint hf_wkssvc_wkssvc_NetWkstaSetInfo_parm_error = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo502_use_raw_write = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo_info100 = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo_info101 = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo_info102 = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo_info1027 = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo502_use_512_byte_max_transfer = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo1018_session_timeout = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo1033_max_threads = -1; static gint hf_wkssvc_wkssvc_NetWkstaTransportInfo0_name = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo100_version_major = -1; static gint hf_wkssvc_wkssvc_NetrRenameMachineInDomain2_NewMachineName = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo100_server_name = -1; static gint hf_wkssvc_wkssvc_NetWkstaEnumUsers_users = -1; static gint hf_wkssvc_wkssvc_NetrAddAlternateComputerName_Account = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo102_version_minor = -1; static gint hf_wkssvc_wkssvc_NetrRemoveAlternateComputerName_AlternateMachineNameToRemove = -1; static gint hf_wkssvc_wkssvc_NetWkstaTransportEnum_server_name = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo502_max_commands = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo502_utilize_nt_caching = -1; static gint hf_wkssvc_wkssvc_NetWkstaEnumUsers_server_name = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo100_domain_name = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo502_max_threads = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo502_size_char_buf = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo_info1033 = -1; static gint hf_wkssvc_wkssvc_NetWkstaSetInfo_info = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo1012_maximum_collection_count = -1; static gint hf_wkssvc_USER_INFO_1_logon_domain = -1; static gint hf_wkssvc_werror = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo502_num_srv_announce_buffers = -1; static gint hf_wkssvc_wkssvc_NetrUnjoinDomain2_unjoin_flags = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo502_use_close_behind = -1; static gint hf_wkssvc_wkssvc_NetrJoinDomain2_encrypted_password = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo101_version_major = -1; static gint hf_wkssvc_wkssvc_NetWkstaSetInfo_server_name = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo502_use_lock_read_unlock = -1; static gint hf_wkssvc_wkssvc_NetWkstaGetInfo_level = -1; static gint hf_wkssvc_wkssvc_NetrJoinDomain2_join_flags = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo1010_char_wait = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo502_lock_increment = -1; static gint hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_JOIN_UNSECURE = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo1027_errorlog_sz = -1; static gint hf_wkssvc_wkssvc_NetWkstaTransportCtr_ctr0 = -1; static gint hf_wkssvc_wkssvc_NetrJoinDomain2_account_name = -1; static gint hf_wkssvc_wkssvc_NetWkstaTransportInfo0_wan_link = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo502_keep_connection = -1; static gint hf_wkssvc_wkssvc_NetWkstaTransportEnum_resume_handle = -1; static gint hf_wkssvc_wkssvc_NetrAddAlternateComputerName_Reserved = -1; static gint hf_wkssvc_wkssvc_NetrRenameMachineInDomain2_RenameOptions = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo502_use_write_raw_data = -1; static gint hf_wkssvc_USER_INFO_1_logon_server = -1; static gint hf_wkssvc_wkssvc_PasswordBuffer_data = -1; static gint hf_wkssvc_wkssvc_NetWkstaTransportEnum_max_buffer = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo502_max_illegal_dgram_events = -1; static gint hf_wkssvc_wkssvc_NetWkstaTransportEnum_totalentries = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo502_use_opportunistic_locking = -1; static gint hf_wkssvc_USER_INFO_0_CONTAINER_entries_read = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo102_version_major = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo102_platform_id = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo502_lock_quota = -1; static gint hf_wkssvc_wkssvc_NetrRemoveAlternateComputerName_Account = -1; static gint hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_WIN9X_UPGRADE = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo502_session_timeout = -1; static gint hf_wkssvc_wkssvc_NetWkstaTransportInfo0_address = -1; static gint hf_wkssvc_wkssvc_NetWkstaTransportCtr0_array = -1; static gint hf_wkssvc_wkssvc_NetrRemoveAlternateComputerName_Reserved = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo502_buf_named_pipes = -1; static gint hf_wkssvc_wkssvc_NetWkstaInfo502_collection_time = -1; static gint proto_dcerpc_wkssvc = -1; /* Version information */ static e_uuid_t uuid_dcerpc_wkssvc = { 0x6bffd098, 0xa112, 0x3610, { 0x98, 0x33, 0x46, 0xc3, 0xf8, 0x7e, 0x34, 0x5a } }; static guint16 ver_dcerpc_wkssvc = 1; static int wkssvc_dissect_element_NetWkstaInfo100_platform_id(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo100_server_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo100_server_name_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo100_domain_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo100_domain_name_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo100_version_major(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo100_version_minor(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo101_platform_id(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo101_server_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo101_server_name_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo101_domain_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo101_domain_name_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo101_version_major(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo101_version_minor(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo101_lan_root(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo101_lan_root_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo102_platform_id(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo102_server_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo102_server_name_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo102_domain_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo102_domain_name_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo102_version_major(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo102_version_minor(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo102_lan_root(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo102_lan_root_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo102_logged_on_users(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo502_char_wait(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo502_collection_time(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo502_maximum_collection_count(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo502_keep_connection(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo502_max_commands(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo502_session_timeout(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo502_size_char_buf(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo502_max_threads(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo502_lock_quota(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo502_lock_increment(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo502_lock_maximum(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo502_pipe_increment(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo502_pipe_maximum(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo502_cache_file_timeout(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo502_dormant_file_limit(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo502_read_ahead_throughput(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo502_num_mailslot_buffers(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo502_num_srv_announce_buffers(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo502_max_illegal_dgram_events(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo502_dgram_event_reset_freq(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo502_log_election_packets(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo502_use_opportunistic_locking(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo502_use_unlock_behind(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo502_use_close_behind(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo502_buf_named_pipes(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo502_use_lock_read_unlock(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo502_utilize_nt_caching(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo502_use_raw_read(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo502_use_raw_write(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo502_use_write_raw_data(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo502_use_encryption(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo502_buf_files_deny_write(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo502_buf_read_only_files(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo502_force_core_create_mode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo502_use_512_byte_max_transfer(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo1010_char_wait(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo1011_collection_time(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo1012_maximum_collection_count(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo1013_keep_connection(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo1018_session_timeout(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo1023_size_char_buf(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo1027_errorlog_sz(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo1033_max_threads(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo_info100(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo_info100_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo_info101(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo_info101_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo_info102(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo_info102_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo_info502(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo_info502_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo_info1010(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo_info1010_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo_info1011(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo_info1011_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo_info1012(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo_info1012_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo_info1013(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo_info1013_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo_info1018(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo_info1018_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo_info1023(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo_info1023_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo_info1027(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo_info1027_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo_info1033(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaInfo_info1033_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_USER_INFO_0_user(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_USER_INFO_0_user_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_USER_INFO_0_CONTAINER_entries_read(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_USER_INFO_0_CONTAINER_user0(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_USER_INFO_0_CONTAINER_user0_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_USER_INFO_0_CONTAINER_user0__(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_USER_INFO_1_user_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_USER_INFO_1_user_name_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_USER_INFO_1_logon_domain(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_USER_INFO_1_logon_domain_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_USER_INFO_1_other_domains(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_USER_INFO_1_other_domains_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_USER_INFO_1_logon_server(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_USER_INFO_1_logon_server_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_USER_INFO_1_CONTAINER_entries_read(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_USER_INFO_1_CONTAINER_user1(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_USER_INFO_1_CONTAINER_user1_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_USER_INFO_1_CONTAINER_user1__(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_WKS_USER_ENUM_UNION_user0(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_WKS_USER_ENUM_UNION_user0_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_WKS_USER_ENUM_UNION_user1(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_WKS_USER_ENUM_UNION_user1_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaTransportInfo0_quality_of_service(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaTransportInfo0_vc_count(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaTransportInfo0_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaTransportInfo0_name_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaTransportInfo0_address(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaTransportInfo0_address_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaTransportInfo0_wan_link(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaTransportCtr0_count(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaTransportCtr0_array(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaTransportCtr0_array_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaTransportCtr0_array__(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaTransportCtr_ctr0(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaTransportCtr_ctr0_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_PasswordBuffer_data(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_PasswordBuffer_data_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static const true_false_string wkssvc_joinflags_WKSSVC_JOIN_FLAGS_DEFER_SPN_tfs = { "Defer setting of servicePrincipalName and dNSHostName attributes on the computer object until a rename operation", "Set servicePrincipalName and dNSHostName attributes on the computer object", }; static const true_false_string wkssvc_joinflags_WKSSVC_JOIN_FLAGS_MACHINE_PWD_PASSED_tfs = { "Set the machine password after domain join to passed password", "Do not set the machine password after domain join to passed password", }; static const true_false_string wkssvc_joinflags_WKSSVC_JOIN_FLAGS_JOIN_UNSECURE_tfs = { "Performs an unsecured join", "Perform a secured join", }; static const true_false_string wkssvc_joinflags_WKSSVC_JOIN_FLAGS_DOMAIN_JOIN_IF_JOINED_tfs = { "Allow a join to a new domain even if the computer is already joined to a domain", "Do not allow join to a new domain if the computer is already joined to a domain", }; static const true_false_string wkssvc_joinflags_WKSSVC_JOIN_FLAGS_WIN9X_UPGRADE_tfs = { "The join operation is occuring as part of an upgrade of Windows 9x", "The join operation is not part of a Windows 9x upgrade", }; static const true_false_string wkssvc_joinflags_WKSSVC_JOIN_FLAGS_ACCOUNT_DELETE_tfs = { "Delete the account when a domain is left", "Do not delete the account when a domain is left", }; static const true_false_string wkssvc_joinflags_WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE_tfs = { "Create the account on the domain", "Do not create the account", }; static const true_false_string wkssvc_joinflags_WKSSVC_JOIN_FLAGS_JOIN_TYPE_tfs = { "Join the computer to a domain", "Join the computer to a workgroup", }; static const true_false_string wkssvc_renameflags_WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE_tfs = { "WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE is SET", "WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE is NOT SET", }; static int wkssvc_dissect_element_NetWkstaGetInfo_server_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaGetInfo_server_name_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaGetInfo_level(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaGetInfo_info(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaGetInfo_info_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaSetInfo_server_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaSetInfo_server_name_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaSetInfo_level(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaSetInfo_info(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaSetInfo_info_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaSetInfo_parm_error(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaSetInfo_parm_error_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaEnumUsers_server_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaEnumUsers_server_name_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaEnumUsers_level(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaEnumUsers_users(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaEnumUsers_users_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaEnumUsers_prefmaxlen(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaEnumUsers_entriesread(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaEnumUsers_entriesread_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaEnumUsers_totalentries(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaEnumUsers_totalentries_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaEnumUsers_resumehandle(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaEnumUsers_resumehandle_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaTransportEnum_server_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaTransportEnum_server_name_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaTransportEnum_level(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaTransportEnum_ctr(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaTransportEnum_ctr_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaTransportEnum_max_buffer(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaTransportEnum_totalentries(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaTransportEnum_resume_handle(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetWkstaTransportEnum_resume_handle_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrJoinDomain2_server_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrJoinDomain2_server_name_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrJoinDomain2_domain_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrJoinDomain2_domain_name_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrJoinDomain2_account_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrJoinDomain2_account_name_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrJoinDomain2_admin_account(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrJoinDomain2_admin_account_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrJoinDomain2_encrypted_password(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrJoinDomain2_encrypted_password_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrJoinDomain2_join_flags(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrUnjoinDomain2_server_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrUnjoinDomain2_server_name_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrUnjoinDomain2_account(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrUnjoinDomain2_account_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrUnjoinDomain2_encrypted_password(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrUnjoinDomain2_encrypted_password_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrUnjoinDomain2_unjoin_flags(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrRenameMachineInDomain2_server_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrRenameMachineInDomain2_server_name_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrRenameMachineInDomain2_NewMachineName(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrRenameMachineInDomain2_NewMachineName_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrRenameMachineInDomain2_Account(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrRenameMachineInDomain2_Account_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrRenameMachineInDomain2_EncryptedPassword(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrRenameMachineInDomain2_EncryptedPassword_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrRenameMachineInDomain2_RenameOptions(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrAddAlternateComputerName_server_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrAddAlternateComputerName_server_name_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrAddAlternateComputerName_NewAlternateMachineName(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrAddAlternateComputerName_NewAlternateMachineName_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrAddAlternateComputerName_Account(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrAddAlternateComputerName_Account_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrAddAlternateComputerName_EncryptedPassword(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrAddAlternateComputerName_EncryptedPassword_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrAddAlternateComputerName_Reserved(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrRemoveAlternateComputerName_server_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrRemoveAlternateComputerName_server_name_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrRemoveAlternateComputerName_AlternateMachineNameToRemove(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrRemoveAlternateComputerName_AlternateMachineNameToRemove_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrRemoveAlternateComputerName_Account(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrRemoveAlternateComputerName_Account_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrRemoveAlternateComputerName_EncryptedPassword(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrRemoveAlternateComputerName_EncryptedPassword_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); static int wkssvc_dissect_element_NetrRemoveAlternateComputerName_Reserved(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep); /* Bug in pidl. Can not handle these dependencies properly yet */ static int srvsvc_dissect_struct_PlatformId(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep, int hf_index, guint32 param _U_) { offset = srvsvc_dissect_enum_PlatformId(tvb,offset,pinfo,tree,drep,hf_wkssvc_platform_id,0); return offset; } /* IDL: typedef struct { */ /* IDL: srvsvc_PlatformId platform_id; */ /* IDL: [charset(UTF16)] [unique(1)] uint16 *server_name; */ /* IDL: [charset(UTF16)] [unique(1)] uint16 *domain_name; */ /* IDL: uint32 version_major; */ /* IDL: uint32 version_minor; */ /* IDL: } wkssvc_NetWkstaInfo100; */ static int wkssvc_dissect_element_NetWkstaInfo100_platform_id(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = srvsvc_dissect_struct_PlatformId(tvb,offset,pinfo,tree,drep,hf_wkssvc_wkssvc_NetWkstaInfo100_platform_id,0); return offset; } static int wkssvc_dissect_element_NetWkstaInfo100_server_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetWkstaInfo100_server_name_, NDR_POINTER_UNIQUE, "Pointer to Server Name (uint16)",hf_wkssvc_wkssvc_NetWkstaInfo100_server_name); return offset; } static int wkssvc_dissect_element_NetWkstaInfo100_server_name_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { char *data; offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, drep, sizeof(guint16), hf_wkssvc_wkssvc_NetWkstaInfo100_server_name, FALSE, &data); proto_item_append_text(tree, ": %s", data); return offset; } static int wkssvc_dissect_element_NetWkstaInfo100_domain_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetWkstaInfo100_domain_name_, NDR_POINTER_UNIQUE, "Pointer to Domain Name (uint16)",hf_wkssvc_wkssvc_NetWkstaInfo100_domain_name); return offset; } static int wkssvc_dissect_element_NetWkstaInfo100_domain_name_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { char *data; offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, drep, sizeof(guint16), hf_wkssvc_wkssvc_NetWkstaInfo100_domain_name, FALSE, &data); proto_item_append_text(tree, ": %s", data); return offset; } static int wkssvc_dissect_element_NetWkstaInfo100_version_major(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo100_version_major,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo100_version_minor(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo100_version_minor,NULL); return offset; } int wkssvc_dissect_struct_NetWkstaInfo100(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, guint8 *drep, int hf_index, guint32 param _U_) { proto_item *item = NULL; proto_tree *tree = NULL; int old_offset; ALIGN_TO_4_BYTES; old_offset = offset; if (parent_tree) { item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE); tree = proto_item_add_subtree(item, ett_wkssvc_wkssvc_NetWkstaInfo100); } offset = wkssvc_dissect_element_NetWkstaInfo100_platform_id(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo100_server_name(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo100_domain_name(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo100_version_major(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo100_version_minor(tvb, offset, pinfo, tree, drep); proto_item_set_len(item, offset-old_offset); return offset; } /* IDL: typedef struct { */ /* IDL: srvsvc_PlatformId platform_id; */ /* IDL: [charset(UTF16)] [unique(1)] uint16 *server_name; */ /* IDL: [charset(UTF16)] [unique(1)] uint16 *domain_name; */ /* IDL: uint32 version_major; */ /* IDL: uint32 version_minor; */ /* IDL: [charset(UTF16)] [unique(1)] uint16 *lan_root; */ /* IDL: } wkssvc_NetWkstaInfo101; */ static int wkssvc_dissect_element_NetWkstaInfo101_platform_id(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = srvsvc_dissect_struct_PlatformId(tvb,offset,pinfo,tree,drep,hf_wkssvc_wkssvc_NetWkstaInfo101_platform_id,0); return offset; } static int wkssvc_dissect_element_NetWkstaInfo101_server_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetWkstaInfo101_server_name_, NDR_POINTER_UNIQUE, "Pointer to Server Name (uint16)",hf_wkssvc_wkssvc_NetWkstaInfo101_server_name); return offset; } static int wkssvc_dissect_element_NetWkstaInfo101_server_name_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { char *data; offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, drep, sizeof(guint16), hf_wkssvc_wkssvc_NetWkstaInfo101_server_name, FALSE, &data); proto_item_append_text(tree, ": %s", data); return offset; } static int wkssvc_dissect_element_NetWkstaInfo101_domain_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetWkstaInfo101_domain_name_, NDR_POINTER_UNIQUE, "Pointer to Domain Name (uint16)",hf_wkssvc_wkssvc_NetWkstaInfo101_domain_name); return offset; } static int wkssvc_dissect_element_NetWkstaInfo101_domain_name_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { char *data; offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, drep, sizeof(guint16), hf_wkssvc_wkssvc_NetWkstaInfo101_domain_name, FALSE, &data); proto_item_append_text(tree, ": %s", data); return offset; } static int wkssvc_dissect_element_NetWkstaInfo101_version_major(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo101_version_major,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo101_version_minor(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo101_version_minor,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo101_lan_root(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetWkstaInfo101_lan_root_, NDR_POINTER_UNIQUE, "Pointer to Lan Root (uint16)",hf_wkssvc_wkssvc_NetWkstaInfo101_lan_root); return offset; } static int wkssvc_dissect_element_NetWkstaInfo101_lan_root_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { char *data; offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, drep, sizeof(guint16), hf_wkssvc_wkssvc_NetWkstaInfo101_lan_root, FALSE, &data); proto_item_append_text(tree, ": %s", data); return offset; } int wkssvc_dissect_struct_NetWkstaInfo101(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, guint8 *drep, int hf_index, guint32 param _U_) { proto_item *item = NULL; proto_tree *tree = NULL; int old_offset; ALIGN_TO_4_BYTES; old_offset = offset; if (parent_tree) { item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE); tree = proto_item_add_subtree(item, ett_wkssvc_wkssvc_NetWkstaInfo101); } offset = wkssvc_dissect_element_NetWkstaInfo101_platform_id(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo101_server_name(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo101_domain_name(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo101_version_major(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo101_version_minor(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo101_lan_root(tvb, offset, pinfo, tree, drep); proto_item_set_len(item, offset-old_offset); return offset; } /* IDL: typedef struct { */ /* IDL: srvsvc_PlatformId platform_id; */ /* IDL: [charset(UTF16)] [unique(1)] uint16 *server_name; */ /* IDL: [charset(UTF16)] [unique(1)] uint16 *domain_name; */ /* IDL: uint32 version_major; */ /* IDL: uint32 version_minor; */ /* IDL: [charset(UTF16)] [unique(1)] uint16 *lan_root; */ /* IDL: uint32 logged_on_users; */ /* IDL: } wkssvc_NetWkstaInfo102; */ static int wkssvc_dissect_element_NetWkstaInfo102_platform_id(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = srvsvc_dissect_struct_PlatformId(tvb,offset,pinfo,tree,drep,hf_wkssvc_wkssvc_NetWkstaInfo102_platform_id,0); return offset; } static int wkssvc_dissect_element_NetWkstaInfo102_server_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetWkstaInfo102_server_name_, NDR_POINTER_UNIQUE, "Pointer to Server Name (uint16)",hf_wkssvc_wkssvc_NetWkstaInfo102_server_name); return offset; } static int wkssvc_dissect_element_NetWkstaInfo102_server_name_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { char *data; offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, drep, sizeof(guint16), hf_wkssvc_wkssvc_NetWkstaInfo102_server_name, FALSE, &data); proto_item_append_text(tree, ": %s", data); return offset; } static int wkssvc_dissect_element_NetWkstaInfo102_domain_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetWkstaInfo102_domain_name_, NDR_POINTER_UNIQUE, "Pointer to Domain Name (uint16)",hf_wkssvc_wkssvc_NetWkstaInfo102_domain_name); return offset; } static int wkssvc_dissect_element_NetWkstaInfo102_domain_name_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { char *data; offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, drep, sizeof(guint16), hf_wkssvc_wkssvc_NetWkstaInfo102_domain_name, FALSE, &data); proto_item_append_text(tree, ": %s", data); return offset; } static int wkssvc_dissect_element_NetWkstaInfo102_version_major(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo102_version_major,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo102_version_minor(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo102_version_minor,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo102_lan_root(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetWkstaInfo102_lan_root_, NDR_POINTER_UNIQUE, "Pointer to Lan Root (uint16)",hf_wkssvc_wkssvc_NetWkstaInfo102_lan_root); return offset; } static int wkssvc_dissect_element_NetWkstaInfo102_lan_root_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { char *data; offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, drep, sizeof(guint16), hf_wkssvc_wkssvc_NetWkstaInfo102_lan_root, FALSE, &data); proto_item_append_text(tree, ": %s", data); return offset; } static int wkssvc_dissect_element_NetWkstaInfo102_logged_on_users(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo102_logged_on_users,NULL); return offset; } int wkssvc_dissect_struct_NetWkstaInfo102(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, guint8 *drep, int hf_index, guint32 param _U_) { proto_item *item = NULL; proto_tree *tree = NULL; int old_offset; ALIGN_TO_4_BYTES; old_offset = offset; if (parent_tree) { item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE); tree = proto_item_add_subtree(item, ett_wkssvc_wkssvc_NetWkstaInfo102); } offset = wkssvc_dissect_element_NetWkstaInfo102_platform_id(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo102_server_name(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo102_domain_name(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo102_version_major(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo102_version_minor(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo102_lan_root(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo102_logged_on_users(tvb, offset, pinfo, tree, drep); proto_item_set_len(item, offset-old_offset); return offset; } /* IDL: typedef struct { */ /* IDL: uint32 char_wait; */ /* IDL: uint32 collection_time; */ /* IDL: uint32 maximum_collection_count; */ /* IDL: uint32 keep_connection; */ /* IDL: uint32 max_commands; */ /* IDL: uint32 session_timeout; */ /* IDL: uint32 size_char_buf; */ /* IDL: uint32 max_threads; */ /* IDL: uint32 lock_quota; */ /* IDL: uint32 lock_increment; */ /* IDL: uint32 lock_maximum; */ /* IDL: uint32 pipe_increment; */ /* IDL: uint32 pipe_maximum; */ /* IDL: uint32 cache_file_timeout; */ /* IDL: uint32 dormant_file_limit; */ /* IDL: uint32 read_ahead_throughput; */ /* IDL: uint32 num_mailslot_buffers; */ /* IDL: uint32 num_srv_announce_buffers; */ /* IDL: uint32 max_illegal_dgram_events; */ /* IDL: uint32 dgram_event_reset_freq; */ /* IDL: uint32 log_election_packets; */ /* IDL: uint32 use_opportunistic_locking; */ /* IDL: uint32 use_unlock_behind; */ /* IDL: uint32 use_close_behind; */ /* IDL: uint32 buf_named_pipes; */ /* IDL: uint32 use_lock_read_unlock; */ /* IDL: uint32 utilize_nt_caching; */ /* IDL: uint32 use_raw_read; */ /* IDL: uint32 use_raw_write; */ /* IDL: uint32 use_write_raw_data; */ /* IDL: uint32 use_encryption; */ /* IDL: uint32 buf_files_deny_write; */ /* IDL: uint32 buf_read_only_files; */ /* IDL: uint32 force_core_create_mode; */ /* IDL: uint32 use_512_byte_max_transfer; */ /* IDL: } wkssvc_NetWkstaInfo502; */ static int wkssvc_dissect_element_NetWkstaInfo502_char_wait(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo502_char_wait,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo502_collection_time(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo502_collection_time,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo502_maximum_collection_count(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo502_maximum_collection_count,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo502_keep_connection(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo502_keep_connection,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo502_max_commands(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo502_max_commands,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo502_session_timeout(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo502_session_timeout,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo502_size_char_buf(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo502_size_char_buf,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo502_max_threads(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo502_max_threads,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo502_lock_quota(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo502_lock_quota,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo502_lock_increment(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo502_lock_increment,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo502_lock_maximum(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo502_lock_maximum,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo502_pipe_increment(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo502_pipe_increment,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo502_pipe_maximum(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo502_pipe_maximum,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo502_cache_file_timeout(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo502_cache_file_timeout,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo502_dormant_file_limit(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo502_dormant_file_limit,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo502_read_ahead_throughput(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo502_read_ahead_throughput,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo502_num_mailslot_buffers(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo502_num_mailslot_buffers,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo502_num_srv_announce_buffers(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo502_num_srv_announce_buffers,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo502_max_illegal_dgram_events(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo502_max_illegal_dgram_events,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo502_dgram_event_reset_freq(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo502_dgram_event_reset_freq,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo502_log_election_packets(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo502_log_election_packets,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo502_use_opportunistic_locking(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo502_use_opportunistic_locking,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo502_use_unlock_behind(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo502_use_unlock_behind,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo502_use_close_behind(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo502_use_close_behind,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo502_buf_named_pipes(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo502_buf_named_pipes,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo502_use_lock_read_unlock(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo502_use_lock_read_unlock,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo502_utilize_nt_caching(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo502_utilize_nt_caching,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo502_use_raw_read(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo502_use_raw_read,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo502_use_raw_write(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo502_use_raw_write,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo502_use_write_raw_data(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo502_use_write_raw_data,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo502_use_encryption(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo502_use_encryption,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo502_buf_files_deny_write(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo502_buf_files_deny_write,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo502_buf_read_only_files(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo502_buf_read_only_files,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo502_force_core_create_mode(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo502_force_core_create_mode,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaInfo502_use_512_byte_max_transfer(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo502_use_512_byte_max_transfer,NULL); return offset; } int wkssvc_dissect_struct_NetWkstaInfo502(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, guint8 *drep, int hf_index, guint32 param _U_) { proto_item *item = NULL; proto_tree *tree = NULL; int old_offset; ALIGN_TO_4_BYTES; old_offset = offset; if (parent_tree) { item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE); tree = proto_item_add_subtree(item, ett_wkssvc_wkssvc_NetWkstaInfo502); } offset = wkssvc_dissect_element_NetWkstaInfo502_char_wait(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo502_collection_time(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo502_maximum_collection_count(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo502_keep_connection(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo502_max_commands(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo502_session_timeout(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo502_size_char_buf(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo502_max_threads(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo502_lock_quota(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo502_lock_increment(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo502_lock_maximum(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo502_pipe_increment(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo502_pipe_maximum(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo502_cache_file_timeout(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo502_dormant_file_limit(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo502_read_ahead_throughput(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo502_num_mailslot_buffers(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo502_num_srv_announce_buffers(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo502_max_illegal_dgram_events(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo502_dgram_event_reset_freq(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo502_log_election_packets(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo502_use_opportunistic_locking(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo502_use_unlock_behind(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo502_use_close_behind(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo502_buf_named_pipes(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo502_use_lock_read_unlock(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo502_utilize_nt_caching(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo502_use_raw_read(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo502_use_raw_write(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo502_use_write_raw_data(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo502_use_encryption(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo502_buf_files_deny_write(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo502_buf_read_only_files(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo502_force_core_create_mode(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaInfo502_use_512_byte_max_transfer(tvb, offset, pinfo, tree, drep); proto_item_set_len(item, offset-old_offset); return offset; } /* IDL: typedef struct { */ /* IDL: uint32 char_wait; */ /* IDL: } wkssvc_NetWkstaInfo1010; */ static int wkssvc_dissect_element_NetWkstaInfo1010_char_wait(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo1010_char_wait,NULL); return offset; } int wkssvc_dissect_struct_NetWkstaInfo1010(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, guint8 *drep, int hf_index, guint32 param _U_) { proto_item *item = NULL; proto_tree *tree = NULL; int old_offset; ALIGN_TO_4_BYTES; old_offset = offset; if (parent_tree) { item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE); tree = proto_item_add_subtree(item, ett_wkssvc_wkssvc_NetWkstaInfo1010); } offset = wkssvc_dissect_element_NetWkstaInfo1010_char_wait(tvb, offset, pinfo, tree, drep); proto_item_set_len(item, offset-old_offset); return offset; } /* IDL: typedef struct { */ /* IDL: uint32 collection_time; */ /* IDL: } wkssvc_NetWkstaInfo1011; */ static int wkssvc_dissect_element_NetWkstaInfo1011_collection_time(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo1011_collection_time,NULL); return offset; } int wkssvc_dissect_struct_NetWkstaInfo1011(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, guint8 *drep, int hf_index, guint32 param _U_) { proto_item *item = NULL; proto_tree *tree = NULL; int old_offset; ALIGN_TO_4_BYTES; old_offset = offset; if (parent_tree) { item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE); tree = proto_item_add_subtree(item, ett_wkssvc_wkssvc_NetWkstaInfo1011); } offset = wkssvc_dissect_element_NetWkstaInfo1011_collection_time(tvb, offset, pinfo, tree, drep); proto_item_set_len(item, offset-old_offset); return offset; } /* IDL: typedef struct { */ /* IDL: uint32 maximum_collection_count; */ /* IDL: } wkssvc_NetWkstaInfo1012; */ static int wkssvc_dissect_element_NetWkstaInfo1012_maximum_collection_count(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo1012_maximum_collection_count,NULL); return offset; } int wkssvc_dissect_struct_NetWkstaInfo1012(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, guint8 *drep, int hf_index, guint32 param _U_) { proto_item *item = NULL; proto_tree *tree = NULL; int old_offset; ALIGN_TO_4_BYTES; old_offset = offset; if (parent_tree) { item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE); tree = proto_item_add_subtree(item, ett_wkssvc_wkssvc_NetWkstaInfo1012); } offset = wkssvc_dissect_element_NetWkstaInfo1012_maximum_collection_count(tvb, offset, pinfo, tree, drep); proto_item_set_len(item, offset-old_offset); return offset; } /* IDL: typedef struct { */ /* IDL: uint32 keep_connection; */ /* IDL: } wkssvc_NetWkstaInfo1013; */ static int wkssvc_dissect_element_NetWkstaInfo1013_keep_connection(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo1013_keep_connection,NULL); return offset; } int wkssvc_dissect_struct_NetWkstaInfo1013(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, guint8 *drep, int hf_index, guint32 param _U_) { proto_item *item = NULL; proto_tree *tree = NULL; int old_offset; ALIGN_TO_4_BYTES; old_offset = offset; if (parent_tree) { item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE); tree = proto_item_add_subtree(item, ett_wkssvc_wkssvc_NetWkstaInfo1013); } offset = wkssvc_dissect_element_NetWkstaInfo1013_keep_connection(tvb, offset, pinfo, tree, drep); proto_item_set_len(item, offset-old_offset); return offset; } /* IDL: typedef struct { */ /* IDL: uint32 session_timeout; */ /* IDL: } wkssvc_NetWkstaInfo1018; */ static int wkssvc_dissect_element_NetWkstaInfo1018_session_timeout(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo1018_session_timeout,NULL); return offset; } int wkssvc_dissect_struct_NetWkstaInfo1018(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, guint8 *drep, int hf_index, guint32 param _U_) { proto_item *item = NULL; proto_tree *tree = NULL; int old_offset; ALIGN_TO_4_BYTES; old_offset = offset; if (parent_tree) { item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE); tree = proto_item_add_subtree(item, ett_wkssvc_wkssvc_NetWkstaInfo1018); } offset = wkssvc_dissect_element_NetWkstaInfo1018_session_timeout(tvb, offset, pinfo, tree, drep); proto_item_set_len(item, offset-old_offset); return offset; } /* IDL: typedef struct { */ /* IDL: uint32 size_char_buf; */ /* IDL: } wkssvc_NetWkstaInfo1023; */ static int wkssvc_dissect_element_NetWkstaInfo1023_size_char_buf(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo1023_size_char_buf,NULL); return offset; } int wkssvc_dissect_struct_NetWkstaInfo1023(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, guint8 *drep, int hf_index, guint32 param _U_) { proto_item *item = NULL; proto_tree *tree = NULL; int old_offset; ALIGN_TO_4_BYTES; old_offset = offset; if (parent_tree) { item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE); tree = proto_item_add_subtree(item, ett_wkssvc_wkssvc_NetWkstaInfo1023); } offset = wkssvc_dissect_element_NetWkstaInfo1023_size_char_buf(tvb, offset, pinfo, tree, drep); proto_item_set_len(item, offset-old_offset); return offset; } /* IDL: typedef struct { */ /* IDL: uint32 errorlog_sz; */ /* IDL: } wkssvc_NetWkstaInfo1027; */ static int wkssvc_dissect_element_NetWkstaInfo1027_errorlog_sz(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo1027_errorlog_sz,NULL); return offset; } int wkssvc_dissect_struct_NetWkstaInfo1027(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, guint8 *drep, int hf_index, guint32 param _U_) { proto_item *item = NULL; proto_tree *tree = NULL; int old_offset; ALIGN_TO_4_BYTES; old_offset = offset; if (parent_tree) { item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE); tree = proto_item_add_subtree(item, ett_wkssvc_wkssvc_NetWkstaInfo1027); } offset = wkssvc_dissect_element_NetWkstaInfo1027_errorlog_sz(tvb, offset, pinfo, tree, drep); proto_item_set_len(item, offset-old_offset); return offset; } /* IDL: typedef struct { */ /* IDL: uint32 max_threads; */ /* IDL: } wkssvc_NetWkstaInfo1033; */ static int wkssvc_dissect_element_NetWkstaInfo1033_max_threads(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaInfo1033_max_threads,NULL); return offset; } int wkssvc_dissect_struct_NetWkstaInfo1033(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, guint8 *drep, int hf_index, guint32 param _U_) { proto_item *item = NULL; proto_tree *tree = NULL; int old_offset; ALIGN_TO_4_BYTES; old_offset = offset; if (parent_tree) { item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE); tree = proto_item_add_subtree(item, ett_wkssvc_wkssvc_NetWkstaInfo1033); } offset = wkssvc_dissect_element_NetWkstaInfo1033_max_threads(tvb, offset, pinfo, tree, drep); proto_item_set_len(item, offset-old_offset); return offset; } /* IDL: typedef union { */ /* IDL: [case(100)] [unique(1)] [case(100)] wkssvc_NetWkstaInfo100 *info100; */ /* IDL: [case(101)] [unique(1)] [case(101)] wkssvc_NetWkstaInfo101 *info101; */ /* IDL: [case(102)] [unique(1)] [case(102)] wkssvc_NetWkstaInfo102 *info102; */ /* IDL: [case(502)] [unique(1)] [case(502)] wkssvc_NetWkstaInfo502 *info502; */ /* IDL: [case(1010)] [unique(1)] [case(1010)] wkssvc_NetWkstaInfo1010 *info1010; */ /* IDL: [case(1011)] [unique(1)] [case(1011)] wkssvc_NetWkstaInfo1011 *info1011; */ /* IDL: [case(1012)] [unique(1)] [case(1012)] wkssvc_NetWkstaInfo1012 *info1012; */ /* IDL: [case(1013)] [unique(1)] [case(1013)] wkssvc_NetWkstaInfo1013 *info1013; */ /* IDL: [case(1018)] [unique(1)] [case(1018)] wkssvc_NetWkstaInfo1018 *info1018; */ /* IDL: [case(1023)] [unique(1)] [case(1023)] wkssvc_NetWkstaInfo1023 *info1023; */ /* IDL: [case(1027)] [unique(1)] [case(1027)] wkssvc_NetWkstaInfo1027 *info1027; */ /* IDL: [case(1033)] [unique(1)] [case(1033)] wkssvc_NetWkstaInfo1033 *info1033; */ /* IDL: [default] ; */ /* IDL: } wkssvc_NetWkstaInfo; */ static int wkssvc_dissect_element_NetWkstaInfo_info100(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetWkstaInfo_info100_, NDR_POINTER_UNIQUE, "Pointer to Info100 (wkssvc_NetWkstaInfo100)",hf_wkssvc_wkssvc_NetWkstaInfo_info100); return offset; } static int wkssvc_dissect_element_NetWkstaInfo_info100_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = wkssvc_dissect_struct_NetWkstaInfo100(tvb,offset,pinfo,tree,drep,hf_wkssvc_wkssvc_NetWkstaInfo_info100,0); return offset; } static int wkssvc_dissect_element_NetWkstaInfo_info101(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetWkstaInfo_info101_, NDR_POINTER_UNIQUE, "Pointer to Info101 (wkssvc_NetWkstaInfo101)",hf_wkssvc_wkssvc_NetWkstaInfo_info101); return offset; } static int wkssvc_dissect_element_NetWkstaInfo_info101_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = wkssvc_dissect_struct_NetWkstaInfo101(tvb,offset,pinfo,tree,drep,hf_wkssvc_wkssvc_NetWkstaInfo_info101,0); return offset; } static int wkssvc_dissect_element_NetWkstaInfo_info102(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetWkstaInfo_info102_, NDR_POINTER_UNIQUE, "Pointer to Info102 (wkssvc_NetWkstaInfo102)",hf_wkssvc_wkssvc_NetWkstaInfo_info102); return offset; } static int wkssvc_dissect_element_NetWkstaInfo_info102_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = wkssvc_dissect_struct_NetWkstaInfo102(tvb,offset,pinfo,tree,drep,hf_wkssvc_wkssvc_NetWkstaInfo_info102,0); return offset; } static int wkssvc_dissect_element_NetWkstaInfo_info502(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetWkstaInfo_info502_, NDR_POINTER_UNIQUE, "Pointer to Info502 (wkssvc_NetWkstaInfo502)",hf_wkssvc_wkssvc_NetWkstaInfo_info502); return offset; } static int wkssvc_dissect_element_NetWkstaInfo_info502_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = wkssvc_dissect_struct_NetWkstaInfo502(tvb,offset,pinfo,tree,drep,hf_wkssvc_wkssvc_NetWkstaInfo_info502,0); return offset; } static int wkssvc_dissect_element_NetWkstaInfo_info1010(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetWkstaInfo_info1010_, NDR_POINTER_UNIQUE, "Pointer to Info1010 (wkssvc_NetWkstaInfo1010)",hf_wkssvc_wkssvc_NetWkstaInfo_info1010); return offset; } static int wkssvc_dissect_element_NetWkstaInfo_info1010_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = wkssvc_dissect_struct_NetWkstaInfo1010(tvb,offset,pinfo,tree,drep,hf_wkssvc_wkssvc_NetWkstaInfo_info1010,0); return offset; } static int wkssvc_dissect_element_NetWkstaInfo_info1011(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetWkstaInfo_info1011_, NDR_POINTER_UNIQUE, "Pointer to Info1011 (wkssvc_NetWkstaInfo1011)",hf_wkssvc_wkssvc_NetWkstaInfo_info1011); return offset; } static int wkssvc_dissect_element_NetWkstaInfo_info1011_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = wkssvc_dissect_struct_NetWkstaInfo1011(tvb,offset,pinfo,tree,drep,hf_wkssvc_wkssvc_NetWkstaInfo_info1011,0); return offset; } static int wkssvc_dissect_element_NetWkstaInfo_info1012(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetWkstaInfo_info1012_, NDR_POINTER_UNIQUE, "Pointer to Info1012 (wkssvc_NetWkstaInfo1012)",hf_wkssvc_wkssvc_NetWkstaInfo_info1012); return offset; } static int wkssvc_dissect_element_NetWkstaInfo_info1012_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = wkssvc_dissect_struct_NetWkstaInfo1012(tvb,offset,pinfo,tree,drep,hf_wkssvc_wkssvc_NetWkstaInfo_info1012,0); return offset; } static int wkssvc_dissect_element_NetWkstaInfo_info1013(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetWkstaInfo_info1013_, NDR_POINTER_UNIQUE, "Pointer to Info1013 (wkssvc_NetWkstaInfo1013)",hf_wkssvc_wkssvc_NetWkstaInfo_info1013); return offset; } static int wkssvc_dissect_element_NetWkstaInfo_info1013_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = wkssvc_dissect_struct_NetWkstaInfo1013(tvb,offset,pinfo,tree,drep,hf_wkssvc_wkssvc_NetWkstaInfo_info1013,0); return offset; } static int wkssvc_dissect_element_NetWkstaInfo_info1018(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetWkstaInfo_info1018_, NDR_POINTER_UNIQUE, "Pointer to Info1018 (wkssvc_NetWkstaInfo1018)",hf_wkssvc_wkssvc_NetWkstaInfo_info1018); return offset; } static int wkssvc_dissect_element_NetWkstaInfo_info1018_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = wkssvc_dissect_struct_NetWkstaInfo1018(tvb,offset,pinfo,tree,drep,hf_wkssvc_wkssvc_NetWkstaInfo_info1018,0); return offset; } static int wkssvc_dissect_element_NetWkstaInfo_info1023(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetWkstaInfo_info1023_, NDR_POINTER_UNIQUE, "Pointer to Info1023 (wkssvc_NetWkstaInfo1023)",hf_wkssvc_wkssvc_NetWkstaInfo_info1023); return offset; } static int wkssvc_dissect_element_NetWkstaInfo_info1023_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = wkssvc_dissect_struct_NetWkstaInfo1023(tvb,offset,pinfo,tree,drep,hf_wkssvc_wkssvc_NetWkstaInfo_info1023,0); return offset; } static int wkssvc_dissect_element_NetWkstaInfo_info1027(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetWkstaInfo_info1027_, NDR_POINTER_UNIQUE, "Pointer to Info1027 (wkssvc_NetWkstaInfo1027)",hf_wkssvc_wkssvc_NetWkstaInfo_info1027); return offset; } static int wkssvc_dissect_element_NetWkstaInfo_info1027_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = wkssvc_dissect_struct_NetWkstaInfo1027(tvb,offset,pinfo,tree,drep,hf_wkssvc_wkssvc_NetWkstaInfo_info1027,0); return offset; } static int wkssvc_dissect_element_NetWkstaInfo_info1033(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetWkstaInfo_info1033_, NDR_POINTER_UNIQUE, "Pointer to Info1033 (wkssvc_NetWkstaInfo1033)",hf_wkssvc_wkssvc_NetWkstaInfo_info1033); return offset; } static int wkssvc_dissect_element_NetWkstaInfo_info1033_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = wkssvc_dissect_struct_NetWkstaInfo1033(tvb,offset,pinfo,tree,drep,hf_wkssvc_wkssvc_NetWkstaInfo_info1033,0); return offset; } static int wkssvc_dissect_NetWkstaInfo(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, guint8 *drep, int hf_index, guint32 param _U_) { proto_item *item = NULL; proto_tree *tree = NULL; int old_offset; guint32 level; ALIGN_TO_4_BYTES; old_offset = offset; if (parent_tree) { item = proto_tree_add_text(parent_tree, tvb, offset, -1, "wkssvc_NetWkstaInfo"); tree = proto_item_add_subtree(item, ett_wkssvc_wkssvc_NetWkstaInfo); } offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_index, &level); switch(level) { case 100: offset = wkssvc_dissect_element_NetWkstaInfo_info100(tvb, offset, pinfo, tree, drep); break; case 101: offset = wkssvc_dissect_element_NetWkstaInfo_info101(tvb, offset, pinfo, tree, drep); break; case 102: offset = wkssvc_dissect_element_NetWkstaInfo_info102(tvb, offset, pinfo, tree, drep); break; case 502: offset = wkssvc_dissect_element_NetWkstaInfo_info502(tvb, offset, pinfo, tree, drep); break; case 1010: offset = wkssvc_dissect_element_NetWkstaInfo_info1010(tvb, offset, pinfo, tree, drep); break; case 1011: offset = wkssvc_dissect_element_NetWkstaInfo_info1011(tvb, offset, pinfo, tree, drep); break; case 1012: offset = wkssvc_dissect_element_NetWkstaInfo_info1012(tvb, offset, pinfo, tree, drep); break; case 1013: offset = wkssvc_dissect_element_NetWkstaInfo_info1013(tvb, offset, pinfo, tree, drep); break; case 1018: offset = wkssvc_dissect_element_NetWkstaInfo_info1018(tvb, offset, pinfo, tree, drep); break; case 1023: offset = wkssvc_dissect_element_NetWkstaInfo_info1023(tvb, offset, pinfo, tree, drep); break; case 1027: offset = wkssvc_dissect_element_NetWkstaInfo_info1027(tvb, offset, pinfo, tree, drep); break; case 1033: offset = wkssvc_dissect_element_NetWkstaInfo_info1033(tvb, offset, pinfo, tree, drep); break; default: break; } proto_item_set_len(item, offset-old_offset); return offset; } /* IDL: typedef struct { */ /* IDL: [charset(UTF16)] [unique(1)] uint16 *user; */ /* IDL: } USER_INFO_0; */ static int wkssvc_dissect_element_USER_INFO_0_user(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_USER_INFO_0_user_, NDR_POINTER_UNIQUE, "Pointer to User (uint16)",hf_wkssvc_USER_INFO_0_user); return offset; } static int wkssvc_dissect_element_USER_INFO_0_user_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { char *data; offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, drep, sizeof(guint16), hf_wkssvc_USER_INFO_0_user, FALSE, &data); proto_item_append_text(tree, ": %s", data); return offset; } int wkssvc_dissect_struct_USER_INFO_0(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, guint8 *drep, int hf_index, guint32 param _U_) { proto_item *item = NULL; proto_tree *tree = NULL; int old_offset; ALIGN_TO_4_BYTES; old_offset = offset; if (parent_tree) { item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE); tree = proto_item_add_subtree(item, ett_wkssvc_USER_INFO_0); } offset = wkssvc_dissect_element_USER_INFO_0_user(tvb, offset, pinfo, tree, drep); proto_item_set_len(item, offset-old_offset); return offset; } /* IDL: typedef struct { */ /* IDL: uint32 entries_read; */ /* IDL: [size_is(entries_read)] [unique(1)] USER_INFO_0 *user0; */ /* IDL: } USER_INFO_0_CONTAINER; */ static int wkssvc_dissect_element_USER_INFO_0_CONTAINER_entries_read(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_USER_INFO_0_CONTAINER_entries_read,NULL); return offset; } static int wkssvc_dissect_element_USER_INFO_0_CONTAINER_user0(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_USER_INFO_0_CONTAINER_user0_, NDR_POINTER_UNIQUE, "Pointer to User0 (USER_INFO_0)",hf_wkssvc_USER_INFO_0_CONTAINER_user0); return offset; } static int wkssvc_dissect_element_USER_INFO_0_CONTAINER_user0_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_USER_INFO_0_CONTAINER_user0__); return offset; } static int wkssvc_dissect_element_USER_INFO_0_CONTAINER_user0__(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = wkssvc_dissect_struct_USER_INFO_0(tvb,offset,pinfo,tree,drep,hf_wkssvc_USER_INFO_0_CONTAINER_user0,0); return offset; } int wkssvc_dissect_struct_USER_INFO_0_CONTAINER(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, guint8 *drep, int hf_index, guint32 param _U_) { proto_item *item = NULL; proto_tree *tree = NULL; int old_offset; ALIGN_TO_4_BYTES; old_offset = offset; if (parent_tree) { item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE); tree = proto_item_add_subtree(item, ett_wkssvc_USER_INFO_0_CONTAINER); } offset = wkssvc_dissect_element_USER_INFO_0_CONTAINER_entries_read(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_USER_INFO_0_CONTAINER_user0(tvb, offset, pinfo, tree, drep); proto_item_set_len(item, offset-old_offset); return offset; } /* IDL: typedef struct { */ /* IDL: [charset(UTF16)] [unique(1)] uint16 *user_name; */ /* IDL: [charset(UTF16)] [unique(1)] uint16 *logon_domain; */ /* IDL: [charset(UTF16)] [unique(1)] uint16 *other_domains; */ /* IDL: [charset(UTF16)] [unique(1)] uint16 *logon_server; */ /* IDL: } USER_INFO_1; */ static int wkssvc_dissect_element_USER_INFO_1_user_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_USER_INFO_1_user_name_, NDR_POINTER_UNIQUE, "Pointer to User Name (uint16)",hf_wkssvc_USER_INFO_1_user_name); return offset; } static int wkssvc_dissect_element_USER_INFO_1_user_name_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { char *data; offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, drep, sizeof(guint16), hf_wkssvc_USER_INFO_1_user_name, FALSE, &data); proto_item_append_text(tree, ": %s", data); return offset; } static int wkssvc_dissect_element_USER_INFO_1_logon_domain(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_USER_INFO_1_logon_domain_, NDR_POINTER_UNIQUE, "Pointer to Logon Domain (uint16)",hf_wkssvc_USER_INFO_1_logon_domain); return offset; } static int wkssvc_dissect_element_USER_INFO_1_logon_domain_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { char *data; offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, drep, sizeof(guint16), hf_wkssvc_USER_INFO_1_logon_domain, FALSE, &data); proto_item_append_text(tree, ": %s", data); return offset; } static int wkssvc_dissect_element_USER_INFO_1_other_domains(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_USER_INFO_1_other_domains_, NDR_POINTER_UNIQUE, "Pointer to Other Domains (uint16)",hf_wkssvc_USER_INFO_1_other_domains); return offset; } static int wkssvc_dissect_element_USER_INFO_1_other_domains_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { char *data; offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, drep, sizeof(guint16), hf_wkssvc_USER_INFO_1_other_domains, FALSE, &data); proto_item_append_text(tree, ": %s", data); return offset; } static int wkssvc_dissect_element_USER_INFO_1_logon_server(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_USER_INFO_1_logon_server_, NDR_POINTER_UNIQUE, "Pointer to Logon Server (uint16)",hf_wkssvc_USER_INFO_1_logon_server); return offset; } static int wkssvc_dissect_element_USER_INFO_1_logon_server_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { char *data; offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, drep, sizeof(guint16), hf_wkssvc_USER_INFO_1_logon_server, FALSE, &data); proto_item_append_text(tree, ": %s", data); return offset; } int wkssvc_dissect_struct_USER_INFO_1(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, guint8 *drep, int hf_index, guint32 param _U_) { proto_item *item = NULL; proto_tree *tree = NULL; int old_offset; ALIGN_TO_4_BYTES; old_offset = offset; if (parent_tree) { item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE); tree = proto_item_add_subtree(item, ett_wkssvc_USER_INFO_1); } offset = wkssvc_dissect_element_USER_INFO_1_user_name(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_USER_INFO_1_logon_domain(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_USER_INFO_1_other_domains(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_USER_INFO_1_logon_server(tvb, offset, pinfo, tree, drep); proto_item_set_len(item, offset-old_offset); return offset; } /* IDL: typedef struct { */ /* IDL: uint32 entries_read; */ /* IDL: [size_is(entries_read)] [unique(1)] USER_INFO_1 *user1; */ /* IDL: } USER_INFO_1_CONTAINER; */ static int wkssvc_dissect_element_USER_INFO_1_CONTAINER_entries_read(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_USER_INFO_1_CONTAINER_entries_read,NULL); return offset; } static int wkssvc_dissect_element_USER_INFO_1_CONTAINER_user1(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_USER_INFO_1_CONTAINER_user1_, NDR_POINTER_UNIQUE, "Pointer to User1 (USER_INFO_1)",hf_wkssvc_USER_INFO_1_CONTAINER_user1); return offset; } static int wkssvc_dissect_element_USER_INFO_1_CONTAINER_user1_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_USER_INFO_1_CONTAINER_user1__); return offset; } static int wkssvc_dissect_element_USER_INFO_1_CONTAINER_user1__(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = wkssvc_dissect_struct_USER_INFO_1(tvb,offset,pinfo,tree,drep,hf_wkssvc_USER_INFO_1_CONTAINER_user1,0); return offset; } int wkssvc_dissect_struct_USER_INFO_1_CONTAINER(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, guint8 *drep, int hf_index, guint32 param _U_) { proto_item *item = NULL; proto_tree *tree = NULL; int old_offset; ALIGN_TO_4_BYTES; old_offset = offset; if (parent_tree) { item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE); tree = proto_item_add_subtree(item, ett_wkssvc_USER_INFO_1_CONTAINER); } offset = wkssvc_dissect_element_USER_INFO_1_CONTAINER_entries_read(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_USER_INFO_1_CONTAINER_user1(tvb, offset, pinfo, tree, drep); proto_item_set_len(item, offset-old_offset); return offset; } /* IDL: typedef [switch_type(uint32)] union { */ /* IDL: [case(0)] [unique(1)] [case(0)] USER_INFO_0_CONTAINER *user0; */ /* IDL: [case(1)] [unique(1)] [case(1)] USER_INFO_1_CONTAINER *user1; */ /* IDL: } WKS_USER_ENUM_UNION; */ static int wkssvc_dissect_element_WKS_USER_ENUM_UNION_user0(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_WKS_USER_ENUM_UNION_user0_, NDR_POINTER_UNIQUE, "Pointer to User0 (USER_INFO_0_CONTAINER)",hf_wkssvc_WKS_USER_ENUM_UNION_user0); return offset; } static int wkssvc_dissect_element_WKS_USER_ENUM_UNION_user0_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = wkssvc_dissect_struct_USER_INFO_0_CONTAINER(tvb,offset,pinfo,tree,drep,hf_wkssvc_WKS_USER_ENUM_UNION_user0,0); return offset; } static int wkssvc_dissect_element_WKS_USER_ENUM_UNION_user1(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_WKS_USER_ENUM_UNION_user1_, NDR_POINTER_UNIQUE, "Pointer to User1 (USER_INFO_1_CONTAINER)",hf_wkssvc_WKS_USER_ENUM_UNION_user1); return offset; } static int wkssvc_dissect_element_WKS_USER_ENUM_UNION_user1_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = wkssvc_dissect_struct_USER_INFO_1_CONTAINER(tvb,offset,pinfo,tree,drep,hf_wkssvc_WKS_USER_ENUM_UNION_user1,0); return offset; } static int wkssvc_dissect_WKS_USER_ENUM_UNION(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, guint8 *drep, int hf_index, guint32 param _U_) { proto_item *item = NULL; proto_tree *tree = NULL; int old_offset; guint32 level; ALIGN_TO_4_BYTES; old_offset = offset; if (parent_tree) { item = proto_tree_add_text(parent_tree, tvb, offset, -1, "WKS_USER_ENUM_UNION"); tree = proto_item_add_subtree(item, ett_wkssvc_WKS_USER_ENUM_UNION); } offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_index, &level); switch(level) { case 0: offset = wkssvc_dissect_element_WKS_USER_ENUM_UNION_user0(tvb, offset, pinfo, tree, drep); break; case 1: offset = wkssvc_dissect_element_WKS_USER_ENUM_UNION_user1(tvb, offset, pinfo, tree, drep); break; } proto_item_set_len(item, offset-old_offset); return offset; } /* IDL: typedef struct { */ /* IDL: uint32 quality_of_service; */ /* IDL: uint32 vc_count; */ /* IDL: [charset(UTF16)] [unique(1)] uint16 *name; */ /* IDL: [charset(UTF16)] [unique(1)] uint16 *address; */ /* IDL: uint32 wan_link; */ /* IDL: } wkssvc_NetWkstaTransportInfo0; */ static int wkssvc_dissect_element_NetWkstaTransportInfo0_quality_of_service(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaTransportInfo0_quality_of_service,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaTransportInfo0_vc_count(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaTransportInfo0_vc_count,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaTransportInfo0_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetWkstaTransportInfo0_name_, NDR_POINTER_UNIQUE, "Pointer to Name (uint16)",hf_wkssvc_wkssvc_NetWkstaTransportInfo0_name); return offset; } static int wkssvc_dissect_element_NetWkstaTransportInfo0_name_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { char *data; offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, drep, sizeof(guint16), hf_wkssvc_wkssvc_NetWkstaTransportInfo0_name, FALSE, &data); proto_item_append_text(tree, ": %s", data); return offset; } static int wkssvc_dissect_element_NetWkstaTransportInfo0_address(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetWkstaTransportInfo0_address_, NDR_POINTER_UNIQUE, "Pointer to Address (uint16)",hf_wkssvc_wkssvc_NetWkstaTransportInfo0_address); return offset; } static int wkssvc_dissect_element_NetWkstaTransportInfo0_address_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { char *data; offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, drep, sizeof(guint16), hf_wkssvc_wkssvc_NetWkstaTransportInfo0_address, FALSE, &data); proto_item_append_text(tree, ": %s", data); return offset; } static int wkssvc_dissect_element_NetWkstaTransportInfo0_wan_link(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaTransportInfo0_wan_link,NULL); return offset; } int wkssvc_dissect_struct_NetWkstaTransportInfo0(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, guint8 *drep, int hf_index, guint32 param _U_) { proto_item *item = NULL; proto_tree *tree = NULL; int old_offset; ALIGN_TO_4_BYTES; old_offset = offset; if (parent_tree) { item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE); tree = proto_item_add_subtree(item, ett_wkssvc_wkssvc_NetWkstaTransportInfo0); } offset = wkssvc_dissect_element_NetWkstaTransportInfo0_quality_of_service(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaTransportInfo0_vc_count(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaTransportInfo0_name(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaTransportInfo0_address(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaTransportInfo0_wan_link(tvb, offset, pinfo, tree, drep); proto_item_set_len(item, offset-old_offset); return offset; } /* IDL: typedef struct { */ /* IDL: uint32 count; */ /* IDL: [size_is(count)] [unique(1)] wkssvc_NetWkstaTransportInfo0 *array; */ /* IDL: } wkssvc_NetWkstaTransportCtr0; */ static int wkssvc_dissect_element_NetWkstaTransportCtr0_count(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaTransportCtr0_count,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaTransportCtr0_array(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetWkstaTransportCtr0_array_, NDR_POINTER_UNIQUE, "Pointer to Array (wkssvc_NetWkstaTransportInfo0)",hf_wkssvc_wkssvc_NetWkstaTransportCtr0_array); return offset; } static int wkssvc_dissect_element_NetWkstaTransportCtr0_array_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetWkstaTransportCtr0_array__); return offset; } static int wkssvc_dissect_element_NetWkstaTransportCtr0_array__(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = wkssvc_dissect_struct_NetWkstaTransportInfo0(tvb,offset,pinfo,tree,drep,hf_wkssvc_wkssvc_NetWkstaTransportCtr0_array,0); return offset; } int wkssvc_dissect_struct_NetWkstaTransportCtr0(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, guint8 *drep, int hf_index, guint32 param _U_) { proto_item *item = NULL; proto_tree *tree = NULL; int old_offset; ALIGN_TO_4_BYTES; old_offset = offset; if (parent_tree) { item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE); tree = proto_item_add_subtree(item, ett_wkssvc_wkssvc_NetWkstaTransportCtr0); } offset = wkssvc_dissect_element_NetWkstaTransportCtr0_count(tvb, offset, pinfo, tree, drep); offset = wkssvc_dissect_element_NetWkstaTransportCtr0_array(tvb, offset, pinfo, tree, drep); proto_item_set_len(item, offset-old_offset); return offset; } /* IDL: typedef union { */ /* IDL: [case(0)] [unique(1)] [case(0)] wkssvc_NetWkstaTransportCtr0 *ctr0; */ /* IDL: [default] ; */ /* IDL: } wkssvc_NetWkstaTransportCtr; */ static int wkssvc_dissect_element_NetWkstaTransportCtr_ctr0(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetWkstaTransportCtr_ctr0_, NDR_POINTER_UNIQUE, "Pointer to Ctr0 (wkssvc_NetWkstaTransportCtr0)",hf_wkssvc_wkssvc_NetWkstaTransportCtr_ctr0); return offset; } static int wkssvc_dissect_element_NetWkstaTransportCtr_ctr0_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = wkssvc_dissect_struct_NetWkstaTransportCtr0(tvb,offset,pinfo,tree,drep,hf_wkssvc_wkssvc_NetWkstaTransportCtr_ctr0,0); return offset; } static int wkssvc_dissect_NetWkstaTransportCtr(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, guint8 *drep, int hf_index, guint32 param _U_) { proto_item *item = NULL; proto_tree *tree = NULL; int old_offset; guint32 level; ALIGN_TO_4_BYTES; old_offset = offset; if (parent_tree) { item = proto_tree_add_text(parent_tree, tvb, offset, -1, "wkssvc_NetWkstaTransportCtr"); tree = proto_item_add_subtree(item, ett_wkssvc_wkssvc_NetWkstaTransportCtr); } offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_index, &level); switch(level) { case 0: offset = wkssvc_dissect_element_NetWkstaTransportCtr_ctr0(tvb, offset, pinfo, tree, drep); break; default: break; } proto_item_set_len(item, offset-old_offset); return offset; } /* IDL: typedef struct { */ /* IDL: uint8 data[524]; */ /* IDL: } wkssvc_PasswordBuffer; */ static int wkssvc_dissect_element_PasswordBuffer_data(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { int i; for (i = 0; i < 524; i++) offset = wkssvc_dissect_element_PasswordBuffer_data_(tvb, offset, pinfo, tree, drep); return offset; } static int wkssvc_dissect_element_PasswordBuffer_data_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint8(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_PasswordBuffer_data,NULL); return offset; } int wkssvc_dissect_struct_PasswordBuffer(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, guint8 *drep, int hf_index, guint32 param _U_) { proto_item *item = NULL; proto_tree *tree = NULL; int old_offset; old_offset = offset; if (parent_tree) { item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE); tree = proto_item_add_subtree(item, ett_wkssvc_wkssvc_PasswordBuffer); } offset = wkssvc_dissect_element_PasswordBuffer_data(tvb, offset, pinfo, tree, drep); proto_item_set_len(item, offset-old_offset); return offset; } /* IDL: typedef bitmap { */ /* IDL: WKSSVC_JOIN_FLAGS_DEFER_SPN = 0x00000100 , */ /* IDL: WKSSVC_JOIN_FLAGS_MACHINE_PWD_PASSED = 0x00000080 , */ /* IDL: WKSSVC_JOIN_FLAGS_JOIN_UNSECURE = 0x00000040 , */ /* IDL: WKSSVC_JOIN_FLAGS_DOMAIN_JOIN_IF_JOINED = 0x00000020 , */ /* IDL: WKSSVC_JOIN_FLAGS_WIN9X_UPGRADE = 0x00000010 , */ /* IDL: WKSSVC_JOIN_FLAGS_ACCOUNT_DELETE = 0x00000004 , */ /* IDL: WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE = 0x00000002 , */ /* IDL: WKSSVC_JOIN_FLAGS_JOIN_TYPE = 0x00000001 , */ /* IDL: } wkssvc_joinflags; */ int wkssvc_dissect_bitmap_joinflags(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, guint8 *drep, int hf_index, guint32 param _U_) { proto_item *item = NULL; proto_tree *tree = NULL; guint32 flags; ALIGN_TO_4_BYTES; if (parent_tree) { item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, 4, TRUE); tree = proto_item_add_subtree(item,ett_wkssvc_wkssvc_joinflags); } offset = dissect_ndr_uint32(tvb, offset, pinfo, NULL, drep, -1, &flags); proto_item_append_text(item, ": "); if (!flags) proto_item_append_text(item, "(No values set)"); proto_tree_add_boolean(tree, hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_DEFER_SPN, tvb, offset-4, 4, flags); if (flags&( 0x00000100 )){ proto_item_append_text(item, "WKSSVC_JOIN_FLAGS_DEFER_SPN"); if (flags & (~( 0x00000100 ))) proto_item_append_text(item, ", "); } flags&=(~( 0x00000100 )); proto_tree_add_boolean(tree, hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_MACHINE_PWD_PASSED, tvb, offset-4, 4, flags); if (flags&( 0x00000080 )){ proto_item_append_text(item, "WKSSVC_JOIN_FLAGS_MACHINE_PWD_PASSED"); if (flags & (~( 0x00000080 ))) proto_item_append_text(item, ", "); } flags&=(~( 0x00000080 )); proto_tree_add_boolean(tree, hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_JOIN_UNSECURE, tvb, offset-4, 4, flags); if (flags&( 0x00000040 )){ proto_item_append_text(item, "WKSSVC_JOIN_FLAGS_JOIN_UNSECURE"); if (flags & (~( 0x00000040 ))) proto_item_append_text(item, ", "); } flags&=(~( 0x00000040 )); proto_tree_add_boolean(tree, hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_DOMAIN_JOIN_IF_JOINED, tvb, offset-4, 4, flags); if (flags&( 0x00000020 )){ proto_item_append_text(item, "WKSSVC_JOIN_FLAGS_DOMAIN_JOIN_IF_JOINED"); if (flags & (~( 0x00000020 ))) proto_item_append_text(item, ", "); } flags&=(~( 0x00000020 )); proto_tree_add_boolean(tree, hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_WIN9X_UPGRADE, tvb, offset-4, 4, flags); if (flags&( 0x00000010 )){ proto_item_append_text(item, "WKSSVC_JOIN_FLAGS_WIN9X_UPGRADE"); if (flags & (~( 0x00000010 ))) proto_item_append_text(item, ", "); } flags&=(~( 0x00000010 )); proto_tree_add_boolean(tree, hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_ACCOUNT_DELETE, tvb, offset-4, 4, flags); if (flags&( 0x00000004 )){ proto_item_append_text(item, "WKSSVC_JOIN_FLAGS_ACCOUNT_DELETE"); if (flags & (~( 0x00000004 ))) proto_item_append_text(item, ", "); } flags&=(~( 0x00000004 )); proto_tree_add_boolean(tree, hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE, tvb, offset-4, 4, flags); if (flags&( 0x00000002 )){ proto_item_append_text(item, "WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE"); if (flags & (~( 0x00000002 ))) proto_item_append_text(item, ", "); } flags&=(~( 0x00000002 )); proto_tree_add_boolean(tree, hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_JOIN_TYPE, tvb, offset-4, 4, flags); if (flags&( 0x00000001 )){ proto_item_append_text(item, "WKSSVC_JOIN_FLAGS_JOIN_TYPE"); if (flags & (~( 0x00000001 ))) proto_item_append_text(item, ", "); } flags&=(~( 0x00000001 )); if (flags) { proto_item_append_text(item, "Unknown bitmap value 0x%x", flags); } return offset; } /* IDL: typedef bitmap { */ /* IDL: WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE = 0x00000002 , */ /* IDL: } wkssvc_renameflags; */ int wkssvc_dissect_bitmap_renameflags(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, guint8 *drep, int hf_index, guint32 param _U_) { proto_item *item = NULL; proto_tree *tree = NULL; guint32 flags; ALIGN_TO_4_BYTES; if (parent_tree) { item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, 4, TRUE); tree = proto_item_add_subtree(item,ett_wkssvc_wkssvc_renameflags); } offset = dissect_ndr_uint32(tvb, offset, pinfo, NULL, drep, -1, &flags); proto_item_append_text(item, ": "); if (!flags) proto_item_append_text(item, "(No values set)"); proto_tree_add_boolean(tree, hf_wkssvc_wkssvc_renameflags_WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE, tvb, offset-4, 4, flags); if (flags&( 0x00000002 )){ proto_item_append_text(item, "WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE"); if (flags & (~( 0x00000002 ))) proto_item_append_text(item, ", "); } flags&=(~( 0x00000002 )); if (flags) { proto_item_append_text(item, "Unknown bitmap value 0x%x", flags); } return offset; } static int wkssvc_dissect_element_NetWkstaGetInfo_server_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetWkstaGetInfo_server_name_, NDR_POINTER_UNIQUE, "Pointer to Server Name (uint16)",hf_wkssvc_wkssvc_NetWkstaGetInfo_server_name); return offset; } static int wkssvc_dissect_element_NetWkstaGetInfo_server_name_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { char *data; offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, drep, sizeof(guint16), hf_wkssvc_wkssvc_NetWkstaGetInfo_server_name, FALSE, &data); proto_item_append_text(tree, ": %s", data); return offset; } static int wkssvc_dissect_element_NetWkstaGetInfo_level(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaGetInfo_level,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaGetInfo_info(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetWkstaGetInfo_info_, NDR_POINTER_REF, "Pointer to Info (wkssvc_NetWkstaInfo)",hf_wkssvc_wkssvc_NetWkstaGetInfo_info); return offset; } static int wkssvc_dissect_element_NetWkstaGetInfo_info_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = wkssvc_dissect_NetWkstaInfo(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaGetInfo_info, 0); return offset; } /* IDL: WERROR wkssvc_NetWkstaGetInfo( */ /* IDL: [charset(UTF16)] [unique(1)] [in] uint16 *server_name, */ /* IDL: [in] uint32 level, */ /* IDL: [switch_is(level)] [out] [ref] wkssvc_NetWkstaInfo *info */ /* IDL: ); */ static int wkssvc_dissect_NetWkstaGetInfo_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { guint32 status; offset = wkssvc_dissect_element_NetWkstaGetInfo_info(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_werror, &status); if (status != 0 && check_col(pinfo->cinfo, COL_INFO)) col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x")); return offset; } static int wkssvc_dissect_NetWkstaGetInfo_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { offset = wkssvc_dissect_element_NetWkstaGetInfo_server_name(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = wkssvc_dissect_element_NetWkstaGetInfo_level(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); return offset; } static int wkssvc_dissect_element_NetWkstaSetInfo_server_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetWkstaSetInfo_server_name_, NDR_POINTER_UNIQUE, "Pointer to Server Name (uint16)",hf_wkssvc_wkssvc_NetWkstaSetInfo_server_name); return offset; } static int wkssvc_dissect_element_NetWkstaSetInfo_server_name_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { char *data; offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, drep, sizeof(guint16), hf_wkssvc_wkssvc_NetWkstaSetInfo_server_name, FALSE, &data); proto_item_append_text(tree, ": %s", data); return offset; } static int wkssvc_dissect_element_NetWkstaSetInfo_level(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaSetInfo_level,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaSetInfo_info(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetWkstaSetInfo_info_, NDR_POINTER_REF, "Pointer to Info (wkssvc_NetWkstaInfo)",hf_wkssvc_wkssvc_NetWkstaSetInfo_info); return offset; } static int wkssvc_dissect_element_NetWkstaSetInfo_info_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = wkssvc_dissect_NetWkstaInfo(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaSetInfo_info, 0); return offset; } static int wkssvc_dissect_element_NetWkstaSetInfo_parm_error(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetWkstaSetInfo_parm_error_, NDR_POINTER_REF, "Pointer to Parm Error (uint32)",hf_wkssvc_wkssvc_NetWkstaSetInfo_parm_error); return offset; } static int wkssvc_dissect_element_NetWkstaSetInfo_parm_error_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaSetInfo_parm_error,NULL); return offset; } /* IDL: WERROR wkssvc_NetWkstaSetInfo( */ /* IDL: [charset(UTF16)] [unique(1)] [in] uint16 *server_name, */ /* IDL: [in] uint32 level, */ /* IDL: [switch_is(level)] [in] [ref] wkssvc_NetWkstaInfo *info, */ /* IDL: [out] [in] [ref] uint32 *parm_error */ /* IDL: ); */ static int wkssvc_dissect_NetWkstaSetInfo_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { guint32 status; offset = wkssvc_dissect_element_NetWkstaSetInfo_parm_error(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_werror, &status); if (status != 0 && check_col(pinfo->cinfo, COL_INFO)) col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x")); return offset; } static int wkssvc_dissect_NetWkstaSetInfo_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { offset = wkssvc_dissect_element_NetWkstaSetInfo_server_name(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = wkssvc_dissect_element_NetWkstaSetInfo_level(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = wkssvc_dissect_element_NetWkstaSetInfo_info(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = wkssvc_dissect_element_NetWkstaSetInfo_parm_error(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); return offset; } static int wkssvc_dissect_element_NetWkstaEnumUsers_server_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetWkstaEnumUsers_server_name_, NDR_POINTER_UNIQUE, "Pointer to Server Name (uint16)",hf_wkssvc_wkssvc_NetWkstaEnumUsers_server_name); return offset; } static int wkssvc_dissect_element_NetWkstaEnumUsers_server_name_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { char *data; offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, drep, sizeof(guint16), hf_wkssvc_wkssvc_NetWkstaEnumUsers_server_name, FALSE, &data); proto_item_append_text(tree, ": %s", data); return offset; } static int wkssvc_dissect_element_NetWkstaEnumUsers_level(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaEnumUsers_level,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaEnumUsers_users(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetWkstaEnumUsers_users_, NDR_POINTER_REF, "Pointer to Users (WKS_USER_ENUM_UNION)",hf_wkssvc_wkssvc_NetWkstaEnumUsers_users); return offset; } static int wkssvc_dissect_element_NetWkstaEnumUsers_users_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = wkssvc_dissect_WKS_USER_ENUM_UNION(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaEnumUsers_users, 0); return offset; } static int wkssvc_dissect_element_NetWkstaEnumUsers_prefmaxlen(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaEnumUsers_prefmaxlen,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaEnumUsers_entriesread(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetWkstaEnumUsers_entriesread_, NDR_POINTER_UNIQUE, "Pointer to Entriesread (uint32)",hf_wkssvc_wkssvc_NetWkstaEnumUsers_entriesread); return offset; } static int wkssvc_dissect_element_NetWkstaEnumUsers_entriesread_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaEnumUsers_entriesread,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaEnumUsers_totalentries(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetWkstaEnumUsers_totalentries_, NDR_POINTER_UNIQUE, "Pointer to Totalentries (uint32)",hf_wkssvc_wkssvc_NetWkstaEnumUsers_totalentries); return offset; } static int wkssvc_dissect_element_NetWkstaEnumUsers_totalentries_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaEnumUsers_totalentries,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaEnumUsers_resumehandle(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetWkstaEnumUsers_resumehandle_, NDR_POINTER_REF, "Pointer to Resumehandle (uint32)",hf_wkssvc_wkssvc_NetWkstaEnumUsers_resumehandle); return offset; } static int wkssvc_dissect_element_NetWkstaEnumUsers_resumehandle_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaEnumUsers_resumehandle,NULL); return offset; } /* IDL: WERROR wkssvc_NetWkstaEnumUsers( */ /* IDL: [charset(UTF16)] [unique(1)] [in] uint16 *server_name, */ /* IDL: [in] uint32 level, */ /* IDL: [out] [in] [ref] WKS_USER_ENUM_UNION *users, */ /* IDL: [in] uint32 prefmaxlen, */ /* IDL: [out] [unique(1)] uint32 *entriesread, */ /* IDL: [out] [unique(1)] uint32 *totalentries, */ /* IDL: [out] [in] [ref] uint32 *resumehandle */ /* IDL: ); */ static int wkssvc_dissect_NetWkstaEnumUsers_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { guint32 status; offset = wkssvc_dissect_element_NetWkstaEnumUsers_users(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = wkssvc_dissect_element_NetWkstaEnumUsers_entriesread(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = wkssvc_dissect_element_NetWkstaEnumUsers_totalentries(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = wkssvc_dissect_element_NetWkstaEnumUsers_resumehandle(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_werror, &status); if (status != 0 && check_col(pinfo->cinfo, COL_INFO)) col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x")); return offset; } static int wkssvc_dissect_NetWkstaEnumUsers_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { offset = wkssvc_dissect_element_NetWkstaEnumUsers_server_name(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = wkssvc_dissect_element_NetWkstaEnumUsers_level(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = wkssvc_dissect_element_NetWkstaEnumUsers_users(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = wkssvc_dissect_element_NetWkstaEnumUsers_prefmaxlen(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = wkssvc_dissect_element_NetWkstaEnumUsers_resumehandle(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); return offset; } /* IDL: WERROR WKSSVC_NETRWKSTAUSERGETINFO( */ /* IDL: */ /* IDL: ); */ static int wkssvc_dissect_WKSSVC_NETRWKSTAUSERGETINFO_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { guint32 status; offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_werror, &status); if (status != 0 && check_col(pinfo->cinfo, COL_INFO)) col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x")); return offset; } static int wkssvc_dissect_WKSSVC_NETRWKSTAUSERGETINFO_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { return offset; } /* IDL: WERROR WKSSVC_NETRWKSTAUSERSETINFO( */ /* IDL: */ /* IDL: ); */ static int wkssvc_dissect_WKSSVC_NETRWKSTAUSERSETINFO_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { guint32 status; offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_werror, &status); if (status != 0 && check_col(pinfo->cinfo, COL_INFO)) col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x")); return offset; } static int wkssvc_dissect_WKSSVC_NETRWKSTAUSERSETINFO_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { return offset; } static int wkssvc_dissect_element_NetWkstaTransportEnum_server_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetWkstaTransportEnum_server_name_, NDR_POINTER_UNIQUE, "Pointer to Server Name (uint16)",hf_wkssvc_wkssvc_NetWkstaTransportEnum_server_name); return offset; } static int wkssvc_dissect_element_NetWkstaTransportEnum_server_name_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { char *data; offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, drep, sizeof(guint16), hf_wkssvc_wkssvc_NetWkstaTransportEnum_server_name, FALSE, &data); proto_item_append_text(tree, ": %s", data); return offset; } static int wkssvc_dissect_element_NetWkstaTransportEnum_level(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaTransportEnum_level,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaTransportEnum_ctr(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetWkstaTransportEnum_ctr_, NDR_POINTER_REF, "Pointer to Ctr (wkssvc_NetWkstaTransportCtr)",hf_wkssvc_wkssvc_NetWkstaTransportEnum_ctr); return offset; } static int wkssvc_dissect_element_NetWkstaTransportEnum_ctr_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = wkssvc_dissect_NetWkstaTransportCtr(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaTransportEnum_ctr, 0); return offset; } static int wkssvc_dissect_element_NetWkstaTransportEnum_max_buffer(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaTransportEnum_max_buffer,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaTransportEnum_totalentries(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaTransportEnum_totalentries,NULL); return offset; } static int wkssvc_dissect_element_NetWkstaTransportEnum_resume_handle(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetWkstaTransportEnum_resume_handle_, NDR_POINTER_UNIQUE, "Pointer to Resume Handle (uint32)",hf_wkssvc_wkssvc_NetWkstaTransportEnum_resume_handle); return offset; } static int wkssvc_dissect_element_NetWkstaTransportEnum_resume_handle_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetWkstaTransportEnum_resume_handle,NULL); return offset; } /* IDL: WERROR wkssvc_NetWkstaTransportEnum( */ /* IDL: [charset(UTF16)] [unique(1)] [in] uint16 *server_name, */ /* IDL: [out] [in] uint32 level, */ /* IDL: [switch_is(level)] [out] [in] [ref] wkssvc_NetWkstaTransportCtr *ctr, */ /* IDL: [in] uint32 max_buffer, */ /* IDL: [out] uint32 totalentries, */ /* IDL: [out] [unique(1)] [in] uint32 *resume_handle */ /* IDL: ); */ static int wkssvc_dissect_NetWkstaTransportEnum_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { guint32 status; offset = wkssvc_dissect_element_NetWkstaTransportEnum_level(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = wkssvc_dissect_element_NetWkstaTransportEnum_ctr(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = wkssvc_dissect_element_NetWkstaTransportEnum_totalentries(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = wkssvc_dissect_element_NetWkstaTransportEnum_resume_handle(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_werror, &status); if (status != 0 && check_col(pinfo->cinfo, COL_INFO)) col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x")); return offset; } static int wkssvc_dissect_NetWkstaTransportEnum_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { offset = wkssvc_dissect_element_NetWkstaTransportEnum_server_name(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = wkssvc_dissect_element_NetWkstaTransportEnum_level(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = wkssvc_dissect_element_NetWkstaTransportEnum_ctr(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = wkssvc_dissect_element_NetWkstaTransportEnum_max_buffer(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = wkssvc_dissect_element_NetWkstaTransportEnum_resume_handle(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); return offset; } /* IDL: WERROR WKSSVC_NETRWKSTATRANSPORTADD( */ /* IDL: */ /* IDL: ); */ static int wkssvc_dissect_WKSSVC_NETRWKSTATRANSPORTADD_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { guint32 status; offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_werror, &status); if (status != 0 && check_col(pinfo->cinfo, COL_INFO)) col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x")); return offset; } static int wkssvc_dissect_WKSSVC_NETRWKSTATRANSPORTADD_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { return offset; } /* IDL: WERROR WKSSVC_NETRWKSTATRANSPORTDEL( */ /* IDL: */ /* IDL: ); */ static int wkssvc_dissect_WKSSVC_NETRWKSTATRANSPORTDEL_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { guint32 status; offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_werror, &status); if (status != 0 && check_col(pinfo->cinfo, COL_INFO)) col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x")); return offset; } static int wkssvc_dissect_WKSSVC_NETRWKSTATRANSPORTDEL_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { return offset; } /* IDL: WERROR WKSSVC_NETRUSEADD( */ /* IDL: */ /* IDL: ); */ static int wkssvc_dissect_WKSSVC_NETRUSEADD_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { guint32 status; offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_werror, &status); if (status != 0 && check_col(pinfo->cinfo, COL_INFO)) col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x")); return offset; } static int wkssvc_dissect_WKSSVC_NETRUSEADD_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { return offset; } /* IDL: WERROR WKSSVC_NETRUSEGETINFO( */ /* IDL: */ /* IDL: ); */ static int wkssvc_dissect_WKSSVC_NETRUSEGETINFO_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { guint32 status; offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_werror, &status); if (status != 0 && check_col(pinfo->cinfo, COL_INFO)) col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x")); return offset; } static int wkssvc_dissect_WKSSVC_NETRUSEGETINFO_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { return offset; } /* IDL: WERROR WKSSVC_NETRUSEDEL( */ /* IDL: */ /* IDL: ); */ static int wkssvc_dissect_WKSSVC_NETRUSEDEL_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { guint32 status; offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_werror, &status); if (status != 0 && check_col(pinfo->cinfo, COL_INFO)) col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x")); return offset; } static int wkssvc_dissect_WKSSVC_NETRUSEDEL_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { return offset; } /* IDL: WERROR WKSSVC_NETRUSEENUM( */ /* IDL: */ /* IDL: ); */ static int wkssvc_dissect_WKSSVC_NETRUSEENUM_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { guint32 status; offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_werror, &status); if (status != 0 && check_col(pinfo->cinfo, COL_INFO)) col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x")); return offset; } static int wkssvc_dissect_WKSSVC_NETRUSEENUM_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { return offset; } /* IDL: WERROR WKSSVC_NETRMESSAGEBUFFERSEND( */ /* IDL: */ /* IDL: ); */ static int wkssvc_dissect_WKSSVC_NETRMESSAGEBUFFERSEND_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { guint32 status; offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_werror, &status); if (status != 0 && check_col(pinfo->cinfo, COL_INFO)) col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x")); return offset; } static int wkssvc_dissect_WKSSVC_NETRMESSAGEBUFFERSEND_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { return offset; } /* IDL: WERROR WKSSVC_NETRWORKSTATIONSTATISTICSGET( */ /* IDL: */ /* IDL: ); */ static int wkssvc_dissect_WKSSVC_NETRWORKSTATIONSTATISTICSGET_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { guint32 status; offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_werror, &status); if (status != 0 && check_col(pinfo->cinfo, COL_INFO)) col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x")); return offset; } static int wkssvc_dissect_WKSSVC_NETRWORKSTATIONSTATISTICSGET_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { return offset; } /* IDL: WERROR WKSSVC_NETRLOGONDOMAINNAMEADD( */ /* IDL: */ /* IDL: ); */ static int wkssvc_dissect_WKSSVC_NETRLOGONDOMAINNAMEADD_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { guint32 status; offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_werror, &status); if (status != 0 && check_col(pinfo->cinfo, COL_INFO)) col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x")); return offset; } static int wkssvc_dissect_WKSSVC_NETRLOGONDOMAINNAMEADD_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { return offset; } /* IDL: WERROR WKSSVC_NETRLOGONDOMAINNAMEDEL( */ /* IDL: */ /* IDL: ); */ static int wkssvc_dissect_WKSSVC_NETRLOGONDOMAINNAMEDEL_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { guint32 status; offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_werror, &status); if (status != 0 && check_col(pinfo->cinfo, COL_INFO)) col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x")); return offset; } static int wkssvc_dissect_WKSSVC_NETRLOGONDOMAINNAMEDEL_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { return offset; } /* IDL: WERROR WKSSVC_NETRJOINDOMAIN( */ /* IDL: */ /* IDL: ); */ static int wkssvc_dissect_WKSSVC_NETRJOINDOMAIN_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { guint32 status; offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_werror, &status); if (status != 0 && check_col(pinfo->cinfo, COL_INFO)) col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x")); return offset; } static int wkssvc_dissect_WKSSVC_NETRJOINDOMAIN_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { return offset; } /* IDL: WERROR WKSSVC_NETRUNJOINDOMAIN( */ /* IDL: */ /* IDL: ); */ static int wkssvc_dissect_WKSSVC_NETRUNJOINDOMAIN_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { guint32 status; offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_werror, &status); if (status != 0 && check_col(pinfo->cinfo, COL_INFO)) col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x")); return offset; } static int wkssvc_dissect_WKSSVC_NETRUNJOINDOMAIN_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { return offset; } /* IDL: WERROR WKSSVC_NETRRENAMEMACHINEINDOMAIN( */ /* IDL: */ /* IDL: ); */ static int wkssvc_dissect_WKSSVC_NETRRENAMEMACHINEINDOMAIN_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { guint32 status; offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_werror, &status); if (status != 0 && check_col(pinfo->cinfo, COL_INFO)) col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x")); return offset; } static int wkssvc_dissect_WKSSVC_NETRRENAMEMACHINEINDOMAIN_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { return offset; } /* IDL: WERROR WKSSVC_NETRVALIDATENAME( */ /* IDL: */ /* IDL: ); */ static int wkssvc_dissect_WKSSVC_NETRVALIDATENAME_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { guint32 status; offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_werror, &status); if (status != 0 && check_col(pinfo->cinfo, COL_INFO)) col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x")); return offset; } static int wkssvc_dissect_WKSSVC_NETRVALIDATENAME_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { return offset; } /* IDL: WERROR WKSSVC_NETRGETJOININFORMATION( */ /* IDL: */ /* IDL: ); */ static int wkssvc_dissect_WKSSVC_NETRGETJOININFORMATION_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { guint32 status; offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_werror, &status); if (status != 0 && check_col(pinfo->cinfo, COL_INFO)) col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x")); return offset; } static int wkssvc_dissect_WKSSVC_NETRGETJOININFORMATION_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { return offset; } /* IDL: WERROR WKSSVC_NETRGETJOINABLEOUS( */ /* IDL: */ /* IDL: ); */ static int wkssvc_dissect_WKSSVC_NETRGETJOINABLEOUS_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { guint32 status; offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_werror, &status); if (status != 0 && check_col(pinfo->cinfo, COL_INFO)) col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x")); return offset; } static int wkssvc_dissect_WKSSVC_NETRGETJOINABLEOUS_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { return offset; } static int wkssvc_dissect_element_NetrJoinDomain2_server_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetrJoinDomain2_server_name_, NDR_POINTER_UNIQUE, "Pointer to Server Name (uint16)",hf_wkssvc_wkssvc_NetrJoinDomain2_server_name); return offset; } static int wkssvc_dissect_element_NetrJoinDomain2_server_name_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { char *data; offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, drep, sizeof(guint16), hf_wkssvc_wkssvc_NetrJoinDomain2_server_name, FALSE, &data); proto_item_append_text(tree, ": %s", data); return offset; } static int wkssvc_dissect_element_NetrJoinDomain2_domain_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetrJoinDomain2_domain_name_, NDR_POINTER_REF, "Pointer to Domain Name (uint16)",hf_wkssvc_wkssvc_NetrJoinDomain2_domain_name); return offset; } static int wkssvc_dissect_element_NetrJoinDomain2_domain_name_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { char *data; offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, drep, sizeof(guint16), hf_wkssvc_wkssvc_NetrJoinDomain2_domain_name, FALSE, &data); proto_item_append_text(tree, ": %s", data); return offset; } static int wkssvc_dissect_element_NetrJoinDomain2_account_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetrJoinDomain2_account_name_, NDR_POINTER_UNIQUE, "Pointer to Account Name (uint16)",hf_wkssvc_wkssvc_NetrJoinDomain2_account_name); return offset; } static int wkssvc_dissect_element_NetrJoinDomain2_account_name_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { char *data; offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, drep, sizeof(guint16), hf_wkssvc_wkssvc_NetrJoinDomain2_account_name, FALSE, &data); proto_item_append_text(tree, ": %s", data); return offset; } static int wkssvc_dissect_element_NetrJoinDomain2_admin_account(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetrJoinDomain2_admin_account_, NDR_POINTER_UNIQUE, "Pointer to Admin Account (uint16)",hf_wkssvc_wkssvc_NetrJoinDomain2_admin_account); return offset; } static int wkssvc_dissect_element_NetrJoinDomain2_admin_account_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { char *data; offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, drep, sizeof(guint16), hf_wkssvc_wkssvc_NetrJoinDomain2_admin_account, FALSE, &data); proto_item_append_text(tree, ": %s", data); return offset; } static int wkssvc_dissect_element_NetrJoinDomain2_encrypted_password(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetrJoinDomain2_encrypted_password_, NDR_POINTER_UNIQUE, "Pointer to Encrypted Password (wkssvc_PasswordBuffer)",hf_wkssvc_wkssvc_NetrJoinDomain2_encrypted_password); return offset; } static int wkssvc_dissect_element_NetrJoinDomain2_encrypted_password_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = wkssvc_dissect_struct_PasswordBuffer(tvb,offset,pinfo,tree,drep,hf_wkssvc_wkssvc_NetrJoinDomain2_encrypted_password,0); return offset; } static int wkssvc_dissect_element_NetrJoinDomain2_join_flags(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = wkssvc_dissect_bitmap_joinflags(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetrJoinDomain2_join_flags, 0); return offset; } /* IDL: WERROR wkssvc_NetrJoinDomain2( */ /* IDL: [charset(UTF16)] [unique(1)] [in] uint16 *server_name, */ /* IDL: [charset(UTF16)] [in] [ref] uint16 *domain_name, */ /* IDL: [charset(UTF16)] [unique(1)] [in] uint16 *account_name, */ /* IDL: [charset(UTF16)] [unique(1)] [in] uint16 *admin_account, */ /* IDL: [unique(1)] [in] wkssvc_PasswordBuffer *encrypted_password, */ /* IDL: [in] wkssvc_joinflags join_flags */ /* IDL: ); */ static int wkssvc_dissect_NetrJoinDomain2_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { guint32 status; offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_werror, &status); if (status != 0 && check_col(pinfo->cinfo, COL_INFO)) col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x")); return offset; } static int wkssvc_dissect_NetrJoinDomain2_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { offset = wkssvc_dissect_element_NetrJoinDomain2_server_name(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = wkssvc_dissect_element_NetrJoinDomain2_domain_name(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = wkssvc_dissect_element_NetrJoinDomain2_account_name(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = wkssvc_dissect_element_NetrJoinDomain2_admin_account(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = wkssvc_dissect_element_NetrJoinDomain2_encrypted_password(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = wkssvc_dissect_element_NetrJoinDomain2_join_flags(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); return offset; } static int wkssvc_dissect_element_NetrUnjoinDomain2_server_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetrUnjoinDomain2_server_name_, NDR_POINTER_UNIQUE, "Pointer to Server Name (uint16)",hf_wkssvc_wkssvc_NetrUnjoinDomain2_server_name); return offset; } static int wkssvc_dissect_element_NetrUnjoinDomain2_server_name_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { char *data; offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, drep, sizeof(guint16), hf_wkssvc_wkssvc_NetrUnjoinDomain2_server_name, FALSE, &data); proto_item_append_text(tree, ": %s", data); return offset; } static int wkssvc_dissect_element_NetrUnjoinDomain2_account(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetrUnjoinDomain2_account_, NDR_POINTER_UNIQUE, "Pointer to Account (uint16)",hf_wkssvc_wkssvc_NetrUnjoinDomain2_account); return offset; } static int wkssvc_dissect_element_NetrUnjoinDomain2_account_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { char *data; offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, drep, sizeof(guint16), hf_wkssvc_wkssvc_NetrUnjoinDomain2_account, FALSE, &data); proto_item_append_text(tree, ": %s", data); return offset; } static int wkssvc_dissect_element_NetrUnjoinDomain2_encrypted_password(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetrUnjoinDomain2_encrypted_password_, NDR_POINTER_UNIQUE, "Pointer to Encrypted Password (wkssvc_PasswordBuffer)",hf_wkssvc_wkssvc_NetrUnjoinDomain2_encrypted_password); return offset; } static int wkssvc_dissect_element_NetrUnjoinDomain2_encrypted_password_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = wkssvc_dissect_struct_PasswordBuffer(tvb,offset,pinfo,tree,drep,hf_wkssvc_wkssvc_NetrUnjoinDomain2_encrypted_password,0); return offset; } static int wkssvc_dissect_element_NetrUnjoinDomain2_unjoin_flags(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = wkssvc_dissect_bitmap_joinflags(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetrUnjoinDomain2_unjoin_flags, 0); return offset; } /* IDL: WERROR wkssvc_NetrUnjoinDomain2( */ /* IDL: [charset(UTF16)] [in] [unique(1)] uint16 *server_name, */ /* IDL: [charset(UTF16)] [in] [unique(1)] uint16 *account, */ /* IDL: [unique(1)] [in] wkssvc_PasswordBuffer *encrypted_password, */ /* IDL: [in] wkssvc_joinflags unjoin_flags */ /* IDL: ); */ static int wkssvc_dissect_NetrUnjoinDomain2_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { guint32 status; offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_werror, &status); if (status != 0 && check_col(pinfo->cinfo, COL_INFO)) col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x")); return offset; } static int wkssvc_dissect_NetrUnjoinDomain2_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { offset = wkssvc_dissect_element_NetrUnjoinDomain2_server_name(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = wkssvc_dissect_element_NetrUnjoinDomain2_account(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = wkssvc_dissect_element_NetrUnjoinDomain2_encrypted_password(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = wkssvc_dissect_element_NetrUnjoinDomain2_unjoin_flags(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); return offset; } static int wkssvc_dissect_element_NetrRenameMachineInDomain2_server_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetrRenameMachineInDomain2_server_name_, NDR_POINTER_UNIQUE, "Pointer to Server Name (uint16)",hf_wkssvc_wkssvc_NetrRenameMachineInDomain2_server_name); return offset; } static int wkssvc_dissect_element_NetrRenameMachineInDomain2_server_name_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { char *data; offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, drep, sizeof(guint16), hf_wkssvc_wkssvc_NetrRenameMachineInDomain2_server_name, FALSE, &data); proto_item_append_text(tree, ": %s", data); return offset; } static int wkssvc_dissect_element_NetrRenameMachineInDomain2_NewMachineName(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetrRenameMachineInDomain2_NewMachineName_, NDR_POINTER_UNIQUE, "Pointer to Newmachinename (uint16)",hf_wkssvc_wkssvc_NetrRenameMachineInDomain2_NewMachineName); return offset; } static int wkssvc_dissect_element_NetrRenameMachineInDomain2_NewMachineName_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { char *data; offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, drep, sizeof(guint16), hf_wkssvc_wkssvc_NetrRenameMachineInDomain2_NewMachineName, FALSE, &data); proto_item_append_text(tree, ": %s", data); return offset; } static int wkssvc_dissect_element_NetrRenameMachineInDomain2_Account(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetrRenameMachineInDomain2_Account_, NDR_POINTER_UNIQUE, "Pointer to Account (uint16)",hf_wkssvc_wkssvc_NetrRenameMachineInDomain2_Account); return offset; } static int wkssvc_dissect_element_NetrRenameMachineInDomain2_Account_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { char *data; offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, drep, sizeof(guint16), hf_wkssvc_wkssvc_NetrRenameMachineInDomain2_Account, FALSE, &data); proto_item_append_text(tree, ": %s", data); return offset; } static int wkssvc_dissect_element_NetrRenameMachineInDomain2_EncryptedPassword(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetrRenameMachineInDomain2_EncryptedPassword_, NDR_POINTER_UNIQUE, "Pointer to Encryptedpassword (wkssvc_PasswordBuffer)",hf_wkssvc_wkssvc_NetrRenameMachineInDomain2_EncryptedPassword); return offset; } static int wkssvc_dissect_element_NetrRenameMachineInDomain2_EncryptedPassword_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = wkssvc_dissect_struct_PasswordBuffer(tvb,offset,pinfo,tree,drep,hf_wkssvc_wkssvc_NetrRenameMachineInDomain2_EncryptedPassword,0); return offset; } static int wkssvc_dissect_element_NetrRenameMachineInDomain2_RenameOptions(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = wkssvc_dissect_bitmap_renameflags(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetrRenameMachineInDomain2_RenameOptions, 0); return offset; } /* IDL: WERROR wkssvc_NetrRenameMachineInDomain2( */ /* IDL: [charset(UTF16)] [in] [unique(1)] uint16 *server_name, */ /* IDL: [charset(UTF16)] [in] [unique(1)] uint16 *NewMachineName, */ /* IDL: [charset(UTF16)] [in] [unique(1)] uint16 *Account, */ /* IDL: [unique(1)] [in] wkssvc_PasswordBuffer *EncryptedPassword, */ /* IDL: [in] wkssvc_renameflags RenameOptions */ /* IDL: ); */ static int wkssvc_dissect_NetrRenameMachineInDomain2_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { guint32 status; offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_werror, &status); if (status != 0 && check_col(pinfo->cinfo, COL_INFO)) col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x")); return offset; } static int wkssvc_dissect_NetrRenameMachineInDomain2_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { offset = wkssvc_dissect_element_NetrRenameMachineInDomain2_server_name(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = wkssvc_dissect_element_NetrRenameMachineInDomain2_NewMachineName(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = wkssvc_dissect_element_NetrRenameMachineInDomain2_Account(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = wkssvc_dissect_element_NetrRenameMachineInDomain2_EncryptedPassword(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = wkssvc_dissect_element_NetrRenameMachineInDomain2_RenameOptions(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); return offset; } /* IDL: WERROR WKSSVC_NETRVALIDATENAME2( */ /* IDL: */ /* IDL: ); */ static int wkssvc_dissect_WKSSVC_NETRVALIDATENAME2_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { guint32 status; offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_werror, &status); if (status != 0 && check_col(pinfo->cinfo, COL_INFO)) col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x")); return offset; } static int wkssvc_dissect_WKSSVC_NETRVALIDATENAME2_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { return offset; } /* IDL: WERROR WKSSVC_NETRGETJOINABLEOUS2( */ /* IDL: */ /* IDL: ); */ static int wkssvc_dissect_WKSSVC_NETRGETJOINABLEOUS2_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { guint32 status; offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_werror, &status); if (status != 0 && check_col(pinfo->cinfo, COL_INFO)) col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x")); return offset; } static int wkssvc_dissect_WKSSVC_NETRGETJOINABLEOUS2_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { return offset; } static int wkssvc_dissect_element_NetrAddAlternateComputerName_server_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetrAddAlternateComputerName_server_name_, NDR_POINTER_UNIQUE, "Pointer to Server Name (uint16)",hf_wkssvc_wkssvc_NetrAddAlternateComputerName_server_name); return offset; } static int wkssvc_dissect_element_NetrAddAlternateComputerName_server_name_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { char *data; offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, drep, sizeof(guint16), hf_wkssvc_wkssvc_NetrAddAlternateComputerName_server_name, FALSE, &data); proto_item_append_text(tree, ": %s", data); return offset; } static int wkssvc_dissect_element_NetrAddAlternateComputerName_NewAlternateMachineName(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetrAddAlternateComputerName_NewAlternateMachineName_, NDR_POINTER_UNIQUE, "Pointer to Newalternatemachinename (uint16)",hf_wkssvc_wkssvc_NetrAddAlternateComputerName_NewAlternateMachineName); return offset; } static int wkssvc_dissect_element_NetrAddAlternateComputerName_NewAlternateMachineName_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { char *data; offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, drep, sizeof(guint16), hf_wkssvc_wkssvc_NetrAddAlternateComputerName_NewAlternateMachineName, FALSE, &data); proto_item_append_text(tree, ": %s", data); return offset; } static int wkssvc_dissect_element_NetrAddAlternateComputerName_Account(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetrAddAlternateComputerName_Account_, NDR_POINTER_UNIQUE, "Pointer to Account (uint16)",hf_wkssvc_wkssvc_NetrAddAlternateComputerName_Account); return offset; } static int wkssvc_dissect_element_NetrAddAlternateComputerName_Account_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { char *data; offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, drep, sizeof(guint16), hf_wkssvc_wkssvc_NetrAddAlternateComputerName_Account, FALSE, &data); proto_item_append_text(tree, ": %s", data); return offset; } static int wkssvc_dissect_element_NetrAddAlternateComputerName_EncryptedPassword(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetrAddAlternateComputerName_EncryptedPassword_, NDR_POINTER_UNIQUE, "Pointer to Encryptedpassword (wkssvc_PasswordBuffer)",hf_wkssvc_wkssvc_NetrAddAlternateComputerName_EncryptedPassword); return offset; } static int wkssvc_dissect_element_NetrAddAlternateComputerName_EncryptedPassword_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = wkssvc_dissect_struct_PasswordBuffer(tvb,offset,pinfo,tree,drep,hf_wkssvc_wkssvc_NetrAddAlternateComputerName_EncryptedPassword,0); return offset; } static int wkssvc_dissect_element_NetrAddAlternateComputerName_Reserved(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetrAddAlternateComputerName_Reserved,NULL); return offset; } /* IDL: WERROR wkssvc_NetrAddAlternateComputerName( */ /* IDL: [charset(UTF16)] [in] [unique(1)] uint16 *server_name, */ /* IDL: [charset(UTF16)] [in] [unique(1)] uint16 *NewAlternateMachineName, */ /* IDL: [charset(UTF16)] [in] [unique(1)] uint16 *Account, */ /* IDL: [unique(1)] [in] wkssvc_PasswordBuffer *EncryptedPassword, */ /* IDL: [in] uint32 Reserved */ /* IDL: ); */ static int wkssvc_dissect_NetrAddAlternateComputerName_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { guint32 status; offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_werror, &status); if (status != 0 && check_col(pinfo->cinfo, COL_INFO)) col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x")); return offset; } static int wkssvc_dissect_NetrAddAlternateComputerName_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { offset = wkssvc_dissect_element_NetrAddAlternateComputerName_server_name(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = wkssvc_dissect_element_NetrAddAlternateComputerName_NewAlternateMachineName(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = wkssvc_dissect_element_NetrAddAlternateComputerName_Account(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = wkssvc_dissect_element_NetrAddAlternateComputerName_EncryptedPassword(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = wkssvc_dissect_element_NetrAddAlternateComputerName_Reserved(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); return offset; } static int wkssvc_dissect_element_NetrRemoveAlternateComputerName_server_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetrRemoveAlternateComputerName_server_name_, NDR_POINTER_UNIQUE, "Pointer to Server Name (uint16)",hf_wkssvc_wkssvc_NetrRemoveAlternateComputerName_server_name); return offset; } static int wkssvc_dissect_element_NetrRemoveAlternateComputerName_server_name_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { char *data; offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, drep, sizeof(guint16), hf_wkssvc_wkssvc_NetrRemoveAlternateComputerName_server_name, FALSE, &data); proto_item_append_text(tree, ": %s", data); return offset; } static int wkssvc_dissect_element_NetrRemoveAlternateComputerName_AlternateMachineNameToRemove(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetrRemoveAlternateComputerName_AlternateMachineNameToRemove_, NDR_POINTER_UNIQUE, "Pointer to Alternatemachinenametoremove (uint16)",hf_wkssvc_wkssvc_NetrRemoveAlternateComputerName_AlternateMachineNameToRemove); return offset; } static int wkssvc_dissect_element_NetrRemoveAlternateComputerName_AlternateMachineNameToRemove_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { char *data; offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, drep, sizeof(guint16), hf_wkssvc_wkssvc_NetrRemoveAlternateComputerName_AlternateMachineNameToRemove, FALSE, &data); proto_item_append_text(tree, ": %s", data); return offset; } static int wkssvc_dissect_element_NetrRemoveAlternateComputerName_Account(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetrRemoveAlternateComputerName_Account_, NDR_POINTER_UNIQUE, "Pointer to Account (uint16)",hf_wkssvc_wkssvc_NetrRemoveAlternateComputerName_Account); return offset; } static int wkssvc_dissect_element_NetrRemoveAlternateComputerName_Account_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { char *data; offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, drep, sizeof(guint16), hf_wkssvc_wkssvc_NetrRemoveAlternateComputerName_Account, FALSE, &data); proto_item_append_text(tree, ": %s", data); return offset; } static int wkssvc_dissect_element_NetrRemoveAlternateComputerName_EncryptedPassword(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, wkssvc_dissect_element_NetrRemoveAlternateComputerName_EncryptedPassword_, NDR_POINTER_UNIQUE, "Pointer to Encryptedpassword (wkssvc_PasswordBuffer)",hf_wkssvc_wkssvc_NetrRemoveAlternateComputerName_EncryptedPassword); return offset; } static int wkssvc_dissect_element_NetrRemoveAlternateComputerName_EncryptedPassword_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = wkssvc_dissect_struct_PasswordBuffer(tvb,offset,pinfo,tree,drep,hf_wkssvc_wkssvc_NetrRemoveAlternateComputerName_EncryptedPassword,0); return offset; } static int wkssvc_dissect_element_NetrRemoveAlternateComputerName_Reserved(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep) { offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_wkssvc_NetrRemoveAlternateComputerName_Reserved,NULL); return offset; } /* IDL: WERROR wkssvc_NetrRemoveAlternateComputerName( */ /* IDL: [charset(UTF16)] [in] [unique(1)] uint16 *server_name, */ /* IDL: [charset(UTF16)] [in] [unique(1)] uint16 *AlternateMachineNameToRemove, */ /* IDL: [charset(UTF16)] [in] [unique(1)] uint16 *Account, */ /* IDL: [unique(1)] [in] wkssvc_PasswordBuffer *EncryptedPassword, */ /* IDL: [in] uint32 Reserved */ /* IDL: ); */ static int wkssvc_dissect_NetrRemoveAlternateComputerName_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { guint32 status; offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_werror, &status); if (status != 0 && check_col(pinfo->cinfo, COL_INFO)) col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x")); return offset; } static int wkssvc_dissect_NetrRemoveAlternateComputerName_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { offset = wkssvc_dissect_element_NetrRemoveAlternateComputerName_server_name(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = wkssvc_dissect_element_NetrRemoveAlternateComputerName_AlternateMachineNameToRemove(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = wkssvc_dissect_element_NetrRemoveAlternateComputerName_Account(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = wkssvc_dissect_element_NetrRemoveAlternateComputerName_EncryptedPassword(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); offset = wkssvc_dissect_element_NetrRemoveAlternateComputerName_Reserved(tvb, offset, pinfo, tree, drep); offset = dissect_deferred_pointers(pinfo, tvb, offset, drep); return offset; } /* IDL: WERROR WKSSVC_NETRSETPRIMARYCOMPUTERNAME( */ /* IDL: */ /* IDL: ); */ static int wkssvc_dissect_WKSSVC_NETRSETPRIMARYCOMPUTERNAME_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { guint32 status; offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_werror, &status); if (status != 0 && check_col(pinfo->cinfo, COL_INFO)) col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x")); return offset; } static int wkssvc_dissect_WKSSVC_NETRSETPRIMARYCOMPUTERNAME_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { return offset; } /* IDL: WERROR WKSSVC_NETRENUMERATECOMPUTERNAMES( */ /* IDL: */ /* IDL: ); */ static int wkssvc_dissect_WKSSVC_NETRENUMERATECOMPUTERNAMES_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { guint32 status; offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_wkssvc_werror, &status); if (status != 0 && check_col(pinfo->cinfo, COL_INFO)) col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x")); return offset; } static int wkssvc_dissect_WKSSVC_NETRENUMERATECOMPUTERNAMES_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_) { return offset; } static dcerpc_sub_dissector wkssvc_dissectors[] = { { 0, "NetWkstaGetInfo", wkssvc_dissect_NetWkstaGetInfo_request, wkssvc_dissect_NetWkstaGetInfo_response}, { 1, "NetWkstaSetInfo", wkssvc_dissect_NetWkstaSetInfo_request, wkssvc_dissect_NetWkstaSetInfo_response}, { 2, "NetWkstaEnumUsers", wkssvc_dissect_NetWkstaEnumUsers_request, wkssvc_dissect_NetWkstaEnumUsers_response}, { 3, "WKSSVC_NETRWKSTAUSERGETINFO", wkssvc_dissect_WKSSVC_NETRWKSTAUSERGETINFO_request, wkssvc_dissect_WKSSVC_NETRWKSTAUSERGETINFO_response}, { 4, "WKSSVC_NETRWKSTAUSERSETINFO", wkssvc_dissect_WKSSVC_NETRWKSTAUSERSETINFO_request, wkssvc_dissect_WKSSVC_NETRWKSTAUSERSETINFO_response}, { 5, "NetWkstaTransportEnum", wkssvc_dissect_NetWkstaTransportEnum_request, wkssvc_dissect_NetWkstaTransportEnum_response}, { 6, "WKSSVC_NETRWKSTATRANSPORTADD", wkssvc_dissect_WKSSVC_NETRWKSTATRANSPORTADD_request, wkssvc_dissect_WKSSVC_NETRWKSTATRANSPORTADD_response}, { 7, "WKSSVC_NETRWKSTATRANSPORTDEL", wkssvc_dissect_WKSSVC_NETRWKSTATRANSPORTDEL_request, wkssvc_dissect_WKSSVC_NETRWKSTATRANSPORTDEL_response}, { 8, "WKSSVC_NETRUSEADD", wkssvc_dissect_WKSSVC_NETRUSEADD_request, wkssvc_dissect_WKSSVC_NETRUSEADD_response}, { 9, "WKSSVC_NETRUSEGETINFO", wkssvc_dissect_WKSSVC_NETRUSEGETINFO_request, wkssvc_dissect_WKSSVC_NETRUSEGETINFO_response}, { 10, "WKSSVC_NETRUSEDEL", wkssvc_dissect_WKSSVC_NETRUSEDEL_request, wkssvc_dissect_WKSSVC_NETRUSEDEL_response}, { 11, "WKSSVC_NETRUSEENUM", wkssvc_dissect_WKSSVC_NETRUSEENUM_request, wkssvc_dissect_WKSSVC_NETRUSEENUM_response}, { 12, "WKSSVC_NETRMESSAGEBUFFERSEND", wkssvc_dissect_WKSSVC_NETRMESSAGEBUFFERSEND_request, wkssvc_dissect_WKSSVC_NETRMESSAGEBUFFERSEND_response}, { 13, "WKSSVC_NETRWORKSTATIONSTATISTICSGET", wkssvc_dissect_WKSSVC_NETRWORKSTATIONSTATISTICSGET_request, wkssvc_dissect_WKSSVC_NETRWORKSTATIONSTATISTICSGET_response}, { 14, "WKSSVC_NETRLOGONDOMAINNAMEADD", wkssvc_dissect_WKSSVC_NETRLOGONDOMAINNAMEADD_request, wkssvc_dissect_WKSSVC_NETRLOGONDOMAINNAMEADD_response}, { 15, "WKSSVC_NETRLOGONDOMAINNAMEDEL", wkssvc_dissect_WKSSVC_NETRLOGONDOMAINNAMEDEL_request, wkssvc_dissect_WKSSVC_NETRLOGONDOMAINNAMEDEL_response}, { 16, "WKSSVC_NETRJOINDOMAIN", wkssvc_dissect_WKSSVC_NETRJOINDOMAIN_request, wkssvc_dissect_WKSSVC_NETRJOINDOMAIN_response}, { 17, "WKSSVC_NETRUNJOINDOMAIN", wkssvc_dissect_WKSSVC_NETRUNJOINDOMAIN_request, wkssvc_dissect_WKSSVC_NETRUNJOINDOMAIN_response}, { 18, "WKSSVC_NETRRENAMEMACHINEINDOMAIN", wkssvc_dissect_WKSSVC_NETRRENAMEMACHINEINDOMAIN_request, wkssvc_dissect_WKSSVC_NETRRENAMEMACHINEINDOMAIN_response}, { 19, "WKSSVC_NETRVALIDATENAME", wkssvc_dissect_WKSSVC_NETRVALIDATENAME_request, wkssvc_dissect_WKSSVC_NETRVALIDATENAME_response}, { 20, "WKSSVC_NETRGETJOININFORMATION", wkssvc_dissect_WKSSVC_NETRGETJOININFORMATION_request, wkssvc_dissect_WKSSVC_NETRGETJOININFORMATION_response}, { 21, "WKSSVC_NETRGETJOINABLEOUS", wkssvc_dissect_WKSSVC_NETRGETJOINABLEOUS_request, wkssvc_dissect_WKSSVC_NETRGETJOINABLEOUS_response}, { 22, "NetrJoinDomain2", wkssvc_dissect_NetrJoinDomain2_request, wkssvc_dissect_NetrJoinDomain2_response}, { 23, "NetrUnjoinDomain2", wkssvc_dissect_NetrUnjoinDomain2_request, wkssvc_dissect_NetrUnjoinDomain2_response}, { 24, "NetrRenameMachineInDomain2", wkssvc_dissect_NetrRenameMachineInDomain2_request, wkssvc_dissect_NetrRenameMachineInDomain2_response}, { 25, "WKSSVC_NETRVALIDATENAME2", wkssvc_dissect_WKSSVC_NETRVALIDATENAME2_request, wkssvc_dissect_WKSSVC_NETRVALIDATENAME2_response}, { 26, "WKSSVC_NETRGETJOINABLEOUS2", wkssvc_dissect_WKSSVC_NETRGETJOINABLEOUS2_request, wkssvc_dissect_WKSSVC_NETRGETJOINABLEOUS2_response}, { 27, "NetrAddAlternateComputerName", wkssvc_dissect_NetrAddAlternateComputerName_request, wkssvc_dissect_NetrAddAlternateComputerName_response}, { 28, "NetrRemoveAlternateComputerName", wkssvc_dissect_NetrRemoveAlternateComputerName_request, wkssvc_dissect_NetrRemoveAlternateComputerName_response}, { 29, "WKSSVC_NETRSETPRIMARYCOMPUTERNAME", wkssvc_dissect_WKSSVC_NETRSETPRIMARYCOMPUTERNAME_request, wkssvc_dissect_WKSSVC_NETRSETPRIMARYCOMPUTERNAME_response}, { 30, "WKSSVC_NETRENUMERATECOMPUTERNAMES", wkssvc_dissect_WKSSVC_NETRENUMERATECOMPUTERNAMES_request, wkssvc_dissect_WKSSVC_NETRENUMERATECOMPUTERNAMES_response}, { 0, NULL, NULL, NULL } }; void proto_register_dcerpc_wkssvc(void) { static hf_register_info hf[] = { { &hf_wkssvc_wkssvc_NetWkstaInfo502_use_raw_read, { "Use Raw Read", "wkssvc.wkssvc_NetWkstaInfo502.use_raw_read", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaEnumUsers_entriesread, { "Entriesread", "wkssvc.wkssvc_NetWkstaEnumUsers.entriesread", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo502_dgram_event_reset_freq, { "Dgram Event Reset Freq", "wkssvc.wkssvc_NetWkstaInfo502.dgram_event_reset_freq", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaTransportCtr0_count, { "Count", "wkssvc.wkssvc_NetWkstaTransportCtr0.count", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo502_pipe_increment, { "Pipe Increment", "wkssvc.wkssvc_NetWkstaInfo502.pipe_increment", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo_info502, { "Info502", "wkssvc.wkssvc_NetWkstaInfo.info502", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaGetInfo_info, { "Info", "wkssvc.wkssvc_NetWkstaGetInfo.info", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo502_log_election_packets, { "Log Election Packets", "wkssvc.wkssvc_NetWkstaInfo502.log_election_packets", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo102_lan_root, { "Lan Root", "wkssvc.wkssvc_NetWkstaInfo102.lan_root", FT_STRING, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo502_char_wait, { "Char Wait", "wkssvc.wkssvc_NetWkstaInfo502.char_wait", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_USER_INFO_0_user, { "User", "wkssvc.USER_INFO_0.user", FT_STRING, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo502_buf_files_deny_write, { "Buf Files Deny Write", "wkssvc.wkssvc_NetWkstaInfo502.buf_files_deny_write", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo502_force_core_create_mode, { "Force Core Create Mode", "wkssvc.wkssvc_NetWkstaInfo502.force_core_create_mode", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo1013_keep_connection, { "Keep Connection", "wkssvc.wkssvc_NetWkstaInfo1013.keep_connection", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo1011_collection_time, { "Collection Time", "wkssvc.wkssvc_NetWkstaInfo1011.collection_time", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo101_platform_id, { "Platform Id", "wkssvc.wkssvc_NetWkstaInfo101.platform_id", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetrRenameMachineInDomain2_EncryptedPassword, { "Encryptedpassword", "wkssvc.wkssvc_NetrRenameMachineInDomain2.EncryptedPassword", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE, { "Wkssvc Join Flags Account Create", "wkssvc.wkssvc_joinflags.WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE", FT_BOOLEAN, 32, TFS(&wkssvc_joinflags_WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE_tfs), ( 0x00000002 ), "", HFILL }}, { &hf_wkssvc_wkssvc_NetrAddAlternateComputerName_server_name, { "Server Name", "wkssvc.wkssvc_NetrAddAlternateComputerName.server_name", FT_STRING, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo102_logged_on_users, { "Logged On Users", "wkssvc.wkssvc_NetWkstaInfo102.logged_on_users", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetrUnjoinDomain2_server_name, { "Server Name", "wkssvc.wkssvc_NetrUnjoinDomain2.server_name", FT_STRING, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo102_server_name, { "Server Name", "wkssvc.wkssvc_NetWkstaInfo102.server_name", FT_STRING, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaTransportInfo0_vc_count, { "Vc Count", "wkssvc.wkssvc_NetWkstaTransportInfo0.vc_count", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo502_read_ahead_throughput, { "Read Ahead Throughput", "wkssvc.wkssvc_NetWkstaInfo502.read_ahead_throughput", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetrRenameMachineInDomain2_Account, { "Account", "wkssvc.wkssvc_NetrRenameMachineInDomain2.Account", FT_STRING, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetrAddAlternateComputerName_NewAlternateMachineName, { "Newalternatemachinename", "wkssvc.wkssvc_NetrAddAlternateComputerName.NewAlternateMachineName", FT_STRING, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo100_version_minor, { "Version Minor", "wkssvc.wkssvc_NetWkstaInfo100.version_minor", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo502_num_mailslot_buffers, { "Num Mailslot Buffers", "wkssvc.wkssvc_NetWkstaInfo502.num_mailslot_buffers", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo102_domain_name, { "Domain Name", "wkssvc.wkssvc_NetWkstaInfo102.domain_name", FT_STRING, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_WKS_USER_ENUM_UNION_user0, { "User0", "wkssvc.WKS_USER_ENUM_UNION.user0", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }}, { &hf_wkssvc_WKS_USER_ENUM_UNION_user1, { "User1", "wkssvc.WKS_USER_ENUM_UNION.user1", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }}, { &hf_wkssvc_USER_INFO_1_user_name, { "User Name", "wkssvc.USER_INFO_1.user_name", FT_STRING, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo502_maximum_collection_count, { "Maximum Collection Count", "wkssvc.wkssvc_NetWkstaInfo502.maximum_collection_count", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaEnumUsers_prefmaxlen, { "Prefmaxlen", "wkssvc.wkssvc_NetWkstaEnumUsers.prefmaxlen", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaEnumUsers_level, { "Level", "wkssvc.wkssvc_NetWkstaEnumUsers.level", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_USER_INFO_1_other_domains, { "Other Domains", "wkssvc.USER_INFO_1.other_domains", FT_STRING, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_JOIN_TYPE, { "Wkssvc Join Flags Join Type", "wkssvc.wkssvc_joinflags.WKSSVC_JOIN_FLAGS_JOIN_TYPE", FT_BOOLEAN, 32, TFS(&wkssvc_joinflags_WKSSVC_JOIN_FLAGS_JOIN_TYPE_tfs), ( 0x00000001 ), "", HFILL }}, { &hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_MACHINE_PWD_PASSED, { "Wkssvc Join Flags Machine Pwd Passed", "wkssvc.wkssvc_joinflags.WKSSVC_JOIN_FLAGS_MACHINE_PWD_PASSED", FT_BOOLEAN, 32, TFS(&wkssvc_joinflags_WKSSVC_JOIN_FLAGS_MACHINE_PWD_PASSED_tfs), ( 0x00000080 ), "", HFILL }}, { &hf_wkssvc_wkssvc_NetrRemoveAlternateComputerName_server_name, { "Server Name", "wkssvc.wkssvc_NetrRemoveAlternateComputerName.server_name", FT_STRING, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo502_use_encryption, { "Use Encryption", "wkssvc.wkssvc_NetWkstaInfo502.use_encryption", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaEnumUsers_totalentries, { "Totalentries", "wkssvc.wkssvc_NetWkstaEnumUsers.totalentries", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetrAddAlternateComputerName_EncryptedPassword, { "Encryptedpassword", "wkssvc.wkssvc_NetrAddAlternateComputerName.EncryptedPassword", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaTransportInfo0_quality_of_service, { "Quality Of Service", "wkssvc.wkssvc_NetWkstaTransportInfo0.quality_of_service", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo100_platform_id, { "Platform Id", "wkssvc.wkssvc_NetWkstaInfo100.platform_id", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaTransportEnum_ctr, { "Ctr", "wkssvc.wkssvc_NetWkstaTransportEnum.ctr", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetrRenameMachineInDomain2_server_name, { "Server Name", "wkssvc.wkssvc_NetrRenameMachineInDomain2.server_name", FT_STRING, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetrJoinDomain2_admin_account, { "Admin Account", "wkssvc.wkssvc_NetrJoinDomain2.admin_account", FT_STRING, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaGetInfo_server_name, { "Server Name", "wkssvc.wkssvc_NetWkstaGetInfo.server_name", FT_STRING, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaSetInfo_level, { "Level", "wkssvc.wkssvc_NetWkstaSetInfo.level", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_renameflags_WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE, { "Wkssvc Join Flags Account Create", "wkssvc.wkssvc_renameflags.WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE", FT_BOOLEAN, 32, TFS(&wkssvc_renameflags_WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE_tfs), ( 0x00000002 ), "", HFILL }}, { &hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_DEFER_SPN, { "Wkssvc Join Flags Defer Spn", "wkssvc.wkssvc_joinflags.WKSSVC_JOIN_FLAGS_DEFER_SPN", FT_BOOLEAN, 32, TFS(&wkssvc_joinflags_WKSSVC_JOIN_FLAGS_DEFER_SPN_tfs), ( 0x00000100 ), "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo1023_size_char_buf, { "Size Char Buf", "wkssvc.wkssvc_NetWkstaInfo1023.size_char_buf", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo_info1010, { "Info1010", "wkssvc.wkssvc_NetWkstaInfo.info1010", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }}, { &hf_wkssvc_platform_id, { "Platform Id", "wkssvc.platform_id", FT_UINT32, BASE_DEC, VALS(srvsvc_srvsvc_PlatformId_vals), 0, " ", HFILL }}, { &hf_wkssvc_wkssvc_NetrJoinDomain2_server_name, { "Server Name", "wkssvc.wkssvc_NetrJoinDomain2.server_name", FT_STRING, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo_info1011, { "Info1011", "wkssvc.wkssvc_NetWkstaInfo.info1011", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo_info1012, { "Info1012", "wkssvc.wkssvc_NetWkstaInfo.info1012", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo502_lock_maximum, { "Lock Maximum", "wkssvc.wkssvc_NetWkstaInfo502.lock_maximum", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo_info1013, { "Info1013", "wkssvc.wkssvc_NetWkstaInfo.info1013", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }}, { &hf_wkssvc_USER_INFO_0_CONTAINER_user0, { "User0", "wkssvc.USER_INFO_0_CONTAINER.user0", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo101_server_name, { "Server Name", "wkssvc.wkssvc_NetWkstaInfo101.server_name", FT_STRING, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo_info1018, { "Info1018", "wkssvc.wkssvc_NetWkstaInfo.info1018", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo502_buf_read_only_files, { "Buf Read Only Files", "wkssvc.wkssvc_NetWkstaInfo502.buf_read_only_files", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo101_version_minor, { "Version Minor", "wkssvc.wkssvc_NetWkstaInfo101.version_minor", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetrJoinDomain2_domain_name, { "Domain Name", "wkssvc.wkssvc_NetrJoinDomain2.domain_name", FT_STRING, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo101_lan_root, { "Lan Root", "wkssvc.wkssvc_NetWkstaInfo101.lan_root", FT_STRING, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_ACCOUNT_DELETE, { "Wkssvc Join Flags Account Delete", "wkssvc.wkssvc_joinflags.WKSSVC_JOIN_FLAGS_ACCOUNT_DELETE", FT_BOOLEAN, 32, TFS(&wkssvc_joinflags_WKSSVC_JOIN_FLAGS_ACCOUNT_DELETE_tfs), ( 0x00000004 ), "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo101_domain_name, { "Domain Name", "wkssvc.wkssvc_NetWkstaInfo101.domain_name", FT_STRING, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_opnum, { "Operation", "wkssvc.opnum", FT_UINT16, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetrUnjoinDomain2_account, { "Account", "wkssvc.wkssvc_NetrUnjoinDomain2.account", FT_STRING, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_DOMAIN_JOIN_IF_JOINED, { "Wkssvc Join Flags Domain Join If Joined", "wkssvc.wkssvc_joinflags.WKSSVC_JOIN_FLAGS_DOMAIN_JOIN_IF_JOINED", FT_BOOLEAN, 32, TFS(&wkssvc_joinflags_WKSSVC_JOIN_FLAGS_DOMAIN_JOIN_IF_JOINED_tfs), ( 0x00000020 ), "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo502_dormant_file_limit, { "Dormant File Limit", "wkssvc.wkssvc_NetWkstaInfo502.dormant_file_limit", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_USER_INFO_1_CONTAINER_user1, { "User1", "wkssvc.USER_INFO_1_CONTAINER.user1", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo502_use_unlock_behind, { "Use Unlock Behind", "wkssvc.wkssvc_NetWkstaInfo502.use_unlock_behind", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaEnumUsers_resumehandle, { "Resumehandle", "wkssvc.wkssvc_NetWkstaEnumUsers.resumehandle", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetrRemoveAlternateComputerName_EncryptedPassword, { "Encryptedpassword", "wkssvc.wkssvc_NetrRemoveAlternateComputerName.EncryptedPassword", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo502_pipe_maximum, { "Pipe Maximum", "wkssvc.wkssvc_NetWkstaInfo502.pipe_maximum", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo502_cache_file_timeout, { "Cache File Timeout", "wkssvc.wkssvc_NetWkstaInfo502.cache_file_timeout", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaTransportEnum_level, { "Level", "wkssvc.wkssvc_NetWkstaTransportEnum.level", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetrUnjoinDomain2_encrypted_password, { "Encrypted Password", "wkssvc.wkssvc_NetrUnjoinDomain2.encrypted_password", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }}, { &hf_wkssvc_USER_INFO_1_CONTAINER_entries_read, { "Entries Read", "wkssvc.USER_INFO_1_CONTAINER.entries_read", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo_info1023, { "Info1023", "wkssvc.wkssvc_NetWkstaInfo.info1023", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaSetInfo_parm_error, { "Parm Error", "wkssvc.wkssvc_NetWkstaSetInfo.parm_error", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo502_use_raw_write, { "Use Raw Write", "wkssvc.wkssvc_NetWkstaInfo502.use_raw_write", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo_info100, { "Info100", "wkssvc.wkssvc_NetWkstaInfo.info100", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo_info101, { "Info101", "wkssvc.wkssvc_NetWkstaInfo.info101", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo_info102, { "Info102", "wkssvc.wkssvc_NetWkstaInfo.info102", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo_info1027, { "Info1027", "wkssvc.wkssvc_NetWkstaInfo.info1027", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo502_use_512_byte_max_transfer, { "Use 512 Byte Max Transfer", "wkssvc.wkssvc_NetWkstaInfo502.use_512_byte_max_transfer", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo1018_session_timeout, { "Session Timeout", "wkssvc.wkssvc_NetWkstaInfo1018.session_timeout", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo1033_max_threads, { "Max Threads", "wkssvc.wkssvc_NetWkstaInfo1033.max_threads", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaTransportInfo0_name, { "Name", "wkssvc.wkssvc_NetWkstaTransportInfo0.name", FT_STRING, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo100_version_major, { "Version Major", "wkssvc.wkssvc_NetWkstaInfo100.version_major", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetrRenameMachineInDomain2_NewMachineName, { "Newmachinename", "wkssvc.wkssvc_NetrRenameMachineInDomain2.NewMachineName", FT_STRING, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo100_server_name, { "Server Name", "wkssvc.wkssvc_NetWkstaInfo100.server_name", FT_STRING, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaEnumUsers_users, { "Users", "wkssvc.wkssvc_NetWkstaEnumUsers.users", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetrAddAlternateComputerName_Account, { "Account", "wkssvc.wkssvc_NetrAddAlternateComputerName.Account", FT_STRING, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo102_version_minor, { "Version Minor", "wkssvc.wkssvc_NetWkstaInfo102.version_minor", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetrRemoveAlternateComputerName_AlternateMachineNameToRemove, { "Alternatemachinenametoremove", "wkssvc.wkssvc_NetrRemoveAlternateComputerName.AlternateMachineNameToRemove", FT_STRING, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaTransportEnum_server_name, { "Server Name", "wkssvc.wkssvc_NetWkstaTransportEnum.server_name", FT_STRING, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo502_max_commands, { "Max Commands", "wkssvc.wkssvc_NetWkstaInfo502.max_commands", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo502_utilize_nt_caching, { "Utilize Nt Caching", "wkssvc.wkssvc_NetWkstaInfo502.utilize_nt_caching", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaEnumUsers_server_name, { "Server Name", "wkssvc.wkssvc_NetWkstaEnumUsers.server_name", FT_STRING, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo100_domain_name, { "Domain Name", "wkssvc.wkssvc_NetWkstaInfo100.domain_name", FT_STRING, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo502_max_threads, { "Max Threads", "wkssvc.wkssvc_NetWkstaInfo502.max_threads", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo502_size_char_buf, { "Size Char Buf", "wkssvc.wkssvc_NetWkstaInfo502.size_char_buf", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo_info1033, { "Info1033", "wkssvc.wkssvc_NetWkstaInfo.info1033", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaSetInfo_info, { "Info", "wkssvc.wkssvc_NetWkstaSetInfo.info", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo1012_maximum_collection_count, { "Maximum Collection Count", "wkssvc.wkssvc_NetWkstaInfo1012.maximum_collection_count", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_USER_INFO_1_logon_domain, { "Logon Domain", "wkssvc.USER_INFO_1.logon_domain", FT_STRING, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_werror, { "Windows Error", "wkssvc.werror", FT_UINT32, BASE_HEX, VALS(WERR_errors), 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo502_num_srv_announce_buffers, { "Num Srv Announce Buffers", "wkssvc.wkssvc_NetWkstaInfo502.num_srv_announce_buffers", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetrUnjoinDomain2_unjoin_flags, { "Unjoin Flags", "wkssvc.wkssvc_NetrUnjoinDomain2.unjoin_flags", FT_UINT32, BASE_HEX, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo502_use_close_behind, { "Use Close Behind", "wkssvc.wkssvc_NetWkstaInfo502.use_close_behind", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetrJoinDomain2_encrypted_password, { "Encrypted Password", "wkssvc.wkssvc_NetrJoinDomain2.encrypted_password", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo101_version_major, { "Version Major", "wkssvc.wkssvc_NetWkstaInfo101.version_major", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaSetInfo_server_name, { "Server Name", "wkssvc.wkssvc_NetWkstaSetInfo.server_name", FT_STRING, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo502_use_lock_read_unlock, { "Use Lock Read Unlock", "wkssvc.wkssvc_NetWkstaInfo502.use_lock_read_unlock", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaGetInfo_level, { "Level", "wkssvc.wkssvc_NetWkstaGetInfo.level", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetrJoinDomain2_join_flags, { "Join Flags", "wkssvc.wkssvc_NetrJoinDomain2.join_flags", FT_UINT32, BASE_HEX, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo1010_char_wait, { "Char Wait", "wkssvc.wkssvc_NetWkstaInfo1010.char_wait", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo502_lock_increment, { "Lock Increment", "wkssvc.wkssvc_NetWkstaInfo502.lock_increment", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_JOIN_UNSECURE, { "Wkssvc Join Flags Join Unsecure", "wkssvc.wkssvc_joinflags.WKSSVC_JOIN_FLAGS_JOIN_UNSECURE", FT_BOOLEAN, 32, TFS(&wkssvc_joinflags_WKSSVC_JOIN_FLAGS_JOIN_UNSECURE_tfs), ( 0x00000040 ), "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo1027_errorlog_sz, { "Errorlog Sz", "wkssvc.wkssvc_NetWkstaInfo1027.errorlog_sz", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaTransportCtr_ctr0, { "Ctr0", "wkssvc.wkssvc_NetWkstaTransportCtr.ctr0", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetrJoinDomain2_account_name, { "Account Name", "wkssvc.wkssvc_NetrJoinDomain2.account_name", FT_STRING, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaTransportInfo0_wan_link, { "Wan Link", "wkssvc.wkssvc_NetWkstaTransportInfo0.wan_link", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo502_keep_connection, { "Keep Connection", "wkssvc.wkssvc_NetWkstaInfo502.keep_connection", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaTransportEnum_resume_handle, { "Resume Handle", "wkssvc.wkssvc_NetWkstaTransportEnum.resume_handle", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetrAddAlternateComputerName_Reserved, { "Reserved", "wkssvc.wkssvc_NetrAddAlternateComputerName.Reserved", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetrRenameMachineInDomain2_RenameOptions, { "Renameoptions", "wkssvc.wkssvc_NetrRenameMachineInDomain2.RenameOptions", FT_UINT32, BASE_HEX, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo502_use_write_raw_data, { "Use Write Raw Data", "wkssvc.wkssvc_NetWkstaInfo502.use_write_raw_data", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_USER_INFO_1_logon_server, { "Logon Server", "wkssvc.USER_INFO_1.logon_server", FT_STRING, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_PasswordBuffer_data, { "Data", "wkssvc.wkssvc_PasswordBuffer.data", FT_UINT8, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaTransportEnum_max_buffer, { "Max Buffer", "wkssvc.wkssvc_NetWkstaTransportEnum.max_buffer", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo502_max_illegal_dgram_events, { "Max Illegal Dgram Events", "wkssvc.wkssvc_NetWkstaInfo502.max_illegal_dgram_events", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaTransportEnum_totalentries, { "Totalentries", "wkssvc.wkssvc_NetWkstaTransportEnum.totalentries", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo502_use_opportunistic_locking, { "Use Opportunistic Locking", "wkssvc.wkssvc_NetWkstaInfo502.use_opportunistic_locking", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_USER_INFO_0_CONTAINER_entries_read, { "Entries Read", "wkssvc.USER_INFO_0_CONTAINER.entries_read", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo102_version_major, { "Version Major", "wkssvc.wkssvc_NetWkstaInfo102.version_major", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo102_platform_id, { "Platform Id", "wkssvc.wkssvc_NetWkstaInfo102.platform_id", FT_NONE, BASE_HEX, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo502_lock_quota, { "Lock Quota", "wkssvc.wkssvc_NetWkstaInfo502.lock_quota", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetrRemoveAlternateComputerName_Account, { "Account", "wkssvc.wkssvc_NetrRemoveAlternateComputerName.Account", FT_STRING, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_WIN9X_UPGRADE, { "Wkssvc Join Flags Win9x Upgrade", "wkssvc.wkssvc_joinflags.WKSSVC_JOIN_FLAGS_WIN9X_UPGRADE", FT_BOOLEAN, 32, TFS(&wkssvc_joinflags_WKSSVC_JOIN_FLAGS_WIN9X_UPGRADE_tfs), ( 0x00000010 ), "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo502_session_timeout, { "Session Timeout", "wkssvc.wkssvc_NetWkstaInfo502.session_timeout", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaTransportInfo0_address, { "Address", "wkssvc.wkssvc_NetWkstaTransportInfo0.address", FT_STRING, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaTransportCtr0_array, { "Array", "wkssvc.wkssvc_NetWkstaTransportCtr0.array", FT_NONE, BASE_NONE, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetrRemoveAlternateComputerName_Reserved, { "Reserved", "wkssvc.wkssvc_NetrRemoveAlternateComputerName.Reserved", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo502_buf_named_pipes, { "Buf Named Pipes", "wkssvc.wkssvc_NetWkstaInfo502.buf_named_pipes", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, { &hf_wkssvc_wkssvc_NetWkstaInfo502_collection_time, { "Collection Time", "wkssvc.wkssvc_NetWkstaInfo502.collection_time", FT_UINT32, BASE_DEC, NULL, 0, "", HFILL }}, }; static gint *ett[] = { &ett_dcerpc_wkssvc, &ett_wkssvc_wkssvc_NetWkstaInfo100, &ett_wkssvc_wkssvc_NetWkstaInfo101, &ett_wkssvc_wkssvc_NetWkstaInfo102, &ett_wkssvc_wkssvc_NetWkstaInfo502, &ett_wkssvc_wkssvc_NetWkstaInfo1010, &ett_wkssvc_wkssvc_NetWkstaInfo1011, &ett_wkssvc_wkssvc_NetWkstaInfo1012, &ett_wkssvc_wkssvc_NetWkstaInfo1013, &ett_wkssvc_wkssvc_NetWkstaInfo1018, &ett_wkssvc_wkssvc_NetWkstaInfo1023, &ett_wkssvc_wkssvc_NetWkstaInfo1027, &ett_wkssvc_wkssvc_NetWkstaInfo1033, &ett_wkssvc_wkssvc_NetWkstaInfo, &ett_wkssvc_USER_INFO_0, &ett_wkssvc_USER_INFO_0_CONTAINER, &ett_wkssvc_USER_INFO_1, &ett_wkssvc_USER_INFO_1_CONTAINER, &ett_wkssvc_WKS_USER_ENUM_UNION, &ett_wkssvc_wkssvc_NetWkstaTransportInfo0, &ett_wkssvc_wkssvc_NetWkstaTransportCtr0, &ett_wkssvc_wkssvc_NetWkstaTransportCtr, &ett_wkssvc_wkssvc_PasswordBuffer, &ett_wkssvc_wkssvc_joinflags, &ett_wkssvc_wkssvc_renameflags, }; proto_dcerpc_wkssvc = proto_register_protocol("Workstation Service", "WKSSVC", "wkssvc"); proto_register_field_array(proto_dcerpc_wkssvc, hf, array_length (hf)); proto_register_subtree_array(ett, array_length(ett)); } void proto_reg_handoff_dcerpc_wkssvc(void) { dcerpc_init_uuid(proto_dcerpc_wkssvc, ett_dcerpc_wkssvc, &uuid_dcerpc_wkssvc, ver_dcerpc_wkssvc, wkssvc_dissectors, hf_wkssvc_opnum); }