static gint ett_drsuapi_drsuapi_DrsMoreOptions = -1;
static gint ett_drsuapi_drsuapi_DrsUpdate = -1;
static gint ett_drsuapi_drsuapi_VAR_SIZE_BUFFER_WITH_VERSION = -1;
+static gint ett_drsuapi_drsuapi_SupportedExtensions = -1;
+static gint ett_drsuapi_drsuapi_SupportedExtensionsExt = -1;
+static gint ett_drsuapi_drsuapi_DsBindInfo24 = -1;
+static gint ett_drsuapi_drsuapi_DsBindInfo28 = -1;
+static gint ett_drsuapi_drsuapi_DsBindInfo32 = -1;
+static gint ett_drsuapi_drsuapi_DsBindInfo48 = -1;
+static gint ett_drsuapi_drsuapi_DsBindInfo52 = -1;
+static gint ett_drsuapi_drsuapi_DsBindInfoFallBack = -1;
+static gint ett_drsuapi_drsuapi_DsBindInfo = -1;
static gint ett_drsuapi_drsuapi_DsBindInfoCtr = -1;
static gint ett_drsuapi_drsuapi_DsReplicaObjectIdentifier = -1;
static gint ett_drsuapi_drsuapi_DsReplicaSyncRequest1 = -1;
static gint ett_drsuapi_drsuapi_QuerySitesByCostCtr = -1;
static gint ett_drsuapi_drsuapi_QuerySitesByCostRequest1 = -1;
static gint ett_drsuapi_drsuapi_QuerySitesByCostRequest = -1;
+static gint ett_drsuapi_drsuapi_InitDemotionRequest1 = -1;
+static gint ett_drsuapi_drsuapi_InitDemotionRequest = -1;
+static gint ett_drsuapi_drsuapi_InitDemotionCtr1 = -1;
+static gint ett_drsuapi_drsuapi_InitDemotionCtr = -1;
+static gint ett_drsuapi_drsuapi_ReplicaDemotionRequest1 = -1;
+static gint ett_drsuapi_drsuapi_ReplicaDemotionRequest = -1;
+static gint ett_drsuapi_drsuapi_ReplicaDemotionCtr1 = -1;
+static gint ett_drsuapi_drsuapi_ReplicaDemotionCtr = -1;
+static gint ett_drsuapi_drsuapi_FinishDemotionRequest1 = -1;
+static gint ett_drsuapi_drsuapi_FinishDemotionRequest = -1;
+static gint ett_drsuapi_drsuapi_FinishDemotionCtr1 = -1;
+static gint ett_drsuapi_drsuapi_FinishDemotionCtr = -1;
+static gint ett_drsuapi_drsuapi_AddCloneDCRequest1 = -1;
+static gint ett_drsuapi_drsuapi_AddCloneDCRequest = -1;
+static gint ett_drsuapi_drsuapi_AddCloneDCCtr1 = -1;
+static gint ett_drsuapi_drsuapi_AddCloneDCCtr = -1;
+static gint ett_drsuapi_drsuapi_WriteNgcKeyRequest1 = -1;
+static gint ett_drsuapi_drsuapi_WriteNgcKeyRequest = -1;
+static gint ett_drsuapi_drsuapi_WriteNgcKeyCtr1 = -1;
+static gint ett_drsuapi_drsuapi_WriteNgcKeyCtr = -1;
+static gint ett_drsuapi_drsuapi_ReadNgcKeyRequest1 = -1;
+static gint ett_drsuapi_drsuapi_ReadNgcKeyRequest = -1;
+static gint ett_drsuapi_drsuapi_ReadNgcKeyCtr1 = -1;
+static gint ett_drsuapi_drsuapi_ReadNgcKeyCtr = -1;
/* Header field declarations */
static gint hf_DsReplicaObjectIdentifier_dn = -1;
static gint hf_drsuapi_String_name = -1;
+static gint hf_drsuapi_drsuapi_AddCloneDCCtr1_clone_dc_name = -1;
+static gint hf_drsuapi_drsuapi_AddCloneDCCtr1_new_dc_account_password = -1;
+static gint hf_drsuapi_drsuapi_AddCloneDCCtr1_password_length = -1;
+static gint hf_drsuapi_drsuapi_AddCloneDCCtr1_site = -1;
+static gint hf_drsuapi_drsuapi_AddCloneDCCtr_ctr1 = -1;
+static gint hf_drsuapi_drsuapi_AddCloneDCRequest1_clone_dc_name = -1;
+static gint hf_drsuapi_drsuapi_AddCloneDCRequest1_site = -1;
+static gint hf_drsuapi_drsuapi_AddCloneDCRequest_req1 = -1;
+static gint hf_drsuapi_drsuapi_AddCloneDC_bind_handle = -1;
+static gint hf_drsuapi_drsuapi_AddCloneDC_ctr = -1;
+static gint hf_drsuapi_drsuapi_AddCloneDC_in_version = -1;
+static gint hf_drsuapi_drsuapi_AddCloneDC_out_version = -1;
+static gint hf_drsuapi_drsuapi_AddCloneDC_req = -1;
static gint hf_drsuapi_drsuapi_DrsMoreOptions_DRSUAPI_DRS_GET_TGT = -1;
static gint hf_drsuapi_drsuapi_DrsOptions_DRSUAPI_DRS_ADD_REF = -1;
static gint hf_drsuapi_drsuapi_DrsOptions_DRSUAPI_DRS_ASYNC_OP = -1;
static gint hf_drsuapi_drsuapi_DsAttributeValueCtr_values = -1;
static gint hf_drsuapi_drsuapi_DsAttributeValue___ndr_size = -1;
static gint hf_drsuapi_drsuapi_DsAttributeValue_blob = -1;
-static gint hf_drsuapi_drsuapi_DsBindInfoCtr_data = -1;
+static gint hf_drsuapi_drsuapi_DsBindInfo24_pid = -1;
+static gint hf_drsuapi_drsuapi_DsBindInfo24_site_guid = -1;
+static gint hf_drsuapi_drsuapi_DsBindInfo24_supported_extensions = -1;
+static gint hf_drsuapi_drsuapi_DsBindInfo28_pid = -1;
+static gint hf_drsuapi_drsuapi_DsBindInfo28_repl_epoch = -1;
+static gint hf_drsuapi_drsuapi_DsBindInfo28_site_guid = -1;
+static gint hf_drsuapi_drsuapi_DsBindInfo28_supported_extensions = -1;
+static gint hf_drsuapi_drsuapi_DsBindInfo32_pid = -1;
+static gint hf_drsuapi_drsuapi_DsBindInfo32_repl_epoch = -1;
+static gint hf_drsuapi_drsuapi_DsBindInfo32_site_guid = -1;
+static gint hf_drsuapi_drsuapi_DsBindInfo32_supported_extensions = -1;
+static gint hf_drsuapi_drsuapi_DsBindInfo32_supported_extensions_ext = -1;
+static gint hf_drsuapi_drsuapi_DsBindInfo48_config_dn_guid = -1;
+static gint hf_drsuapi_drsuapi_DsBindInfo48_pid = -1;
+static gint hf_drsuapi_drsuapi_DsBindInfo48_repl_epoch = -1;
+static gint hf_drsuapi_drsuapi_DsBindInfo48_site_guid = -1;
+static gint hf_drsuapi_drsuapi_DsBindInfo48_supported_extensions = -1;
+static gint hf_drsuapi_drsuapi_DsBindInfo48_supported_extensions_ext = -1;
+static gint hf_drsuapi_drsuapi_DsBindInfo52_config_dn_guid = -1;
+static gint hf_drsuapi_drsuapi_DsBindInfo52_pid = -1;
+static gint hf_drsuapi_drsuapi_DsBindInfo52_repl_epoch = -1;
+static gint hf_drsuapi_drsuapi_DsBindInfo52_site_guid = -1;
+static gint hf_drsuapi_drsuapi_DsBindInfo52_supported_capabilities_ext = -1;
+static gint hf_drsuapi_drsuapi_DsBindInfo52_supported_extensions = -1;
+static gint hf_drsuapi_drsuapi_DsBindInfo52_supported_extensions_ext = -1;
+static gint hf_drsuapi_drsuapi_DsBindInfoCtr___ndr_length = -1;
+static gint hf_drsuapi_drsuapi_DsBindInfoCtr_info = -1;
static gint hf_drsuapi_drsuapi_DsBindInfoCtr_length = -1;
+static gint hf_drsuapi_drsuapi_DsBindInfoFallBack_info = -1;
+static gint hf_drsuapi_drsuapi_DsBindInfo_Fallback = -1;
+static gint hf_drsuapi_drsuapi_DsBindInfo_info24 = -1;
+static gint hf_drsuapi_drsuapi_DsBindInfo_info28 = -1;
+static gint hf_drsuapi_drsuapi_DsBindInfo_info32 = -1;
+static gint hf_drsuapi_drsuapi_DsBindInfo_info48 = -1;
+static gint hf_drsuapi_drsuapi_DsBindInfo_info52 = -1;
static gint hf_drsuapi_drsuapi_DsBind_bind_guid = -1;
static gint hf_drsuapi_drsuapi_DsBind_bind_handle = -1;
static gint hf_drsuapi_drsuapi_DsBind_bind_info = -1;
static gint hf_drsuapi_drsuapi_DsWriteAccountSpn_res = -1;
static gint hf_drsuapi_drsuapi_DsaAddressListItem_V1_address = -1;
static gint hf_drsuapi_drsuapi_DsaAddressListItem_V1_next = -1;
+static gint hf_drsuapi_drsuapi_FinishDemotionCtr1_op_error = -1;
+static gint hf_drsuapi_drsuapi_FinishDemotionCtr1_op_failed = -1;
+static gint hf_drsuapi_drsuapi_FinishDemotionCtr1_operations_done = -1;
+static gint hf_drsuapi_drsuapi_FinishDemotionCtr_ctr1 = -1;
+static gint hf_drsuapi_drsuapi_FinishDemotionRequest1_operations = -1;
+static gint hf_drsuapi_drsuapi_FinishDemotionRequest1_script_base = -1;
+static gint hf_drsuapi_drsuapi_FinishDemotionRequest1_uuid_helper_dest = -1;
+static gint hf_drsuapi_drsuapi_FinishDemotionRequest_req1 = -1;
+static gint hf_drsuapi_drsuapi_FinishDemotion_bind_handle = -1;
+static gint hf_drsuapi_drsuapi_FinishDemotion_ctr = -1;
+static gint hf_drsuapi_drsuapi_FinishDemotion_in_version = -1;
+static gint hf_drsuapi_drsuapi_FinishDemotion_out_version = -1;
+static gint hf_drsuapi_drsuapi_FinishDemotion_req = -1;
+static gint hf_drsuapi_drsuapi_InitDemotionCtr1_op_error = -1;
+static gint hf_drsuapi_drsuapi_InitDemotionCtr_ctr1 = -1;
+static gint hf_drsuapi_drsuapi_InitDemotionRequest1_reserved = -1;
+static gint hf_drsuapi_drsuapi_InitDemotionRequest_req1 = -1;
+static gint hf_drsuapi_drsuapi_InitDemotion_bind_handle = -1;
+static gint hf_drsuapi_drsuapi_InitDemotion_ctr = -1;
+static gint hf_drsuapi_drsuapi_InitDemotion_in_version = -1;
+static gint hf_drsuapi_drsuapi_InitDemotion_out_version = -1;
+static gint hf_drsuapi_drsuapi_InitDemotion_req = -1;
static gint hf_drsuapi_drsuapi_NameResOp_V1_name_res = -1;
static gint hf_drsuapi_drsuapi_NameResOp_V1_next_rdn = -1;
static gint hf_drsuapi_drsuapi_NameResOp_V1_unused_pad = -1;
static gint hf_drsuapi_drsuapi_QuerySitesByCost_level = -1;
static gint hf_drsuapi_drsuapi_QuerySitesByCost_level_out = -1;
static gint hf_drsuapi_drsuapi_QuerySitesByCost_req = -1;
+static gint hf_drsuapi_drsuapi_ReadNgcKeyCtr1_ngc_key = -1;
+static gint hf_drsuapi_drsuapi_ReadNgcKeyCtr1_ngc_key_size = -1;
+static gint hf_drsuapi_drsuapi_ReadNgcKeyCtr1_ret_val = -1;
+static gint hf_drsuapi_drsuapi_ReadNgcKeyCtr_ctr1 = -1;
+static gint hf_drsuapi_drsuapi_ReadNgcKeyRequest1_account = -1;
+static gint hf_drsuapi_drsuapi_ReadNgcKeyRequest_req1 = -1;
+static gint hf_drsuapi_drsuapi_ReadNgcKey_bind_handle = -1;
+static gint hf_drsuapi_drsuapi_ReadNgcKey_ctr = -1;
+static gint hf_drsuapi_drsuapi_ReadNgcKey_in_version = -1;
+static gint hf_drsuapi_drsuapi_ReadNgcKey_out_version = -1;
+static gint hf_drsuapi_drsuapi_ReadNgcKey_req = -1;
+static gint hf_drsuapi_drsuapi_ReplicaDemotionCtr1_op_error = -1;
+static gint hf_drsuapi_drsuapi_ReplicaDemotionCtr_ctr1 = -1;
+static gint hf_drsuapi_drsuapi_ReplicaDemotionRequest1_flags = -1;
+static gint hf_drsuapi_drsuapi_ReplicaDemotionRequest1_naming_context = -1;
+static gint hf_drsuapi_drsuapi_ReplicaDemotionRequest1_uuid_helper_dest = -1;
+static gint hf_drsuapi_drsuapi_ReplicaDemotionRequest_req1 = -1;
+static gint hf_drsuapi_drsuapi_ReplicaDemotion_bind_handle = -1;
+static gint hf_drsuapi_drsuapi_ReplicaDemotion_ctr = -1;
+static gint hf_drsuapi_drsuapi_ReplicaDemotion_in_version = -1;
+static gint hf_drsuapi_drsuapi_ReplicaDemotion_out_version = -1;
+static gint hf_drsuapi_drsuapi_ReplicaDemotion_req = -1;
static gint hf_drsuapi_drsuapi_SecBufferDesc_buff_count = -1;
static gint hf_drsuapi_drsuapi_SecBufferDesc_buffers = -1;
static gint hf_drsuapi_drsuapi_SecBufferDesc_version = -1;
static gint hf_drsuapi_drsuapi_SecBuffer_buf_size = -1;
static gint hf_drsuapi_drsuapi_SecBuffer_buf_type = -1;
static gint hf_drsuapi_drsuapi_SecBuffer_buffer = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensionsExt_DRSUAPI_SUPPORTED_EXTENSION_ADAM = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensionsExt_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V9 = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensionsExt_DRSUAPI_SUPPORTED_EXTENSION_LH_BETA2 = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensionsExt_DRSUAPI_SUPPORTED_EXTENSION_RECYCLE_BIN = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensionsExt_DRSUAPI_SUPPORTED_EXTENSION_RPC_CORRELATIONID_1 = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_ADDENTRY = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_ADDENTRYREPLY_V3 = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_ADDENTRY_V2 = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_ADD_SID_HISTORY = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_ASYNC_REPLICATION = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_BASE = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_CRYPTO_BIND = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_DCINFO_V01 = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_DCINFO_V1 = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_DCINFO_V2 = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V5 = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V6 = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V7 = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V10 = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V5 = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V6 = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V8 = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHG_COMPRESS = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GET_MEMBERSHIPS2 = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GET_REPL_INFO = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_INSTANCE_TYPE_NOT_REQ_ON_MOD = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_KCC_EXECUTE = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_LINKED_VALUE_REPLICATION = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_MOVEREQ_V2 = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_NONDOMAIN_NCS = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_POST_BETA3 = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_REMOVEAPI = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_RESERVED_PART2 = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_RESERVED_PART3 = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_RESTORE_USN_OPTIMIZATION = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_STRONG_ENCRYPTION = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_TRANSITIVE_MEMBERSHIP = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_VERIFY_OBJECT = -1;
+static gint hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_XPRESS_COMPRESS = -1;
static gint hf_drsuapi_drsuapi_VAR_SIZE_BUFFER_WITH_VERSION_buffer = -1;
static gint hf_drsuapi_drsuapi_VAR_SIZE_BUFFER_WITH_VERSION_buffer_size = -1;
static gint hf_drsuapi_drsuapi_VAR_SIZE_BUFFER_WITH_VERSION_padding = -1;
static gint hf_drsuapi_drsuapi_VAR_SIZE_BUFFER_WITH_VERSION_version = -1;
+static gint hf_drsuapi_drsuapi_WriteNgcKeyCtr1_ret_val = -1;
+static gint hf_drsuapi_drsuapi_WriteNgcKeyCtr_ctr1 = -1;
+static gint hf_drsuapi_drsuapi_WriteNgcKeyRequest1_account = -1;
+static gint hf_drsuapi_drsuapi_WriteNgcKeyRequest1_ngc_key = -1;
+static gint hf_drsuapi_drsuapi_WriteNgcKeyRequest1_ngc_key_size = -1;
+static gint hf_drsuapi_drsuapi_WriteNgcKeyRequest_req1 = -1;
+static gint hf_drsuapi_drsuapi_WriteNgcKey_bind_handle = -1;
+static gint hf_drsuapi_drsuapi_WriteNgcKey_ctr = -1;
+static gint hf_drsuapi_drsuapi_WriteNgcKey_in_version = -1;
+static gint hf_drsuapi_drsuapi_WriteNgcKey_out_version = -1;
+static gint hf_drsuapi_drsuapi_WriteNgcKey_req = -1;
static gint hf_drsuapi_lsa_String_length = -1;
static gint hf_drsuapi_lsa_String_size = -1;
static gint hf_drsuapi_lsa_String_string = -1;
static int drsuapi_dissect_element_VAR_SIZE_BUFFER_WITH_VERSION_padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
static int drsuapi_dissect_element_VAR_SIZE_BUFFER_WITH_VERSION_buffer(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
static int drsuapi_dissect_element_VAR_SIZE_BUFFER_WITH_VERSION_buffer_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
-static int drsuapi_dissect_element_DsBindInfoCtr_length(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
-static int drsuapi_dissect_element_DsBindInfoCtr_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
-static int drsuapi_dissect_element_DsBindInfoCtr_data_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static const true_false_string drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_BASE_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_BASE is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_BASE is NOT SET",
+};
+static const true_false_string drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_ASYNC_REPLICATION_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_ASYNC_REPLICATION is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_ASYNC_REPLICATION is NOT SET",
+};
+static const true_false_string drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_REMOVEAPI_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_REMOVEAPI is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_REMOVEAPI is NOT SET",
+};
+static const true_false_string drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_MOVEREQ_V2_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_MOVEREQ_V2 is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_MOVEREQ_V2 is NOT SET",
+};
+static const true_false_string drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHG_COMPRESS_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_GETCHG_COMPRESS is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_GETCHG_COMPRESS is NOT SET",
+};
+static const true_false_string drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_DCINFO_V1_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_DCINFO_V1 is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_DCINFO_V1 is NOT SET",
+};
+static const true_false_string drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_RESTORE_USN_OPTIMIZATION_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_RESTORE_USN_OPTIMIZATION is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_RESTORE_USN_OPTIMIZATION is NOT SET",
+};
+static const true_false_string drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_ADDENTRY_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_ADDENTRY is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_ADDENTRY is NOT SET",
+};
+static const true_false_string drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_KCC_EXECUTE_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_KCC_EXECUTE is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_KCC_EXECUTE is NOT SET",
+};
+static const true_false_string drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_ADDENTRY_V2_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_ADDENTRY_V2 is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_ADDENTRY_V2 is NOT SET",
+};
+static const true_false_string drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_LINKED_VALUE_REPLICATION_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_LINKED_VALUE_REPLICATION is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_LINKED_VALUE_REPLICATION is NOT SET",
+};
+static const true_false_string drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_DCINFO_V2_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_DCINFO_V2 is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_DCINFO_V2 is NOT SET",
+};
+static const true_false_string drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_INSTANCE_TYPE_NOT_REQ_ON_MOD_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_INSTANCE_TYPE_NOT_REQ_ON_MOD is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_INSTANCE_TYPE_NOT_REQ_ON_MOD is NOT SET",
+};
+static const true_false_string drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_CRYPTO_BIND_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_CRYPTO_BIND is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_CRYPTO_BIND is NOT SET",
+};
+static const true_false_string drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GET_REPL_INFO_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_GET_REPL_INFO is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_GET_REPL_INFO is NOT SET",
+};
+static const true_false_string drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_STRONG_ENCRYPTION_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_STRONG_ENCRYPTION is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_STRONG_ENCRYPTION is NOT SET",
+};
+static const true_false_string drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_DCINFO_V01_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_DCINFO_V01 is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_DCINFO_V01 is NOT SET",
+};
+static const true_false_string drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_TRANSITIVE_MEMBERSHIP_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_TRANSITIVE_MEMBERSHIP is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_TRANSITIVE_MEMBERSHIP is NOT SET",
+};
+static const true_false_string drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_ADD_SID_HISTORY_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_ADD_SID_HISTORY is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_ADD_SID_HISTORY is NOT SET",
+};
+static const true_false_string drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_POST_BETA3_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_POST_BETA3 is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_POST_BETA3 is NOT SET",
+};
+static const true_false_string drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V5_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V5 is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V5 is NOT SET",
+};
+static const true_false_string drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GET_MEMBERSHIPS2_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_GET_MEMBERSHIPS2 is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_GET_MEMBERSHIPS2 is NOT SET",
+};
+static const true_false_string drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V6_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V6 is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V6 is NOT SET",
+};
+static const true_false_string drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_NONDOMAIN_NCS_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_NONDOMAIN_NCS is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_NONDOMAIN_NCS is NOT SET",
+};
+static const true_false_string drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V8_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V8 is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V8 is NOT SET",
+};
+static const true_false_string drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V5_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V5 is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V5 is NOT SET",
+};
+static const true_false_string drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V6_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V6 is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V6 is NOT SET",
+};
+static const true_false_string drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_ADDENTRYREPLY_V3_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_ADDENTRYREPLY_V3 is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_ADDENTRYREPLY_V3 is NOT SET",
+};
+static const true_false_string drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V7_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V7 is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V7 is NOT SET",
+};
+static const true_false_string drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_VERIFY_OBJECT_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_VERIFY_OBJECT is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_VERIFY_OBJECT is NOT SET",
+};
+static const true_false_string drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_XPRESS_COMPRESS_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_XPRESS_COMPRESS is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_XPRESS_COMPRESS is NOT SET",
+};
+static const true_false_string drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V10_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V10 is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V10 is NOT SET",
+};
+static const true_false_string drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_RESERVED_PART2_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_RESERVED_PART2 is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_RESERVED_PART2 is NOT SET",
+};
+static const true_false_string drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_RESERVED_PART3_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_RESERVED_PART3 is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_RESERVED_PART3 is NOT SET",
+};
+static const true_false_string drsuapi_SupportedExtensionsExt_DRSUAPI_SUPPORTED_EXTENSION_ADAM_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_ADAM is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_ADAM is NOT SET",
+};
+static const true_false_string drsuapi_SupportedExtensionsExt_DRSUAPI_SUPPORTED_EXTENSION_LH_BETA2_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_LH_BETA2 is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_LH_BETA2 is NOT SET",
+};
+static const true_false_string drsuapi_SupportedExtensionsExt_DRSUAPI_SUPPORTED_EXTENSION_RECYCLE_BIN_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_RECYCLE_BIN is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_RECYCLE_BIN is NOT SET",
+};
+static const true_false_string drsuapi_SupportedExtensionsExt_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V9_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V9 is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V9 is NOT SET",
+};
+static const true_false_string drsuapi_SupportedExtensionsExt_DRSUAPI_SUPPORTED_EXTENSION_RPC_CORRELATIONID_1_tfs = {
+ "DRSUAPI_SUPPORTED_EXTENSION_RPC_CORRELATIONID_1 is SET",
+ "DRSUAPI_SUPPORTED_EXTENSION_RPC_CORRELATIONID_1 is NOT SET",
+};
+static int drsuapi_dissect_element_DsBindInfo24_supported_extensions(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_DsBindInfo24_site_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_DsBindInfo24_pid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_DsBindInfo28_supported_extensions(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_DsBindInfo28_site_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_DsBindInfo28_pid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_DsBindInfo28_repl_epoch(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_DsBindInfo32_supported_extensions(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_DsBindInfo32_site_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_DsBindInfo32_pid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_DsBindInfo32_repl_epoch(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_DsBindInfo32_supported_extensions_ext(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_DsBindInfo48_supported_extensions(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_DsBindInfo48_site_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_DsBindInfo48_pid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_DsBindInfo48_repl_epoch(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_DsBindInfo48_supported_extensions_ext(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_DsBindInfo48_config_dn_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_DsBindInfo52_supported_extensions(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_DsBindInfo52_site_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_DsBindInfo52_pid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_DsBindInfo52_repl_epoch(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_DsBindInfo52_supported_extensions_ext(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_DsBindInfo52_config_dn_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_DsBindInfo52_supported_capabilities_ext(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_DsBindInfoFallBack_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_DsBindInfoCtr___ndr_length(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_DsBindInfoCtr_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, guint3264 *length);
static int drsuapi_dissect_element_DsReplicaObjectIdentifier___ndr_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
static int drsuapi_dissect_element_DsReplicaObjectIdentifier___ndr_size_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
static int drsuapi_dissect_element_DsReplicaObjectIdentifier_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
static int drsuapi_dissect_element_QuerySitesByCostRequest1_site_to___(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
static int drsuapi_dissect_element_QuerySitesByCostRequest1_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
static int drsuapi_dissect_element_QuerySitesByCostRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_InitDemotionRequest1_reserved(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_InitDemotionRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_InitDemotionCtr1_op_error(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_InitDemotionCtr_ctr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_ReplicaDemotionRequest1_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_ReplicaDemotionRequest1_uuid_helper_dest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_ReplicaDemotionRequest1_naming_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_ReplicaDemotionRequest1_naming_context_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_ReplicaDemotionRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_ReplicaDemotionCtr1_op_error(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_ReplicaDemotionCtr_ctr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_FinishDemotionRequest1_operations(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_FinishDemotionRequest1_uuid_helper_dest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_FinishDemotionRequest1_script_base(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_FinishDemotionRequest1_script_base_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_FinishDemotionRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_FinishDemotionCtr1_operations_done(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_FinishDemotionCtr1_op_failed(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_FinishDemotionCtr1_op_error(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_FinishDemotionCtr_ctr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_AddCloneDCRequest1_clone_dc_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_AddCloneDCRequest1_clone_dc_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_AddCloneDCRequest1_site(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_AddCloneDCRequest1_site_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_AddCloneDCRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_AddCloneDCCtr1_clone_dc_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_AddCloneDCCtr1_clone_dc_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_AddCloneDCCtr1_site(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_AddCloneDCCtr1_site_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_AddCloneDCCtr1_password_length(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_AddCloneDCCtr1_new_dc_account_password(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_AddCloneDCCtr1_new_dc_account_password_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_AddCloneDCCtr1_new_dc_account_password__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_AddCloneDCCtr_ctr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_WriteNgcKeyRequest1_account(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_WriteNgcKeyRequest1_account_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_WriteNgcKeyRequest1_ngc_key_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_WriteNgcKeyRequest1_ngc_key(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_WriteNgcKeyRequest1_ngc_key_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_WriteNgcKeyRequest1_ngc_key__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_WriteNgcKeyRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_WriteNgcKeyCtr1_ret_val(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_WriteNgcKeyCtr_ctr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_ReadNgcKeyRequest1_account(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_ReadNgcKeyRequest1_account_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_ReadNgcKeyRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_ReadNgcKeyCtr1_ret_val(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_ReadNgcKeyCtr1_ngc_key_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_ReadNgcKeyCtr1_ngc_key(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_ReadNgcKeyCtr1_ngc_key_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_ReadNgcKeyCtr1_ngc_key__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_ReadNgcKeyCtr_ctr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
static int drsuapi_dissect_element_DsBind_bind_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
static int drsuapi_dissect_element_DsBind_bind_guid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
static int drsuapi_dissect_element_DsBind_bind_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
static int drsuapi_dissect_element_QuerySitesByCost_level_out_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
static int drsuapi_dissect_element_QuerySitesByCost_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
static int drsuapi_dissect_element_QuerySitesByCost_ctr_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_InitDemotion_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_InitDemotion_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_InitDemotion_in_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_InitDemotion_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_InitDemotion_req_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_InitDemotion_out_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_InitDemotion_out_version_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_InitDemotion_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_InitDemotion_ctr_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_ReplicaDemotion_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_ReplicaDemotion_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_ReplicaDemotion_in_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_ReplicaDemotion_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_ReplicaDemotion_req_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_ReplicaDemotion_out_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_ReplicaDemotion_out_version_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_ReplicaDemotion_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_ReplicaDemotion_ctr_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_FinishDemotion_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_FinishDemotion_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_FinishDemotion_in_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_FinishDemotion_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_FinishDemotion_req_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_FinishDemotion_out_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_FinishDemotion_out_version_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_FinishDemotion_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_FinishDemotion_ctr_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_AddCloneDC_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_AddCloneDC_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_AddCloneDC_in_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_AddCloneDC_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_AddCloneDC_req_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_AddCloneDC_out_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_AddCloneDC_out_version_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_AddCloneDC_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_AddCloneDC_ctr_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_WriteNgcKey_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_WriteNgcKey_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_WriteNgcKey_in_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_WriteNgcKey_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_WriteNgcKey_req_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_WriteNgcKey_out_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_WriteNgcKey_out_version_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_WriteNgcKey_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_WriteNgcKey_ctr_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_ReadNgcKey_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_ReadNgcKey_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_ReadNgcKey_in_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_ReadNgcKey_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_ReadNgcKey_req_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_ReadNgcKey_out_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_ReadNgcKey_out_version_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_ReadNgcKey_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
+static int drsuapi_dissect_element_ReadNgcKey_ctr_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_);
#include <wsutil/wsgcrypt.h>
#include <epan/expert.h>
#include <epan/strutil.h>
proto_item_append_text(tree, ": %s", data);
return offset;
}
+/* IDL: struct { */
+/* IDL: [range(1,10000)] uint32 length; */
+/* IDL: [size_is(length)] uint8 data[*]; */
+/* IDL: } */
+static int
+drsuapi_dissect_element_DsBindInfoCtr_length_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsBindInfoCtr_length, 0);
+ return offset;
+}
+static int
+drsuapi_dissect_DsBindInfo(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_);
+static int
+drsuapi_dissect_element_DsBindInfoCtr_data_(tvbuff_t *tvb, int offset, int length, packet_info *pinfo, proto_tree *tree, dcerpc_info *di, guint8 *drep)
+{
+ offset = drsuapi_dissect_DsBindInfo(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsBindInfoCtr_info, length);
+ return offset;
+}
+static int
+drsuapi_dissect_element_DsBindInfoCtr_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_ucarray_block(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsBindInfoCtr_data_);
+ return offset;
+}
+int
+drsuapi_dissect_struct_DsBindInfoCtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, 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, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsBindInfoCtr);
+ }
+ offset = drsuapi_dissect_element_DsBindInfoCtr_length_(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsBindInfoCtr_data(tvb, offset, pinfo, tree, di, drep);
+ proto_item_set_len(item, offset-old_offset);
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_4_BYTES;
+ }
+ return offset;
+}
+static int
+drsuapi_dissect_DsBindInfo(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+{
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+ guint32 length = param;
+ old_offset = offset;
+ if (parent_tree) {
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsBindInfo, &item, "drsuapi_DsBindInfo");
+ }
+ if (length >= 52) {
+ drsuapi_dissect_struct_DsBindInfo52(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsBindInfo_info52,0);
+ } else if (length >= 48) {
+ drsuapi_dissect_struct_DsBindInfo48(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsBindInfo_info48,0);
+ } else if (length >= 32) {
+ drsuapi_dissect_struct_DsBindInfo32(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsBindInfo_info32,0);
+ } else if (length >= 28) {
+ drsuapi_dissect_struct_DsBindInfo28(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsBindInfo_info28,0);
+ } else if (length >= 24) {
+ drsuapi_dissect_struct_DsBindInfo24(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsBindInfo_info24,0);
+ }
+ offset += length;
+ proto_item_set_len(item, offset-old_offset);
+ return offset;
+}
/* IDL: struct { */
}
+/* IDL: bitmap { */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_BASE = 0x00000001 , */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_ASYNC_REPLICATION = 0x00000002 , */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_REMOVEAPI = 0x00000004 , */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_MOVEREQ_V2 = 0x00000008 , */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_GETCHG_COMPRESS = 0x00000010 , */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_DCINFO_V1 = 0x00000020 , */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_RESTORE_USN_OPTIMIZATION = 0x00000040 , */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_ADDENTRY = 0x00000080 , */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_KCC_EXECUTE = 0x00000100 , */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_ADDENTRY_V2 = 0x00000200 , */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_LINKED_VALUE_REPLICATION = 0x00000400 , */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_DCINFO_V2 = 0x00000800 , */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_INSTANCE_TYPE_NOT_REQ_ON_MOD = 0x00001000 , */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_CRYPTO_BIND = 0x00002000 , */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_GET_REPL_INFO = 0x00004000 , */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_STRONG_ENCRYPTION = 0x00008000 , */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_DCINFO_V01 = 0x00010000 , */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_TRANSITIVE_MEMBERSHIP = 0x00020000 , */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_ADD_SID_HISTORY = 0x00040000 , */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_POST_BETA3 = 0x00080000 , */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V5 = 0x00100000 , */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_GET_MEMBERSHIPS2 = 0x00200000 , */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V6 = 0x00400000 , */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_NONDOMAIN_NCS = 0x00800000 , */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V8 = 0x01000000 , */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V5 = 0x02000000 , */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V6 = 0x04000000 , */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_ADDENTRYREPLY_V3 = 0x08000000 , */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V7 = 0x08000000 , */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_VERIFY_OBJECT = 0x08000000 , */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_XPRESS_COMPRESS = 0x10000000 , */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V10 = 0x20000000 , */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_RESERVED_PART2 = 0x40000000 , */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_RESERVED_PART3 = 0x80000000 , */
+/* IDL: } */
+
+int
+drsuapi_dissect_bitmap_SupportedExtensions(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+{
+ proto_item *item;
+ static int * const drsuapi_drsuapi_SupportedExtensions_fields[] = {
+ &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_BASE,
+ &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_ASYNC_REPLICATION,
+ &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_REMOVEAPI,
+ &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_MOVEREQ_V2,
+ &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHG_COMPRESS,
+ &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_DCINFO_V1,
+ &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_RESTORE_USN_OPTIMIZATION,
+ &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_ADDENTRY,
+ &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_KCC_EXECUTE,
+ &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_ADDENTRY_V2,
+ &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_LINKED_VALUE_REPLICATION,
+ &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_DCINFO_V2,
+ &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_INSTANCE_TYPE_NOT_REQ_ON_MOD,
+ &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_CRYPTO_BIND,
+ &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GET_REPL_INFO,
+ &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_STRONG_ENCRYPTION,
+ &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_DCINFO_V01,
+ &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_TRANSITIVE_MEMBERSHIP,
+ &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_ADD_SID_HISTORY,
+ &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_POST_BETA3,
+ &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V5,
+ &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GET_MEMBERSHIPS2,
+ &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V6,
+ &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_NONDOMAIN_NCS,
+ &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V8,
+ &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V5,
+ &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V6,
+ &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_ADDENTRYREPLY_V3,
+ &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V7,
+ &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_VERIFY_OBJECT,
+ &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_XPRESS_COMPRESS,
+ &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V10,
+ &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_RESERVED_PART2,
+ &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_RESERVED_PART3,
+ NULL
+ };
+ guint32 flags;
+ ALIGN_TO_4_BYTES;
+
+ item = proto_tree_add_bitmask_with_flags(parent_tree, tvb, offset, hf_index,
+ ett_drsuapi_drsuapi_SupportedExtensions, drsuapi_drsuapi_SupportedExtensions_fields, DREP_ENC_INTEGER(drep), BMT_NO_FALSE);
+
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, parent_tree, di, drep, -1, &flags);
+
+ if (!flags)
+ proto_item_append_text(item, ": (No values set)");
+
+ if (flags & (~0x10fffffff)) {
+ flags &= (~0x10fffffff);
+ proto_item_append_text(item, "Unknown bitmap value 0x%x", flags);
+ }
+
+ return offset;
+}
+
+
+/* IDL: bitmap { */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_ADAM = 0x00000001 , */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_LH_BETA2 = 0x00000002 , */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_RECYCLE_BIN = 0x00000004 , */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V9 = 0x00000100 , */
+/* IDL: DRSUAPI_SUPPORTED_EXTENSION_RPC_CORRELATIONID_1 = 0x00000400 , */
+/* IDL: } */
+
+int
+drsuapi_dissect_bitmap_SupportedExtensionsExt(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+{
+ proto_item *item;
+ static int * const drsuapi_drsuapi_SupportedExtensionsExt_fields[] = {
+ &hf_drsuapi_drsuapi_SupportedExtensionsExt_DRSUAPI_SUPPORTED_EXTENSION_ADAM,
+ &hf_drsuapi_drsuapi_SupportedExtensionsExt_DRSUAPI_SUPPORTED_EXTENSION_LH_BETA2,
+ &hf_drsuapi_drsuapi_SupportedExtensionsExt_DRSUAPI_SUPPORTED_EXTENSION_RECYCLE_BIN,
+ &hf_drsuapi_drsuapi_SupportedExtensionsExt_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V9,
+ &hf_drsuapi_drsuapi_SupportedExtensionsExt_DRSUAPI_SUPPORTED_EXTENSION_RPC_CORRELATIONID_1,
+ NULL
+ };
+ guint32 flags;
+ ALIGN_TO_4_BYTES;
+
+ item = proto_tree_add_bitmask_with_flags(parent_tree, tvb, offset, hf_index,
+ ett_drsuapi_drsuapi_SupportedExtensionsExt, drsuapi_drsuapi_SupportedExtensionsExt_fields, DREP_ENC_INTEGER(drep), BMT_NO_FALSE);
+
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, parent_tree, di, drep, -1, &flags);
+
+ if (!flags)
+ proto_item_append_text(item, ": (No values set)");
+
+ if (flags & (~0x00000507)) {
+ flags &= (~0x00000507);
+ proto_item_append_text(item, "Unknown bitmap value 0x%x", flags);
+ }
+
+ return offset;
+}
+
+
/* IDL: struct { */
-/* IDL: [range(1,10000)] uint32 length; */
-/* IDL: [size_is(length)] uint8 data[*]; */
+/* IDL: drsuapi_SupportedExtensions supported_extensions; */
+/* IDL: GUID site_guid; */
+/* IDL: uint32 pid; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsBindInfoCtr_length(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsBindInfo24_supported_extensions(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsBindInfoCtr_length, 0);
+ offset = drsuapi_dissect_bitmap_SupportedExtensions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsBindInfo24_supported_extensions, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsBindInfoCtr_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsBindInfo24_site_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsBindInfoCtr_data_);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsBindInfo24_site_guid, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsBindInfoCtr_data_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsBindInfo24_pid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsBindInfoCtr_data, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsBindInfo24_pid, 0);
return offset;
}
int
-drsuapi_dissect_struct_DsBindInfoCtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsBindInfo24(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsBindInfoCtr);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsBindInfo24);
}
- offset = drsuapi_dissect_element_DsBindInfoCtr_length(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsBindInfo24_supported_extensions(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsBindInfoCtr_data(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsBindInfo24_site_guid(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsBindInfo24_pid(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
/* IDL: struct { */
-/* IDL: [value(ndr_struct_size_drsuapi_DsReplicaObjectIdentifier(r,ndr->flags))] uint32 __ndr_size; */
-/* IDL: [value(ndr_size_dom_sid28(&sid,ndr->flags))] uint32 __ndr_size_sid; */
-/* IDL: GUID guid; */
-/* IDL: dom_sid28 sid; */
-/* IDL: [value(strlen_m(dn))] uint32 __ndr_size_dn; */
-/* IDL: [charset(UTF16)] [size_is(__ndr_size_dn+1)] uint16 dn[*]; */
+/* IDL: drsuapi_SupportedExtensions supported_extensions; */
+/* IDL: GUID site_guid; */
+/* IDL: uint32 pid; */
+/* IDL: uint32 repl_epoch; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaObjectIdentifier___ndr_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsBindInfo28_supported_extensions(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjectIdentifier___ndr_size, 0);
+ offset = drsuapi_dissect_bitmap_SupportedExtensions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsBindInfo28_supported_extensions, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObjectIdentifier___ndr_size_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsBindInfo28_site_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjectIdentifier___ndr_size_sid, 0);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsBindInfo28_site_guid, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObjectIdentifier_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsBindInfo28_pid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjectIdentifier_guid, NULL);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsBindInfo28_pid, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObjectIdentifier___ndr_size_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsBindInfo28_repl_epoch(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjectIdentifier___ndr_size_dn, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsBindInfo28_repl_epoch, 0);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsBindInfo28(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaObjectIdentifier);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsBindInfo28);
}
- offset = drsuapi_dissect_element_DsReplicaObjectIdentifier___ndr_size(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaObjectIdentifier___ndr_size_sid(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaObjectIdentifier_guid(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsBindInfo28_supported_extensions(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaObjectIdentifier_sid(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsBindInfo28_site_guid(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaObjectIdentifier___ndr_size_dn(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsBindInfo28_pid(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaObjectIdentifier_dn(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsBindInfo28_repl_epoch(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
/* IDL: struct { */
-/* IDL: [ref] drsuapi_DsReplicaObjectIdentifier *naming_context; */
-/* IDL: GUID source_dsa_guid; */
-/* IDL: [charset(DOS)] [unique(1)] uint8 *source_dsa_dns; */
-/* IDL: drsuapi_DrsOptions options; */
+/* IDL: drsuapi_SupportedExtensions supported_extensions; */
+/* IDL: GUID site_guid; */
+/* IDL: uint32 pid; */
+/* IDL: uint32 repl_epoch; */
+/* IDL: drsuapi_SupportedExtensionsExt supported_extensions_ext; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaSyncRequest1_naming_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaSyncRequest1_naming_context_, NDR_POINTER_REF, "Pointer to Naming Context (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsReplicaSyncRequest1_naming_context);
-
- return offset;
-}
-
-static int
-drsuapi_dissect_element_DsReplicaSyncRequest1_naming_context_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsBindInfo32_supported_extensions(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaSyncRequest1_naming_context,0);
+ offset = drsuapi_dissect_bitmap_SupportedExtensions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsBindInfo32_supported_extensions, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaSyncRequest1_source_dsa_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsBindInfo32_site_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaSyncRequest1_source_dsa_guid, NULL);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsBindInfo32_site_guid, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaSyncRequest1_source_dsa_dns(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsBindInfo32_pid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaSyncRequest1_source_dsa_dns_, NDR_POINTER_UNIQUE, "Pointer to Source Dsa Dns (uint8)",hf_drsuapi_drsuapi_DsReplicaSyncRequest1_source_dsa_dns);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsBindInfo32_pid, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaSyncRequest1_source_dsa_dns_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsBindInfo32_repl_epoch(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- char *data;
-
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint8), hf_drsuapi_drsuapi_DsReplicaSyncRequest1_source_dsa_dns, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsBindInfo32_repl_epoch, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaSyncRequest1_options(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsBindInfo32_supported_extensions_ext(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_bitmap_DrsOptions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaSyncRequest1_options, 0);
+ offset = drsuapi_dissect_bitmap_SupportedExtensionsExt(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsBindInfo32_supported_extensions_ext, 0);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaSyncRequest1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsBindInfo32(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_5_BYTES;
+ ALIGN_TO_4_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaSyncRequest1);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsBindInfo32);
}
- offset = drsuapi_dissect_element_DsReplicaSyncRequest1_naming_context(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsBindInfo32_supported_extensions(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaSyncRequest1_source_dsa_guid(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsBindInfo32_site_guid(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaSyncRequest1_source_dsa_dns(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsBindInfo32_pid(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaSyncRequest1_options(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsBindInfo32_repl_epoch(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsBindInfo32_supported_extensions_ext(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_5_BYTES;
+ ALIGN_TO_4_BYTES;
}
return offset;
/* IDL: struct { */
-/* IDL: [ref] drsuapi_DsReplicaObjectIdentifier *naming_context; */
-/* IDL: GUID source_dsa_guid; */
-/* IDL: [charset(DOS)] [unique(1)] uint8 *source_dsa_dns; */
-/* IDL: drsuapi_DrsOptions options; */
-/* IDL: GUID correlationID; */
-/* IDL: [unique(1)] [value(NULL)] drsuapi_VAR_SIZE_BUFFER_WITH_VERSION *reserved_buffer; */
+/* IDL: drsuapi_SupportedExtensions supported_extensions; */
+/* IDL: GUID site_guid; */
+/* IDL: uint32 pid; */
+/* IDL: uint32 repl_epoch; */
+/* IDL: drsuapi_SupportedExtensionsExt supported_extensions_ext; */
+/* IDL: GUID config_dn_guid; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaSyncRequest2_naming_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsBindInfo48_supported_extensions(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaSyncRequest2_naming_context_, NDR_POINTER_REF, "Pointer to Naming Context (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsReplicaSyncRequest2_naming_context);
+ offset = drsuapi_dissect_bitmap_SupportedExtensions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsBindInfo48_supported_extensions, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaSyncRequest2_naming_context_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsBindInfo48_site_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaSyncRequest2_naming_context,0);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsBindInfo48_site_guid, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaSyncRequest2_source_dsa_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsBindInfo48_pid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaSyncRequest2_source_dsa_guid, NULL);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsBindInfo48_pid, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaSyncRequest2_source_dsa_dns(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsBindInfo48_repl_epoch(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaSyncRequest2_source_dsa_dns_, NDR_POINTER_UNIQUE, "Pointer to Source Dsa Dns (uint8)",hf_drsuapi_drsuapi_DsReplicaSyncRequest2_source_dsa_dns);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsBindInfo48_repl_epoch, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaSyncRequest2_source_dsa_dns_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsBindInfo48_supported_extensions_ext(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- char *data;
-
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint8), hf_drsuapi_drsuapi_DsReplicaSyncRequest2_source_dsa_dns, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ offset = drsuapi_dissect_bitmap_SupportedExtensionsExt(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsBindInfo48_supported_extensions_ext, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaSyncRequest2_options(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsBindInfo48_config_dn_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_bitmap_DrsOptions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaSyncRequest2_options, 0);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsBindInfo48_config_dn_guid, NULL);
return offset;
}
-static int
-drsuapi_dissect_element_DsReplicaSyncRequest2_correlationID(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+int
+drsuapi_dissect_struct_DsBindInfo48(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaSyncRequest2_correlationID, NULL);
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
- return offset;
-}
+ ALIGN_TO_4_BYTES;
-static int
-drsuapi_dissect_element_DsReplicaSyncRequest2_reserved_buffer(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaSyncRequest2_reserved_buffer_, NDR_POINTER_UNIQUE, "Pointer to Reserved Buffer (drsuapi_VAR_SIZE_BUFFER_WITH_VERSION)",hf_drsuapi_drsuapi_DsReplicaSyncRequest2_reserved_buffer);
+ old_offset = offset;
- return offset;
-}
+ if (parent_tree) {
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsBindInfo48);
+ }
-static int
-drsuapi_dissect_element_DsReplicaSyncRequest2_reserved_buffer_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = drsuapi_dissect_struct_VAR_SIZE_BUFFER_WITH_VERSION(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaSyncRequest2_reserved_buffer,0);
+ offset = drsuapi_dissect_element_DsBindInfo48_supported_extensions(tvb, offset, pinfo, tree, di, drep);
- return offset;
-}
+ offset = drsuapi_dissect_element_DsBindInfo48_site_guid(tvb, offset, pinfo, tree, di, drep);
-int
-drsuapi_dissect_struct_DsReplicaSyncRequest2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
-{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
-
- ALIGN_TO_5_BYTES;
-
- old_offset = offset;
-
- if (parent_tree) {
- item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaSyncRequest2);
- }
-
- offset = drsuapi_dissect_element_DsReplicaSyncRequest2_naming_context(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaSyncRequest2_source_dsa_guid(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaSyncRequest2_source_dsa_dns(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsBindInfo48_pid(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaSyncRequest2_options(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsBindInfo48_repl_epoch(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaSyncRequest2_correlationID(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsBindInfo48_supported_extensions_ext(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaSyncRequest2_reserved_buffer(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsBindInfo48_config_dn_guid(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_5_BYTES;
+ ALIGN_TO_4_BYTES;
}
return offset;
}
-/* IDL: [switch_type(uint32)] union { */
-/* IDL: [case(1)] [case(1)] drsuapi_DsReplicaSyncRequest1 req1; */
-/* IDL: [case(2)] [case(2)] drsuapi_DsReplicaSyncRequest2 req2; */
+/* IDL: struct { */
+/* IDL: drsuapi_SupportedExtensions supported_extensions; */
+/* IDL: GUID site_guid; */
+/* IDL: uint32 pid; */
+/* IDL: uint32 repl_epoch; */
+/* IDL: drsuapi_SupportedExtensionsExt supported_extensions_ext; */
+/* IDL: GUID config_dn_guid; */
+/* IDL: drsuapi_SupportedExtensionsExt supported_capabilities_ext; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaSyncRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsBindInfo52_supported_extensions(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaSyncRequest1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaSyncRequest_req1,0);
+ offset = drsuapi_dissect_bitmap_SupportedExtensions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsBindInfo52_supported_extensions, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaSyncRequest_req2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsBindInfo52_site_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaSyncRequest2(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaSyncRequest_req2,0);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsBindInfo52_site_guid, NULL);
return offset;
}
static int
-drsuapi_dissect_DsReplicaSyncRequest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_element_DsBindInfo52_pid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
- guint32 level;
-
- old_offset = offset;
- if (parent_tree) {
- tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsReplicaSyncRequest, &item, "drsuapi_DsReplicaSyncRequest");
- }
-
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
- ALIGN_TO_5_BYTES;
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsBindInfo52_pid, 0);
- switch(level) {
- case 1:
- offset = drsuapi_dissect_element_DsReplicaSyncRequest_req1(tvb, offset, pinfo, tree, di, drep);
- break;
-
- case 2:
- offset = drsuapi_dissect_element_DsReplicaSyncRequest_req2(tvb, offset, pinfo, tree, di, drep);
- break;
- }
- proto_item_set_len(item, offset-old_offset);
+ return offset;
+}
+static int
+drsuapi_dissect_element_DsBindInfo52_repl_epoch(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsBindInfo52_repl_epoch, 0);
return offset;
}
-/* IDL: struct { */
-/* IDL: hyper tmp_highest_usn; */
-/* IDL: hyper reserved_usn; */
-/* IDL: hyper highest_usn; */
-/* IDL: } */
-
static int
-drsuapi_dissect_element_DsReplicaHighWaterMark_tmp_highest_usn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsBindInfo52_supported_extensions_ext(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaHighWaterMark_tmp_highest_usn, NULL);
+ offset = drsuapi_dissect_bitmap_SupportedExtensionsExt(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsBindInfo52_supported_extensions_ext, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaHighWaterMark_reserved_usn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsBindInfo52_config_dn_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaHighWaterMark_reserved_usn, NULL);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsBindInfo52_config_dn_guid, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaHighWaterMark_highest_usn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsBindInfo52_supported_capabilities_ext(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaHighWaterMark_highest_usn, NULL);
+ offset = drsuapi_dissect_bitmap_SupportedExtensionsExt(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsBindInfo52_supported_capabilities_ext, 0);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaHighWaterMark(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsBindInfo52(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_4_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaHighWaterMark);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsBindInfo52);
}
- offset = drsuapi_dissect_element_DsReplicaHighWaterMark_tmp_highest_usn(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsBindInfo52_supported_extensions(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaHighWaterMark_reserved_usn(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsBindInfo52_site_guid(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaHighWaterMark_highest_usn(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsBindInfo52_pid(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsBindInfo52_repl_epoch(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsBindInfo52_supported_extensions_ext(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsBindInfo52_config_dn_guid(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsBindInfo52_supported_capabilities_ext(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_4_BYTES;
}
return offset;
/* IDL: struct { */
-/* IDL: GUID source_dsa_invocation_id; */
-/* IDL: hyper highest_usn; */
+/* IDL: [flag(LIBNDR_FLAG_REMAINING)] DATA_BLOB info; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaCursor_source_dsa_invocation_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursor_source_dsa_invocation_id, NULL);
-
- return offset;
-}
-
-static int
-drsuapi_dissect_element_DsReplicaCursor_highest_usn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsBindInfoFallBack_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursor_highest_usn, NULL);
+ offset = dissect_ndr_datablob(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsBindInfoFallBack_info, 1);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaCursor(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsBindInfoFallBack(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_4_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaCursor);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsBindInfoFallBack);
}
- offset = drsuapi_dissect_element_DsReplicaCursor_source_dsa_invocation_id(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaCursor_highest_usn(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsBindInfoFallBack_info(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_4_BYTES;
}
return offset;
}
+/* IDL: [nodiscriminant(1)] [noprint(1)] [nopull(1)] [nopush(1)] union { */
+/* IDL: [case(24)] [case(24)] [subcontext(0)] [subcontext_size(24)] drsuapi_DsBindInfo24 info24; */
+/* IDL: [case(28)] [case(28)] [subcontext(0)] [subcontext_size(28)] drsuapi_DsBindInfo28 info28; */
+/* IDL: [case(32)] [case(32)] [subcontext(0)] [subcontext_size(32)] drsuapi_DsBindInfo32 info32; */
+/* IDL: [case(48)] [case(48)] [subcontext(0)] [subcontext_size(48)] drsuapi_DsBindInfo48 info48; */
+/* IDL: [case(52)] [case(52)] [subcontext(0)] [subcontext_size(52)] drsuapi_DsBindInfo52 info52; */
+/* IDL: [default] ; */
+/* IDL: } */
+
+
/* IDL: struct { */
-/* IDL: [value(1)] uint32 version; */
-/* IDL: [value(0)] uint32 reserved1; */
-/* IDL: [range(0,0x100000)] uint32 count; */
-/* IDL: [value(0)] uint32 reserved2; */
-/* IDL: [size_is(count)] drsuapi_DsReplicaCursor cursors[*]; */
+/* IDL: [range(1,10000)] uint3264 length; */
+/* IDL: [value(length)] uint32 __ndr_length; */
+/* IDL: [switch_is(length)] drsuapi_DsBindInfo info; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaCursorCtrEx_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsBindInfoCtr___ndr_length(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursorCtrEx_version, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsBindInfoCtr___ndr_length, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaCursorCtrEx_reserved1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsBindInfoCtr_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, guint3264 *length)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursorCtrEx_reserved1, 0);
+ offset = drsuapi_dissect_DsBindInfo(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsBindInfoCtr_info, *length);
return offset;
}
+
+/* IDL: struct { */
+/* IDL: [value(ndr_struct_size_drsuapi_DsReplicaObjectIdentifier(r,ndr->flags))] uint32 __ndr_size; */
+/* IDL: [value(ndr_size_dom_sid28(&sid,ndr->flags))] uint32 __ndr_size_sid; */
+/* IDL: GUID guid; */
+/* IDL: dom_sid28 sid; */
+/* IDL: [value(strlen_m(dn))] uint32 __ndr_size_dn; */
+/* IDL: [charset(UTF16)] [size_is(__ndr_size_dn+1)] uint16 dn[*]; */
+/* IDL: } */
+
static int
-drsuapi_dissect_element_DsReplicaCursorCtrEx_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaObjectIdentifier___ndr_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursorCtrEx_count, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjectIdentifier___ndr_size, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaCursorCtrEx_reserved2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaObjectIdentifier___ndr_size_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursorCtrEx_reserved2, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjectIdentifier___ndr_size_sid, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaCursorCtrEx_cursors(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaObjectIdentifier_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaCursorCtrEx_cursors_);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjectIdentifier_guid, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaCursorCtrEx_cursors_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaObjectIdentifier___ndr_size_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaCursor(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaCursorCtrEx_cursors,0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjectIdentifier___ndr_size_dn, 0);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaCursorCtrEx(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_4_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaCursorCtrEx);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaObjectIdentifier);
}
- offset = drsuapi_dissect_element_DsReplicaCursorCtrEx_version(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaObjectIdentifier___ndr_size(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaCursorCtrEx_reserved1(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaObjectIdentifier___ndr_size_sid(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaCursorCtrEx_count(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaObjectIdentifier_guid(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaCursorCtrEx_reserved2(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaObjectIdentifier_sid(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaCursorCtrEx_cursors(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaObjectIdentifier___ndr_size_dn(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaObjectIdentifier_dn(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_8_BYTES;
- }
-
- return offset;
-}
-
-
-/* IDL: enum { */
-/* IDL: DRSUAPI_EXOP_NONE=0x00000000, */
-/* IDL: DRSUAPI_EXOP_FSMO_REQ_ROLE=0x00000001, */
-/* IDL: DRSUAPI_EXOP_FSMO_RID_ALLOC=0x00000002, */
-/* IDL: DRSUAPI_EXOP_FSMO_RID_REQ_ROLE=0x00000003, */
-/* IDL: DRSUAPI_EXOP_FSMO_REQ_PDC=0x00000004, */
-/* IDL: DRSUAPI_EXOP_FSMO_ABANDON_ROLE=0x00000005, */
-/* IDL: DRSUAPI_EXOP_REPL_OBJ=0x00000006, */
-/* IDL: DRSUAPI_EXOP_REPL_SECRET=0x00000007, */
-/* IDL: } */
-
-int
-drsuapi_dissect_enum_DsExtendedOperation(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
-{
- guint32 parameter=0;
- if (param) {
- parameter = *param;
- }
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, ¶meter);
- if (param) {
- *param = parameter;
+ ALIGN_TO_4_BYTES;
}
- return offset;
-}
-
-
-/* IDL: enum { */
-/* IDL: DRSUAPI_EXOP_ERR_NONE=0x00000000, */
-/* IDL: DRSUAPI_EXOP_ERR_SUCCESS=0x00000001, */
-/* IDL: DRSUAPI_EXOP_ERR_UNKNOWN_OP=0x00000002, */
-/* IDL: DRSUAPI_EXOP_ERR_FSMO_NOT_OWNER=0x00000003, */
-/* IDL: DRSUAPI_EXOP_ERR_UPDATE_ERR=0x00000004, */
-/* IDL: DRSUAPI_EXOP_ERR_EXCEPTION=0x00000005, */
-/* IDL: DRSUAPI_EXOP_ERR_UNKNOWN_CALLER=0x00000006, */
-/* IDL: DRSUAPI_EXOP_ERR_RID_ALLOC=0x00000007, */
-/* IDL: DRSUAPI_EXOP_ERR_FSMO_OWNER_DELETED=0x00000008, */
-/* IDL: DRSUAPI_EXOP_ERR_FMSO_PENDING_OP=0x00000009, */
-/* IDL: DRSUAPI_EXOP_ERR_MISMATCH=0x0000000A, */
-/* IDL: DRSUAPI_EXOP_ERR_COULDNT_CONTACT=0x0000000B, */
-/* IDL: DRSUAPI_EXOP_ERR_FSMO_REFUSING_ROLES=0x0000000C, */
-/* IDL: DRSUAPI_EXOP_ERR_DIR_ERROR=0x0000000D, */
-/* IDL: DRSUAPI_EXOP_ERR_FSMO_MISSING_SETTINGS=0x0000000E, */
-/* IDL: DRSUAPI_EXOP_ERR_ACCESS_DENIED=0x0000000F, */
-/* IDL: DRSUAPI_EXOP_ERR_PARAM_ERROR=0x00000010, */
-/* IDL: } */
-int
-drsuapi_dissect_enum_DsExtendedError(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
-{
- guint32 parameter=0;
- if (param) {
- parameter = *param;
- }
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, ¶meter);
- if (param) {
- *param = parameter;
- }
return offset;
}
/* IDL: struct { */
-/* IDL: GUID destination_dsa_guid; */
-/* IDL: GUID source_dsa_invocation_id; */
/* IDL: [ref] drsuapi_DsReplicaObjectIdentifier *naming_context; */
-/* IDL: drsuapi_DsReplicaHighWaterMark highwatermark; */
-/* IDL: [unique(1)] drsuapi_DsReplicaCursorCtrEx *uptodateness_vector; */
-/* IDL: drsuapi_DrsOptions replica_flags; */
-/* IDL: uint32 max_object_count; */
-/* IDL: uint32 max_ndr_size; */
-/* IDL: drsuapi_DsExtendedOperation extended_op; */
-/* IDL: hyper fsmo_info; */
+/* IDL: GUID source_dsa_guid; */
+/* IDL: [charset(DOS)] [unique(1)] uint8 *source_dsa_dns; */
+/* IDL: drsuapi_DrsOptions options; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsGetNCChangesRequest5_destination_dsa_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaSyncRequest1_naming_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest5_destination_dsa_guid, NULL);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaSyncRequest1_naming_context_, NDR_POINTER_REF, "Pointer to Naming Context (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsReplicaSyncRequest1_naming_context);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest5_source_dsa_invocation_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaSyncRequest1_naming_context_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest5_source_dsa_invocation_id, NULL);
+ offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaSyncRequest1_naming_context,0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest5_naming_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaSyncRequest1_source_dsa_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesRequest5_naming_context_, NDR_POINTER_REF, "Pointer to Naming Context (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsGetNCChangesRequest5_naming_context);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaSyncRequest1_source_dsa_guid, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest5_naming_context_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaSyncRequest1_source_dsa_dns(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest5_naming_context,0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaSyncRequest1_source_dsa_dns_, NDR_POINTER_UNIQUE, "Pointer to Source Dsa Dns (uint8)",hf_drsuapi_drsuapi_DsReplicaSyncRequest1_source_dsa_dns);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest5_highwatermark(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaSyncRequest1_source_dsa_dns_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaHighWaterMark(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest5_highwatermark,0);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint8), hf_drsuapi_drsuapi_DsReplicaSyncRequest1_source_dsa_dns, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest5_uptodateness_vector(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaSyncRequest1_options(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesRequest5_uptodateness_vector_, NDR_POINTER_UNIQUE, "Pointer to Uptodateness Vector (drsuapi_DsReplicaCursorCtrEx)",hf_drsuapi_drsuapi_DsGetNCChangesRequest5_uptodateness_vector);
+ offset = drsuapi_dissect_bitmap_DrsOptions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaSyncRequest1_options, 0);
+
+ return offset;
+}
+
+int
+drsuapi_dissect_struct_DsReplicaSyncRequest1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+{
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+
+ ALIGN_TO_5_BYTES;
+
+ old_offset = offset;
+
+ if (parent_tree) {
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaSyncRequest1);
+ }
+
+ offset = drsuapi_dissect_element_DsReplicaSyncRequest1_naming_context(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaSyncRequest1_source_dsa_guid(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaSyncRequest1_source_dsa_dns(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaSyncRequest1_options(tvb, offset, pinfo, tree, di, drep);
+
+
+ proto_item_set_len(item, offset-old_offset);
+
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_5_BYTES;
+ }
return offset;
}
+
+/* IDL: struct { */
+/* IDL: [ref] drsuapi_DsReplicaObjectIdentifier *naming_context; */
+/* IDL: GUID source_dsa_guid; */
+/* IDL: [charset(DOS)] [unique(1)] uint8 *source_dsa_dns; */
+/* IDL: drsuapi_DrsOptions options; */
+/* IDL: GUID correlationID; */
+/* IDL: [unique(1)] [value(NULL)] drsuapi_VAR_SIZE_BUFFER_WITH_VERSION *reserved_buffer; */
+/* IDL: } */
+
static int
-drsuapi_dissect_element_DsGetNCChangesRequest5_uptodateness_vector_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaSyncRequest2_naming_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaCursorCtrEx(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest5_uptodateness_vector,0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaSyncRequest2_naming_context_, NDR_POINTER_REF, "Pointer to Naming Context (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsReplicaSyncRequest2_naming_context);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest5_replica_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaSyncRequest2_naming_context_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_bitmap_DrsOptions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest5_replica_flags, 0);
+ offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaSyncRequest2_naming_context,0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest5_max_object_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaSyncRequest2_source_dsa_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest5_max_object_count, 0);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaSyncRequest2_source_dsa_guid, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest5_max_ndr_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaSyncRequest2_source_dsa_dns(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest5_max_ndr_size, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaSyncRequest2_source_dsa_dns_, NDR_POINTER_UNIQUE, "Pointer to Source Dsa Dns (uint8)",hf_drsuapi_drsuapi_DsReplicaSyncRequest2_source_dsa_dns);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest5_extended_op(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaSyncRequest2_source_dsa_dns_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_enum_DsExtendedOperation(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest5_extended_op, 0);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint8), hf_drsuapi_drsuapi_DsReplicaSyncRequest2_source_dsa_dns, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest5_fsmo_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaSyncRequest2_options(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest5_fsmo_info, NULL);
+ offset = drsuapi_dissect_bitmap_DrsOptions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaSyncRequest2_options, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaSyncRequest2_correlationID(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaSyncRequest2_correlationID, NULL);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaSyncRequest2_reserved_buffer(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaSyncRequest2_reserved_buffer_, NDR_POINTER_UNIQUE, "Pointer to Reserved Buffer (drsuapi_VAR_SIZE_BUFFER_WITH_VERSION)",hf_drsuapi_drsuapi_DsReplicaSyncRequest2_reserved_buffer);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaSyncRequest2_reserved_buffer_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_VAR_SIZE_BUFFER_WITH_VERSION(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaSyncRequest2_reserved_buffer,0);
return offset;
}
int
-drsuapi_dissect_struct_DsGetNCChangesRequest5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsReplicaSyncRequest2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_5_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetNCChangesRequest5);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaSyncRequest2);
}
- offset = drsuapi_dissect_element_DsGetNCChangesRequest5_destination_dsa_guid(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesRequest5_source_dsa_invocation_id(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesRequest5_naming_context(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesRequest5_highwatermark(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesRequest5_uptodateness_vector(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaSyncRequest2_naming_context(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesRequest5_replica_flags(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaSyncRequest2_source_dsa_guid(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesRequest5_max_object_count(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaSyncRequest2_source_dsa_dns(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesRequest5_max_ndr_size(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaSyncRequest2_options(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesRequest5_extended_op(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaSyncRequest2_correlationID(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesRequest5_fsmo_info(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaSyncRequest2_reserved_buffer(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_5_BYTES;
}
return offset;
}
-/* IDL: struct { */
-/* IDL: [range(0,10000)] uint32 length; */
-/* IDL: [size_is(length)] [unique(1)] uint8 *binary_oid; */
+/* IDL: [switch_type(uint32)] union { */
+/* IDL: [case(1)] [case(1)] drsuapi_DsReplicaSyncRequest1 req1; */
+/* IDL: [case(2)] [case(2)] drsuapi_DsReplicaSyncRequest2 req2; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaOID_length(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaSyncRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaOID_length, 0);
+ offset = drsuapi_dissect_struct_DsReplicaSyncRequest1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaSyncRequest_req1,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaOID_binary_oid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaSyncRequest_req2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaOID_binary_oid_, NDR_POINTER_UNIQUE, "Pointer to Binary Oid (uint8)",hf_drsuapi_drsuapi_DsReplicaOID_binary_oid);
+ offset = drsuapi_dissect_struct_DsReplicaSyncRequest2(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaSyncRequest_req2,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaOID_binary_oid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsReplicaSyncRequest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaOID_binary_oid__);
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+ guint32 level;
+
+ old_offset = offset;
+ if (parent_tree) {
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsReplicaSyncRequest, &item, "drsuapi_DsReplicaSyncRequest");
+ }
+
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
+ ALIGN_TO_5_BYTES;
+
+ switch(level) {
+ case 1:
+ offset = drsuapi_dissect_element_DsReplicaSyncRequest_req1(tvb, offset, pinfo, tree, di, drep);
+ break;
+
+ case 2:
+ offset = drsuapi_dissect_element_DsReplicaSyncRequest_req2(tvb, offset, pinfo, tree, di, drep);
+ break;
+ }
+ proto_item_set_len(item, offset-old_offset);
+
+
+ return offset;
+}
+
+/* IDL: struct { */
+/* IDL: hyper tmp_highest_usn; */
+/* IDL: hyper reserved_usn; */
+/* IDL: hyper highest_usn; */
+/* IDL: } */
+
+static int
+drsuapi_dissect_element_DsReplicaHighWaterMark_tmp_highest_usn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaHighWaterMark_tmp_highest_usn, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaOID_binary_oid__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaHighWaterMark_reserved_usn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaOID_binary_oid, 0);
+ offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaHighWaterMark_reserved_usn, NULL);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaHighWaterMark_highest_usn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaHighWaterMark_highest_usn, NULL);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaOID(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsReplicaHighWaterMark(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_5_BYTES;
+ ALIGN_TO_8_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaOID);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaHighWaterMark);
}
- offset = drsuapi_dissect_element_DsReplicaOID_length(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaHighWaterMark_tmp_highest_usn(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaOID_binary_oid(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaHighWaterMark_reserved_usn(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaHighWaterMark_highest_usn(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_5_BYTES;
+ ALIGN_TO_8_BYTES;
}
return offset;
/* IDL: struct { */
-/* IDL: uint32 id_prefix; */
-/* IDL: drsuapi_DsReplicaOID oid; */
+/* IDL: GUID source_dsa_invocation_id; */
+/* IDL: hyper highest_usn; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaOIDMapping_id_prefix(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaCursor_source_dsa_invocation_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaOIDMapping_id_prefix, 0);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursor_source_dsa_invocation_id, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaOIDMapping_oid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaCursor_highest_usn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaOID(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaOIDMapping_oid,0);
+ offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursor_highest_usn, NULL);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaOIDMapping(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsReplicaCursor(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_5_BYTES;
+ ALIGN_TO_8_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaOIDMapping);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaCursor);
}
- offset = drsuapi_dissect_element_DsReplicaOIDMapping_id_prefix(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaCursor_source_dsa_invocation_id(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaOIDMapping_oid(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaCursor_highest_usn(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_5_BYTES;
+ ALIGN_TO_8_BYTES;
}
return offset;
/* IDL: struct { */
-/* IDL: [range(0,0x100000)] uint32 num_mappings; */
-/* IDL: [size_is(num_mappings)] [unique(1)] drsuapi_DsReplicaOIDMapping *mappings; */
+/* IDL: [value(1)] uint32 version; */
+/* IDL: [value(0)] uint32 reserved1; */
+/* IDL: [range(0,0x100000)] uint32 count; */
+/* IDL: [value(0)] uint32 reserved2; */
+/* IDL: [size_is(count)] drsuapi_DsReplicaCursor cursors[*]; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaOIDMapping_Ctr_num_mappings(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaCursorCtrEx_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaOIDMapping_Ctr_num_mappings, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursorCtrEx_version, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaOIDMapping_Ctr_mappings(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaCursorCtrEx_reserved1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaOIDMapping_Ctr_mappings_, NDR_POINTER_UNIQUE, "Pointer to Mappings (drsuapi_DsReplicaOIDMapping)",hf_drsuapi_drsuapi_DsReplicaOIDMapping_Ctr_mappings);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursorCtrEx_reserved1, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaOIDMapping_Ctr_mappings_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaCursorCtrEx_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaOIDMapping_Ctr_mappings__);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursorCtrEx_count, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaOIDMapping_Ctr_mappings__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaCursorCtrEx_reserved2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaOIDMapping(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaOIDMapping_Ctr_mappings,0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursorCtrEx_reserved2, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaCursorCtrEx_cursors(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaCursorCtrEx_cursors_);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaCursorCtrEx_cursors_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsReplicaCursor(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaCursorCtrEx_cursors,0);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaOIDMapping_Ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsReplicaCursorCtrEx(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_5_BYTES;
+ ALIGN_TO_8_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaOIDMapping_Ctr);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaCursorCtrEx);
}
- offset = drsuapi_dissect_element_DsReplicaOIDMapping_Ctr_num_mappings(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaCursorCtrEx_version(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaOIDMapping_Ctr_mappings(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaCursorCtrEx_reserved1(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaCursorCtrEx_count(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaCursorCtrEx_reserved2(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaCursorCtrEx_cursors(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_5_BYTES;
+ ALIGN_TO_8_BYTES;
}
return offset;
/* IDL: enum { */
-/* IDL: DRSUAPI_OBJECTCLASS_top=0x00010000, */
-/* IDL: DRSUAPI_OBJECTCLASS_classSchema=0x0003000d, */
-/* IDL: DRSUAPI_OBJECTCLASS_attributeSchema=0x0003000e, */
+/* IDL: DRSUAPI_EXOP_NONE=0x00000000, */
+/* IDL: DRSUAPI_EXOP_FSMO_REQ_ROLE=0x00000001, */
+/* IDL: DRSUAPI_EXOP_FSMO_RID_ALLOC=0x00000002, */
+/* IDL: DRSUAPI_EXOP_FSMO_RID_REQ_ROLE=0x00000003, */
+/* IDL: DRSUAPI_EXOP_FSMO_REQ_PDC=0x00000004, */
+/* IDL: DRSUAPI_EXOP_FSMO_ABANDON_ROLE=0x00000005, */
+/* IDL: DRSUAPI_EXOP_REPL_OBJ=0x00000006, */
+/* IDL: DRSUAPI_EXOP_REPL_SECRET=0x00000007, */
/* IDL: } */
int
-drsuapi_dissect_enum_DsObjectClassId(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
+drsuapi_dissect_enum_DsExtendedOperation(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
{
guint32 parameter=0;
if (param) {
/* IDL: enum { */
-/* IDL: DRSUAPI_ATTID_objectClass=0x00000000, */
-/* IDL: DRSUAPI_ATTID_cn=0x00000003, */
-/* IDL: DRSUAPI_ATTID_ou=0x0000000b, */
-/* IDL: DRSUAPI_ATTID_description=0x0000000d, */
-/* IDL: DRSUAPI_ATTID_member=0x0000001f, */
-/* IDL: DRSUAPI_ATTID_distinguishedName=0x00000031, */
-/* IDL: DRSUAPI_ATTID_instanceType=0x00020001, */
-/* IDL: DRSUAPI_ATTID_whenCreated=0x00020002, */
-/* IDL: DRSUAPI_ATTID_possSuperiors=0x00020008, */
-/* IDL: DRSUAPI_ATTID_displayName=0x0002000d, */
-/* IDL: DRSUAPI_ATTID_hasMasterNCs=0x0002000e, */
-/* IDL: DRSUAPI_ATTID_nCName=0x00020010, */
-/* IDL: DRSUAPI_ATTID_subClassOf=0x00020015, */
-/* IDL: DRSUAPI_ATTID_governsID=0x00020016, */
-/* IDL: DRSUAPI_ATTID_mustContain=0x00020018, */
-/* IDL: DRSUAPI_ATTID_mayContain=0x00020019, */
-/* IDL: DRSUAPI_ATTID_rDNAttId=0x0002001A, */
-/* IDL: DRSUAPI_ATTID_attributeID=0x0002001e, */
-/* IDL: DRSUAPI_ATTID_attributeSyntax=0x00020020, */
-/* IDL: DRSUAPI_ATTID_isSingleValued=0x00020021, */
-/* IDL: DRSUAPI_ATTID_rangeLower=0x00020022, */
-/* IDL: DRSUAPI_ATTID_rangeUpper=0x00020023, */
-/* IDL: DRSUAPI_ATTID_dMDLocation=0x00020024, */
-/* IDL: DRSUAPI_ATTID_isDeleted=0x00020030, */
-/* IDL: DRSUAPI_ATTID_objectVersion=0x0002004c, */
-/* IDL: DRSUAPI_ATTID_invocationId=0x00020073, */
-/* IDL: DRSUAPI_ATTID_showInAdvancedViewOnly=0x000200a9, */
-/* IDL: DRSUAPI_ATTID_adminDisplayName=0x000200c2, */
-/* IDL: DRSUAPI_ATTID_adminDescription=0x000200e2, */
-/* IDL: DRSUAPI_ATTID_oMSyntax=0x000200e7, */
-/* IDL: DRSUAPI_ATTID_ntSecurityDescriptor=0x00020119, */
-/* IDL: DRSUAPI_ATTID_searchFlags=0x0002014e, */
-/* IDL: DRSUAPI_ATTID_auxiliaryClass=0x0002015f, */
-/* IDL: DRSUAPI_ATTID_lDAPDisplayName=0x000201cc, */
-/* IDL: DRSUAPI_ATTID_name=0x00090001, */
-/* IDL: DRSUAPI_ATTID_objectGUID=0x00090002, */
-/* IDL: DRSUAPI_ATTID_replPropertyMetaData=0x00090003, */
-/* IDL: DRSUAPI_ATTID_userAccountControl=0x00090008, */
-/* IDL: DRSUAPI_ATTID_badPwdCount=0x0009000c, */
-/* IDL: DRSUAPI_ATTID_codePage=0x00090010, */
-/* IDL: DRSUAPI_ATTID_countryCode=0x00090019, */
-/* IDL: DRSUAPI_ATTID_currentValue=0x0009001b, */
-/* IDL: DRSUAPI_ATTID_homeDirectory=0x0009002c, */
-/* IDL: DRSUAPI_ATTID_homeDrive=0x0009002d, */
-/* IDL: DRSUAPI_ATTID_lastLogoff=0x00090033, */
-/* IDL: DRSUAPI_ATTID_lastLogon=0x00090034, */
-/* IDL: DRSUAPI_ATTID_dBCSPwd=0x00090037, */
-/* IDL: DRSUAPI_ATTID_scriptPath=0x0009003e, */
-/* IDL: DRSUAPI_ATTID_logonHours=0x00090040, */
-/* IDL: DRSUAPI_ATTID_userWorkstations=0x00090056, */
-/* IDL: DRSUAPI_ATTID_unicodePwd=0x0009005a, */
-/* IDL: DRSUAPI_ATTID_ntPwdHistory=0x0009005e, */
-/* IDL: DRSUAPI_ATTID_pwdLastSet=0x00090060, */
-/* IDL: DRSUAPI_ATTID_primaryGroupID=0x00090062, */
-/* IDL: DRSUAPI_ATTID_priorValue=0x00090064, */
-/* IDL: DRSUAPI_ATTID_supplementalCredentials=0x0009007d, */
-/* IDL: DRSUAPI_ATTID_trustAuthIncoming=0x00090081, */
-/* IDL: DRSUAPI_ATTID_trustDirection=0x00090084, */
-/* IDL: DRSUAPI_ATTID_trustPartner=0x00090085, */
-/* IDL: DRSUAPI_ATTID_trustPosixOffset=0x00090086, */
-/* IDL: DRSUAPI_ATTID_trustAuthOutgoing=0x00090087, */
-/* IDL: DRSUAPI_ATTID_trustType=0x00090088, */
-/* IDL: DRSUAPI_ATTID_userParameters=0x0009008a, */
-/* IDL: DRSUAPI_ATTID_profilePath=0x0009008b, */
-/* IDL: DRSUAPI_ATTID_operatorCount=0x00090090, */
-/* IDL: DRSUAPI_ATTID_objectSid=0x00090092, */
-/* IDL: DRSUAPI_ATTID_schemaIDGUID=0x00090094, */
-/* IDL: DRSUAPI_ATTID_adminCount=0x00090096, */
-/* IDL: DRSUAPI_ATTID_comment=0x0009009C, */
-/* IDL: DRSUAPI_ATTID_accountExpires=0x0009009f, */
-/* IDL: DRSUAPI_ATTID_lmPwdHistory=0x000900a0, */
-/* IDL: DRSUAPI_ATTID_logonCount=0x000900a9, */
-/* IDL: DRSUAPI_ATTID_systemPossSuperiors=0x000900c3, */
-/* IDL: DRSUAPI_ATTID_systemMayContain=0x000900c4, */
-/* IDL: DRSUAPI_ATTID_systemMustContain=0x000900c5, */
-/* IDL: DRSUAPI_ATTID_systemAuxiliaryClass=0x000900c6, */
-/* IDL: DRSUAPI_ATTID_sAMAccountName=0x000900dd, */
-/* IDL: DRSUAPI_ATTID_sAMAccountType=0x0009012e, */
-/* IDL: DRSUAPI_ATTID_options=0x00090133, */
-/* IDL: DRSUAPI_ATTID_fSMORoleOwner=0x00090171, */
-/* IDL: DRSUAPI_ATTID_systemFlags=0x00090177, */
-/* IDL: DRSUAPI_ATTID_trustAttributes=0x000901d6, */
-/* IDL: DRSUAPI_ATTID_trustParent=0x000901d7, */
-/* IDL: DRSUAPI_ATTID_flatName=0x000901ff, */
-/* IDL: DRSUAPI_ATTID_serverReference=0x00090203, */
-/* IDL: DRSUAPI_ATTID_serverReferenceBL=0x00090204, */
-/* IDL: DRSUAPI_ATTID_nonSecurityMember=0x00090212, */
-/* IDL: DRSUAPI_ATTID_initialAuthIncoming=0x0009021b, */
-/* IDL: DRSUAPI_ATTID_initialAuthOutgoing=0x0009021c, */
-/* IDL: DRSUAPI_ATTID_wellKnownObjects=0x0009026a, */
-/* IDL: DRSUAPI_ATTID_dNSHostName=0x0009026b, */
-/* IDL: DRSUAPI_ATTID_isMemberOfPartialAttributeSet=0x0009027f, */
-/* IDL: DRSUAPI_ATTID_managedBy=0x0009028d, */
-/* IDL: DRSUAPI_ATTID_userPrincipalName=0x00090290, */
-/* IDL: DRSUAPI_ATTID_groupType=0x000902ee, */
-/* IDL: DRSUAPI_ATTID_servicePrincipalName=0x00090303, */
-/* IDL: DRSUAPI_ATTID_lastKnownParent=0x0009030d, */
-/* IDL: DRSUAPI_ATTID_objectCategory=0x0009030e, */
-/* IDL: DRSUAPI_ATTID_gPLink=0x0009037b, */
-/* IDL: DRSUAPI_ATTID_transportAddressAttribute=0x0009037f, */
-/* IDL: DRSUAPI_ATTID_schemaInfo=0x0009054e, */
-/* IDL: DRSUAPI_ATTID_msDS_Behavior_Version=0x000905b3, */
-/* IDL: DRSUAPI_ATTID_msDS_TrustForestTrustInfo=0x000906a6, */
-/* IDL: DRSUAPI_ATTID_msDS_KeyVersionNumber=0x000906f6, */
-/* IDL: DRSUAPI_ATTID_msDS_NonMembers=0x00090701, */
-/* IDL: DRSUAPI_ATTID_msDS_MembersForAzRole=0x0009070e, */
-/* IDL: DRSUAPI_ATTID_msDS_HasDomainNCs=0x0009071c, */
-/* IDL: DRSUAPI_ATTID_msDS_hasMasterNCs=0x0009072c, */
-/* IDL: DRSUAPI_ATTID_msDS_NeverRevealGroup=0x00090786, */
-/* IDL: DRSUAPI_ATTID_msDS_RevealOnDemandGroup=0x00090788, */
-/* IDL: DRSUAPI_ATTID_msDS_SupportedEncryptionTypes=0x000907ab, */
-/* IDL: DRSUAPI_ATTID_msDS_HostServiceAccount=0x00090808, */
-/* IDL: DRSUAPI_ATTID_isRecycled=0x0009080a, */
-/* IDL: DRSUAPI_ATTID_INVALID=0xFFFFFFFF, */
+/* IDL: DRSUAPI_EXOP_ERR_NONE=0x00000000, */
+/* IDL: DRSUAPI_EXOP_ERR_SUCCESS=0x00000001, */
+/* IDL: DRSUAPI_EXOP_ERR_UNKNOWN_OP=0x00000002, */
+/* IDL: DRSUAPI_EXOP_ERR_FSMO_NOT_OWNER=0x00000003, */
+/* IDL: DRSUAPI_EXOP_ERR_UPDATE_ERR=0x00000004, */
+/* IDL: DRSUAPI_EXOP_ERR_EXCEPTION=0x00000005, */
+/* IDL: DRSUAPI_EXOP_ERR_UNKNOWN_CALLER=0x00000006, */
+/* IDL: DRSUAPI_EXOP_ERR_RID_ALLOC=0x00000007, */
+/* IDL: DRSUAPI_EXOP_ERR_FSMO_OWNER_DELETED=0x00000008, */
+/* IDL: DRSUAPI_EXOP_ERR_FMSO_PENDING_OP=0x00000009, */
+/* IDL: DRSUAPI_EXOP_ERR_MISMATCH=0x0000000A, */
+/* IDL: DRSUAPI_EXOP_ERR_COULDNT_CONTACT=0x0000000B, */
+/* IDL: DRSUAPI_EXOP_ERR_FSMO_REFUSING_ROLES=0x0000000C, */
+/* IDL: DRSUAPI_EXOP_ERR_DIR_ERROR=0x0000000D, */
+/* IDL: DRSUAPI_EXOP_ERR_FSMO_MISSING_SETTINGS=0x0000000E, */
+/* IDL: DRSUAPI_EXOP_ERR_ACCESS_DENIED=0x0000000F, */
+/* IDL: DRSUAPI_EXOP_ERR_PARAM_ERROR=0x00000010, */
/* IDL: } */
int
-drsuapi_dissect_enum_DsAttributeId(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
+drsuapi_dissect_enum_DsExtendedError(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
{
guint32 parameter=0;
if (param) {
/* IDL: struct { */
-/* IDL: [value(1)] uint32 version; */
-/* IDL: [value(0)] uint32 reserved1; */
-/* IDL: [range(1,0x100000)] uint32 num_attids; */
-/* IDL: [size_is(num_attids)] drsuapi_DsAttributeId attids[*]; */
+/* IDL: GUID destination_dsa_guid; */
+/* IDL: GUID source_dsa_invocation_id; */
+/* IDL: [ref] drsuapi_DsReplicaObjectIdentifier *naming_context; */
+/* IDL: drsuapi_DsReplicaHighWaterMark highwatermark; */
+/* IDL: [unique(1)] drsuapi_DsReplicaCursorCtrEx *uptodateness_vector; */
+/* IDL: drsuapi_DrsOptions replica_flags; */
+/* IDL: uint32 max_object_count; */
+/* IDL: uint32 max_ndr_size; */
+/* IDL: drsuapi_DsExtendedOperation extended_op; */
+/* IDL: hyper fsmo_info; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsPartialAttributeSet_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesRequest5_destination_dsa_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsPartialAttributeSet_version, 0);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest5_destination_dsa_guid, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsPartialAttributeSet_reserved1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesRequest5_source_dsa_invocation_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsPartialAttributeSet_reserved1, 0);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest5_source_dsa_invocation_id, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsPartialAttributeSet_num_attids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesRequest5_naming_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsPartialAttributeSet_num_attids, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesRequest5_naming_context_, NDR_POINTER_REF, "Pointer to Naming Context (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsGetNCChangesRequest5_naming_context);
return offset;
}
static int
-drsuapi_dissect_element_DsPartialAttributeSet_attids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesRequest5_naming_context_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsPartialAttributeSet_attids_);
+ offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest5_naming_context,0);
return offset;
}
static int
-drsuapi_dissect_element_DsPartialAttributeSet_attids_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesRequest5_highwatermark(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_enum_DsAttributeId(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsPartialAttributeSet_attids, 0);
+ offset = drsuapi_dissect_struct_DsReplicaHighWaterMark(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest5_highwatermark,0);
return offset;
}
-int
-drsuapi_dissect_struct_DsPartialAttributeSet(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest5_uptodateness_vector(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesRequest5_uptodateness_vector_, NDR_POINTER_UNIQUE, "Pointer to Uptodateness Vector (drsuapi_DsReplicaCursorCtrEx)",hf_drsuapi_drsuapi_DsGetNCChangesRequest5_uptodateness_vector);
- ALIGN_TO_4_BYTES;
+ return offset;
+}
- old_offset = offset;
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest5_uptodateness_vector_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsReplicaCursorCtrEx(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest5_uptodateness_vector,0);
- if (parent_tree) {
- item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsPartialAttributeSet);
- }
+ return offset;
+}
- offset = drsuapi_dissect_element_DsPartialAttributeSet_version(tvb, offset, pinfo, tree, di, drep);
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest5_replica_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_bitmap_DrsOptions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest5_replica_flags, 0);
- offset = drsuapi_dissect_element_DsPartialAttributeSet_reserved1(tvb, offset, pinfo, tree, di, drep);
+ return offset;
+}
- offset = drsuapi_dissect_element_DsPartialAttributeSet_num_attids(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsPartialAttributeSet_attids(tvb, offset, pinfo, tree, di, drep);
-
-
- proto_item_set_len(item, offset-old_offset);
-
-
- if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_4_BYTES;
- }
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest5_max_object_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest5_max_object_count, 0);
return offset;
}
-
-/* IDL: struct { */
-/* IDL: GUID destination_dsa_guid; */
-/* IDL: GUID source_dsa_invocation_id; */
-/* IDL: [ref] drsuapi_DsReplicaObjectIdentifier *naming_context; */
-/* IDL: drsuapi_DsReplicaHighWaterMark highwatermark; */
-/* IDL: [unique(1)] drsuapi_DsReplicaCursorCtrEx *uptodateness_vector; */
-/* IDL: drsuapi_DrsOptions replica_flags; */
-/* IDL: uint32 max_object_count; */
-/* IDL: uint32 max_ndr_size; */
-/* IDL: drsuapi_DsExtendedOperation extended_op; */
-/* IDL: hyper fsmo_info; */
-/* IDL: [unique(1)] drsuapi_DsPartialAttributeSet *partial_attribute_set; */
-/* IDL: [unique(1)] drsuapi_DsPartialAttributeSet *partial_attribute_set_ex; */
-/* IDL: drsuapi_DsReplicaOIDMapping_Ctr mapping_ctr; */
-/* IDL: } */
-
static int
-drsuapi_dissect_element_DsGetNCChangesRequest8_destination_dsa_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesRequest5_max_ndr_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest8_destination_dsa_guid, NULL);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest5_max_ndr_size, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest8_source_dsa_invocation_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesRequest5_extended_op(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest8_source_dsa_invocation_id, NULL);
+ offset = drsuapi_dissect_enum_DsExtendedOperation(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest5_extended_op, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest8_naming_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesRequest5_fsmo_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesRequest8_naming_context_, NDR_POINTER_REF, "Pointer to Naming Context (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsGetNCChangesRequest8_naming_context);
+ offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest5_fsmo_info, NULL);
return offset;
}
-static int
-drsuapi_dissect_element_DsGetNCChangesRequest8_naming_context_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+int
+drsuapi_dissect_struct_DsGetNCChangesRequest5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest8_naming_context,0);
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
- return offset;
-}
+ ALIGN_TO_8_BYTES;
-static int
-drsuapi_dissect_element_DsGetNCChangesRequest8_highwatermark(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = drsuapi_dissect_struct_DsReplicaHighWaterMark(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest8_highwatermark,0);
+ old_offset = offset;
- return offset;
-}
+ if (parent_tree) {
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetNCChangesRequest5);
+ }
-static int
-drsuapi_dissect_element_DsGetNCChangesRequest8_uptodateness_vector(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesRequest8_uptodateness_vector_, NDR_POINTER_UNIQUE, "Pointer to Uptodateness Vector (drsuapi_DsReplicaCursorCtrEx)",hf_drsuapi_drsuapi_DsGetNCChangesRequest8_uptodateness_vector);
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest5_destination_dsa_guid(tvb, offset, pinfo, tree, di, drep);
- return offset;
-}
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest5_source_dsa_invocation_id(tvb, offset, pinfo, tree, di, drep);
-static int
-drsuapi_dissect_element_DsGetNCChangesRequest8_uptodateness_vector_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = drsuapi_dissect_struct_DsReplicaCursorCtrEx(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest8_uptodateness_vector,0);
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest5_naming_context(tvb, offset, pinfo, tree, di, drep);
- return offset;
-}
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest5_highwatermark(tvb, offset, pinfo, tree, di, drep);
-static int
-drsuapi_dissect_element_DsGetNCChangesRequest8_replica_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = drsuapi_dissect_bitmap_DrsOptions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest8_replica_flags, 0);
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest5_uptodateness_vector(tvb, offset, pinfo, tree, di, drep);
- return offset;
-}
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest5_replica_flags(tvb, offset, pinfo, tree, di, drep);
-static int
-drsuapi_dissect_element_DsGetNCChangesRequest8_max_object_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest8_max_object_count, 0);
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest5_max_object_count(tvb, offset, pinfo, tree, di, drep);
- return offset;
-}
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest5_max_ndr_size(tvb, offset, pinfo, tree, di, drep);
-static int
-drsuapi_dissect_element_DsGetNCChangesRequest8_max_ndr_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest8_max_ndr_size, 0);
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest5_extended_op(tvb, offset, pinfo, tree, di, drep);
- return offset;
-}
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest5_fsmo_info(tvb, offset, pinfo, tree, di, drep);
-static int
-drsuapi_dissect_element_DsGetNCChangesRequest8_extended_op(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = drsuapi_dissect_enum_DsExtendedOperation(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest8_extended_op, 0);
- return offset;
-}
+ proto_item_set_len(item, offset-old_offset);
-static int
-drsuapi_dissect_element_DsGetNCChangesRequest8_fsmo_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest8_fsmo_info, NULL);
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_8_BYTES;
+ }
return offset;
}
-static int
-drsuapi_dissect_element_DsGetNCChangesRequest8_partial_attribute_set(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesRequest8_partial_attribute_set_, NDR_POINTER_UNIQUE, "Pointer to Partial Attribute Set (drsuapi_DsPartialAttributeSet)",hf_drsuapi_drsuapi_DsGetNCChangesRequest8_partial_attribute_set);
- return offset;
-}
+/* IDL: struct { */
+/* IDL: [range(0,10000)] uint32 length; */
+/* IDL: [size_is(length)] [unique(1)] uint8 *binary_oid; */
+/* IDL: } */
static int
-drsuapi_dissect_element_DsGetNCChangesRequest8_partial_attribute_set_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaOID_length(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsPartialAttributeSet(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest8_partial_attribute_set,0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaOID_length, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest8_partial_attribute_set_ex(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaOID_binary_oid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesRequest8_partial_attribute_set_ex_, NDR_POINTER_UNIQUE, "Pointer to Partial Attribute Set Ex (drsuapi_DsPartialAttributeSet)",hf_drsuapi_drsuapi_DsGetNCChangesRequest8_partial_attribute_set_ex);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaOID_binary_oid_, NDR_POINTER_UNIQUE, "Pointer to Binary Oid (uint8)",hf_drsuapi_drsuapi_DsReplicaOID_binary_oid);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest8_partial_attribute_set_ex_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaOID_binary_oid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsPartialAttributeSet(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest8_partial_attribute_set_ex,0);
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaOID_binary_oid__);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest8_mapping_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaOID_binary_oid__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaOIDMapping_Ctr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest8_mapping_ctr,0);
+ offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaOID_binary_oid, 0);
return offset;
}
int
-drsuapi_dissect_struct_DsGetNCChangesRequest8(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsReplicaOID(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_5_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetNCChangesRequest8);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaOID);
}
- offset = drsuapi_dissect_element_DsGetNCChangesRequest8_destination_dsa_guid(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesRequest8_source_dsa_invocation_id(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesRequest8_naming_context(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesRequest8_highwatermark(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesRequest8_uptodateness_vector(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesRequest8_replica_flags(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesRequest8_max_object_count(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesRequest8_max_ndr_size(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesRequest8_extended_op(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesRequest8_fsmo_info(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesRequest8_partial_attribute_set(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesRequest8_partial_attribute_set_ex(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaOID_length(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesRequest8_mapping_ctr(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaOID_binary_oid(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_5_BYTES;
}
return offset;
/* IDL: struct { */
-/* IDL: GUID destination_dsa_guid; */
-/* IDL: GUID source_dsa_invocation_id; */
-/* IDL: [ref] drsuapi_DsReplicaObjectIdentifier *naming_context; */
-/* IDL: drsuapi_DsReplicaHighWaterMark highwatermark; */
-/* IDL: [unique(1)] drsuapi_DsReplicaCursorCtrEx *uptodateness_vector; */
-/* IDL: drsuapi_DrsOptions replica_flags; */
-/* IDL: uint32 max_object_count; */
-/* IDL: uint32 max_ndr_size; */
-/* IDL: drsuapi_DsExtendedOperation extended_op; */
-/* IDL: hyper fsmo_info; */
-/* IDL: [unique(1)] drsuapi_DsPartialAttributeSet *partial_attribute_set; */
-/* IDL: [unique(1)] drsuapi_DsPartialAttributeSet *partial_attribute_set_ex; */
-/* IDL: drsuapi_DsReplicaOIDMapping_Ctr mapping_ctr; */
-/* IDL: drsuapi_DrsMoreOptions more_flags; */
+/* IDL: uint32 id_prefix; */
+/* IDL: drsuapi_DsReplicaOID oid; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsGetNCChangesRequest10_destination_dsa_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaOIDMapping_id_prefix(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest10_destination_dsa_guid, NULL);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaOIDMapping_id_prefix, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest10_source_dsa_invocation_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaOIDMapping_oid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest10_source_dsa_invocation_id, NULL);
+ offset = drsuapi_dissect_struct_DsReplicaOID(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaOIDMapping_oid,0);
return offset;
}
-static int
-drsuapi_dissect_element_DsGetNCChangesRequest10_naming_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+int
+drsuapi_dissect_struct_DsReplicaOIDMapping(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesRequest10_naming_context_, NDR_POINTER_REF, "Pointer to Naming Context (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsGetNCChangesRequest10_naming_context);
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
- return offset;
-}
+ ALIGN_TO_5_BYTES;
-static int
-drsuapi_dissect_element_DsGetNCChangesRequest10_naming_context_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest10_naming_context,0);
+ old_offset = offset;
+
+ if (parent_tree) {
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaOIDMapping);
+ }
+
+ offset = drsuapi_dissect_element_DsReplicaOIDMapping_id_prefix(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaOIDMapping_oid(tvb, offset, pinfo, tree, di, drep);
+
+
+ proto_item_set_len(item, offset-old_offset);
+
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_5_BYTES;
+ }
return offset;
}
+
+/* IDL: struct { */
+/* IDL: [range(0,0x100000)] uint32 num_mappings; */
+/* IDL: [size_is(num_mappings)] [unique(1)] drsuapi_DsReplicaOIDMapping *mappings; */
+/* IDL: } */
+
static int
-drsuapi_dissect_element_DsGetNCChangesRequest10_highwatermark(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaOIDMapping_Ctr_num_mappings(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaHighWaterMark(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest10_highwatermark,0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaOIDMapping_Ctr_num_mappings, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest10_uptodateness_vector(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaOIDMapping_Ctr_mappings(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesRequest10_uptodateness_vector_, NDR_POINTER_UNIQUE, "Pointer to Uptodateness Vector (drsuapi_DsReplicaCursorCtrEx)",hf_drsuapi_drsuapi_DsGetNCChangesRequest10_uptodateness_vector);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaOIDMapping_Ctr_mappings_, NDR_POINTER_UNIQUE, "Pointer to Mappings (drsuapi_DsReplicaOIDMapping)",hf_drsuapi_drsuapi_DsReplicaOIDMapping_Ctr_mappings);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest10_uptodateness_vector_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaOIDMapping_Ctr_mappings_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaCursorCtrEx(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest10_uptodateness_vector,0);
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaOIDMapping_Ctr_mappings__);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest10_replica_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaOIDMapping_Ctr_mappings__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_bitmap_DrsOptions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest10_replica_flags, 0);
+ offset = drsuapi_dissect_struct_DsReplicaOIDMapping(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaOIDMapping_Ctr_mappings,0);
return offset;
}
-static int
-drsuapi_dissect_element_DsGetNCChangesRequest10_max_object_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+int
+drsuapi_dissect_struct_DsReplicaOIDMapping_Ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+{
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+
+ ALIGN_TO_5_BYTES;
+
+ old_offset = offset;
+
+ if (parent_tree) {
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaOIDMapping_Ctr);
+ }
+
+ offset = drsuapi_dissect_element_DsReplicaOIDMapping_Ctr_num_mappings(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaOIDMapping_Ctr_mappings(tvb, offset, pinfo, tree, di, drep);
+
+
+ proto_item_set_len(item, offset-old_offset);
+
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_5_BYTES;
+ }
+
+ return offset;
+}
+
+
+/* IDL: enum { */
+/* IDL: DRSUAPI_OBJECTCLASS_top=0x00010000, */
+/* IDL: DRSUAPI_OBJECTCLASS_classSchema=0x0003000d, */
+/* IDL: DRSUAPI_OBJECTCLASS_attributeSchema=0x0003000e, */
+/* IDL: } */
+
+int
+drsuapi_dissect_enum_DsObjectClassId(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
+{
+ guint32 parameter=0;
+ if (param) {
+ parameter = *param;
+ }
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, ¶meter);
+ if (param) {
+ *param = parameter;
+ }
+ return offset;
+}
+
+
+/* IDL: enum { */
+/* IDL: DRSUAPI_ATTID_objectClass=0x00000000, */
+/* IDL: DRSUAPI_ATTID_cn=0x00000003, */
+/* IDL: DRSUAPI_ATTID_ou=0x0000000b, */
+/* IDL: DRSUAPI_ATTID_description=0x0000000d, */
+/* IDL: DRSUAPI_ATTID_member=0x0000001f, */
+/* IDL: DRSUAPI_ATTID_distinguishedName=0x00000031, */
+/* IDL: DRSUAPI_ATTID_instanceType=0x00020001, */
+/* IDL: DRSUAPI_ATTID_whenCreated=0x00020002, */
+/* IDL: DRSUAPI_ATTID_possSuperiors=0x00020008, */
+/* IDL: DRSUAPI_ATTID_displayName=0x0002000d, */
+/* IDL: DRSUAPI_ATTID_hasMasterNCs=0x0002000e, */
+/* IDL: DRSUAPI_ATTID_nCName=0x00020010, */
+/* IDL: DRSUAPI_ATTID_subClassOf=0x00020015, */
+/* IDL: DRSUAPI_ATTID_governsID=0x00020016, */
+/* IDL: DRSUAPI_ATTID_mustContain=0x00020018, */
+/* IDL: DRSUAPI_ATTID_mayContain=0x00020019, */
+/* IDL: DRSUAPI_ATTID_rDNAttId=0x0002001A, */
+/* IDL: DRSUAPI_ATTID_attributeID=0x0002001e, */
+/* IDL: DRSUAPI_ATTID_attributeSyntax=0x00020020, */
+/* IDL: DRSUAPI_ATTID_isSingleValued=0x00020021, */
+/* IDL: DRSUAPI_ATTID_rangeLower=0x00020022, */
+/* IDL: DRSUAPI_ATTID_rangeUpper=0x00020023, */
+/* IDL: DRSUAPI_ATTID_dMDLocation=0x00020024, */
+/* IDL: DRSUAPI_ATTID_isDeleted=0x00020030, */
+/* IDL: DRSUAPI_ATTID_objectVersion=0x0002004c, */
+/* IDL: DRSUAPI_ATTID_invocationId=0x00020073, */
+/* IDL: DRSUAPI_ATTID_showInAdvancedViewOnly=0x000200a9, */
+/* IDL: DRSUAPI_ATTID_adminDisplayName=0x000200c2, */
+/* IDL: DRSUAPI_ATTID_adminDescription=0x000200e2, */
+/* IDL: DRSUAPI_ATTID_oMSyntax=0x000200e7, */
+/* IDL: DRSUAPI_ATTID_ntSecurityDescriptor=0x00020119, */
+/* IDL: DRSUAPI_ATTID_searchFlags=0x0002014e, */
+/* IDL: DRSUAPI_ATTID_auxiliaryClass=0x0002015f, */
+/* IDL: DRSUAPI_ATTID_lDAPDisplayName=0x000201cc, */
+/* IDL: DRSUAPI_ATTID_name=0x00090001, */
+/* IDL: DRSUAPI_ATTID_objectGUID=0x00090002, */
+/* IDL: DRSUAPI_ATTID_replPropertyMetaData=0x00090003, */
+/* IDL: DRSUAPI_ATTID_userAccountControl=0x00090008, */
+/* IDL: DRSUAPI_ATTID_badPwdCount=0x0009000c, */
+/* IDL: DRSUAPI_ATTID_codePage=0x00090010, */
+/* IDL: DRSUAPI_ATTID_countryCode=0x00090019, */
+/* IDL: DRSUAPI_ATTID_currentValue=0x0009001b, */
+/* IDL: DRSUAPI_ATTID_homeDirectory=0x0009002c, */
+/* IDL: DRSUAPI_ATTID_homeDrive=0x0009002d, */
+/* IDL: DRSUAPI_ATTID_lastLogoff=0x00090033, */
+/* IDL: DRSUAPI_ATTID_lastLogon=0x00090034, */
+/* IDL: DRSUAPI_ATTID_dBCSPwd=0x00090037, */
+/* IDL: DRSUAPI_ATTID_scriptPath=0x0009003e, */
+/* IDL: DRSUAPI_ATTID_logonHours=0x00090040, */
+/* IDL: DRSUAPI_ATTID_userWorkstations=0x00090056, */
+/* IDL: DRSUAPI_ATTID_unicodePwd=0x0009005a, */
+/* IDL: DRSUAPI_ATTID_ntPwdHistory=0x0009005e, */
+/* IDL: DRSUAPI_ATTID_pwdLastSet=0x00090060, */
+/* IDL: DRSUAPI_ATTID_primaryGroupID=0x00090062, */
+/* IDL: DRSUAPI_ATTID_priorValue=0x00090064, */
+/* IDL: DRSUAPI_ATTID_supplementalCredentials=0x0009007d, */
+/* IDL: DRSUAPI_ATTID_trustAuthIncoming=0x00090081, */
+/* IDL: DRSUAPI_ATTID_trustDirection=0x00090084, */
+/* IDL: DRSUAPI_ATTID_trustPartner=0x00090085, */
+/* IDL: DRSUAPI_ATTID_trustPosixOffset=0x00090086, */
+/* IDL: DRSUAPI_ATTID_trustAuthOutgoing=0x00090087, */
+/* IDL: DRSUAPI_ATTID_trustType=0x00090088, */
+/* IDL: DRSUAPI_ATTID_userParameters=0x0009008a, */
+/* IDL: DRSUAPI_ATTID_profilePath=0x0009008b, */
+/* IDL: DRSUAPI_ATTID_operatorCount=0x00090090, */
+/* IDL: DRSUAPI_ATTID_objectSid=0x00090092, */
+/* IDL: DRSUAPI_ATTID_schemaIDGUID=0x00090094, */
+/* IDL: DRSUAPI_ATTID_adminCount=0x00090096, */
+/* IDL: DRSUAPI_ATTID_comment=0x0009009C, */
+/* IDL: DRSUAPI_ATTID_accountExpires=0x0009009f, */
+/* IDL: DRSUAPI_ATTID_lmPwdHistory=0x000900a0, */
+/* IDL: DRSUAPI_ATTID_logonCount=0x000900a9, */
+/* IDL: DRSUAPI_ATTID_systemPossSuperiors=0x000900c3, */
+/* IDL: DRSUAPI_ATTID_systemMayContain=0x000900c4, */
+/* IDL: DRSUAPI_ATTID_systemMustContain=0x000900c5, */
+/* IDL: DRSUAPI_ATTID_systemAuxiliaryClass=0x000900c6, */
+/* IDL: DRSUAPI_ATTID_sAMAccountName=0x000900dd, */
+/* IDL: DRSUAPI_ATTID_sAMAccountType=0x0009012e, */
+/* IDL: DRSUAPI_ATTID_options=0x00090133, */
+/* IDL: DRSUAPI_ATTID_fSMORoleOwner=0x00090171, */
+/* IDL: DRSUAPI_ATTID_systemFlags=0x00090177, */
+/* IDL: DRSUAPI_ATTID_trustAttributes=0x000901d6, */
+/* IDL: DRSUAPI_ATTID_trustParent=0x000901d7, */
+/* IDL: DRSUAPI_ATTID_flatName=0x000901ff, */
+/* IDL: DRSUAPI_ATTID_serverReference=0x00090203, */
+/* IDL: DRSUAPI_ATTID_serverReferenceBL=0x00090204, */
+/* IDL: DRSUAPI_ATTID_nonSecurityMember=0x00090212, */
+/* IDL: DRSUAPI_ATTID_initialAuthIncoming=0x0009021b, */
+/* IDL: DRSUAPI_ATTID_initialAuthOutgoing=0x0009021c, */
+/* IDL: DRSUAPI_ATTID_wellKnownObjects=0x0009026a, */
+/* IDL: DRSUAPI_ATTID_dNSHostName=0x0009026b, */
+/* IDL: DRSUAPI_ATTID_isMemberOfPartialAttributeSet=0x0009027f, */
+/* IDL: DRSUAPI_ATTID_managedBy=0x0009028d, */
+/* IDL: DRSUAPI_ATTID_userPrincipalName=0x00090290, */
+/* IDL: DRSUAPI_ATTID_groupType=0x000902ee, */
+/* IDL: DRSUAPI_ATTID_servicePrincipalName=0x00090303, */
+/* IDL: DRSUAPI_ATTID_lastKnownParent=0x0009030d, */
+/* IDL: DRSUAPI_ATTID_objectCategory=0x0009030e, */
+/* IDL: DRSUAPI_ATTID_gPLink=0x0009037b, */
+/* IDL: DRSUAPI_ATTID_transportAddressAttribute=0x0009037f, */
+/* IDL: DRSUAPI_ATTID_schemaInfo=0x0009054e, */
+/* IDL: DRSUAPI_ATTID_msDS_Behavior_Version=0x000905b3, */
+/* IDL: DRSUAPI_ATTID_msDS_TrustForestTrustInfo=0x000906a6, */
+/* IDL: DRSUAPI_ATTID_msDS_KeyVersionNumber=0x000906f6, */
+/* IDL: DRSUAPI_ATTID_msDS_NonMembers=0x00090701, */
+/* IDL: DRSUAPI_ATTID_msDS_MembersForAzRole=0x0009070e, */
+/* IDL: DRSUAPI_ATTID_msDS_HasDomainNCs=0x0009071c, */
+/* IDL: DRSUAPI_ATTID_msDS_hasMasterNCs=0x0009072c, */
+/* IDL: DRSUAPI_ATTID_msDS_NeverRevealGroup=0x00090786, */
+/* IDL: DRSUAPI_ATTID_msDS_RevealOnDemandGroup=0x00090788, */
+/* IDL: DRSUAPI_ATTID_msDS_SupportedEncryptionTypes=0x000907ab, */
+/* IDL: DRSUAPI_ATTID_msDS_HostServiceAccount=0x00090808, */
+/* IDL: DRSUAPI_ATTID_isRecycled=0x0009080a, */
+/* IDL: DRSUAPI_ATTID_INVALID=0xFFFFFFFF, */
+/* IDL: } */
+
+int
+drsuapi_dissect_enum_DsAttributeId(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
+{
+ guint32 parameter=0;
+ if (param) {
+ parameter = *param;
+ }
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, ¶meter);
+ if (param) {
+ *param = parameter;
+ }
+ return offset;
+}
+
+
+/* IDL: struct { */
+/* IDL: [value(1)] uint32 version; */
+/* IDL: [value(0)] uint32 reserved1; */
+/* IDL: [range(1,0x100000)] uint32 num_attids; */
+/* IDL: [size_is(num_attids)] drsuapi_DsAttributeId attids[*]; */
+/* IDL: } */
+
+static int
+drsuapi_dissect_element_DsPartialAttributeSet_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsPartialAttributeSet_version, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsPartialAttributeSet_reserved1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsPartialAttributeSet_reserved1, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsPartialAttributeSet_num_attids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsPartialAttributeSet_num_attids, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsPartialAttributeSet_attids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsPartialAttributeSet_attids_);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsPartialAttributeSet_attids_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_enum_DsAttributeId(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsPartialAttributeSet_attids, 0);
+
+ return offset;
+}
+
+int
+drsuapi_dissect_struct_DsPartialAttributeSet(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, 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, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsPartialAttributeSet);
+ }
+
+ offset = drsuapi_dissect_element_DsPartialAttributeSet_version(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsPartialAttributeSet_reserved1(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsPartialAttributeSet_num_attids(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsPartialAttributeSet_attids(tvb, offset, pinfo, tree, di, drep);
+
+
+ proto_item_set_len(item, offset-old_offset);
+
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_4_BYTES;
+ }
+
+ return offset;
+}
+
+
+/* IDL: struct { */
+/* IDL: GUID destination_dsa_guid; */
+/* IDL: GUID source_dsa_invocation_id; */
+/* IDL: [ref] drsuapi_DsReplicaObjectIdentifier *naming_context; */
+/* IDL: drsuapi_DsReplicaHighWaterMark highwatermark; */
+/* IDL: [unique(1)] drsuapi_DsReplicaCursorCtrEx *uptodateness_vector; */
+/* IDL: drsuapi_DrsOptions replica_flags; */
+/* IDL: uint32 max_object_count; */
+/* IDL: uint32 max_ndr_size; */
+/* IDL: drsuapi_DsExtendedOperation extended_op; */
+/* IDL: hyper fsmo_info; */
+/* IDL: [unique(1)] drsuapi_DsPartialAttributeSet *partial_attribute_set; */
+/* IDL: [unique(1)] drsuapi_DsPartialAttributeSet *partial_attribute_set_ex; */
+/* IDL: drsuapi_DsReplicaOIDMapping_Ctr mapping_ctr; */
+/* IDL: } */
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest8_destination_dsa_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest8_destination_dsa_guid, NULL);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest8_source_dsa_invocation_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest8_source_dsa_invocation_id, NULL);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest8_naming_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesRequest8_naming_context_, NDR_POINTER_REF, "Pointer to Naming Context (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsGetNCChangesRequest8_naming_context);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest8_naming_context_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest8_naming_context,0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest8_highwatermark(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsReplicaHighWaterMark(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest8_highwatermark,0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest8_uptodateness_vector(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesRequest8_uptodateness_vector_, NDR_POINTER_UNIQUE, "Pointer to Uptodateness Vector (drsuapi_DsReplicaCursorCtrEx)",hf_drsuapi_drsuapi_DsGetNCChangesRequest8_uptodateness_vector);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest8_uptodateness_vector_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsReplicaCursorCtrEx(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest8_uptodateness_vector,0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest8_replica_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_bitmap_DrsOptions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest8_replica_flags, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest8_max_object_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest8_max_object_count, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest8_max_ndr_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest8_max_ndr_size, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest8_extended_op(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_enum_DsExtendedOperation(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest8_extended_op, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest8_fsmo_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest8_fsmo_info, NULL);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest8_partial_attribute_set(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesRequest8_partial_attribute_set_, NDR_POINTER_UNIQUE, "Pointer to Partial Attribute Set (drsuapi_DsPartialAttributeSet)",hf_drsuapi_drsuapi_DsGetNCChangesRequest8_partial_attribute_set);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest8_partial_attribute_set_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsPartialAttributeSet(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest8_partial_attribute_set,0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest8_partial_attribute_set_ex(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesRequest8_partial_attribute_set_ex_, NDR_POINTER_UNIQUE, "Pointer to Partial Attribute Set Ex (drsuapi_DsPartialAttributeSet)",hf_drsuapi_drsuapi_DsGetNCChangesRequest8_partial_attribute_set_ex);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest8_partial_attribute_set_ex_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsPartialAttributeSet(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest8_partial_attribute_set_ex,0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest8_mapping_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsReplicaOIDMapping_Ctr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest8_mapping_ctr,0);
+
+ return offset;
+}
+
+int
+drsuapi_dissect_struct_DsGetNCChangesRequest8(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+{
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+
+ ALIGN_TO_8_BYTES;
+
+ old_offset = offset;
+
+ if (parent_tree) {
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetNCChangesRequest8);
+ }
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest8_destination_dsa_guid(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest8_source_dsa_invocation_id(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest8_naming_context(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest8_highwatermark(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest8_uptodateness_vector(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest8_replica_flags(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest8_max_object_count(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest8_max_ndr_size(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest8_extended_op(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest8_fsmo_info(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest8_partial_attribute_set(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest8_partial_attribute_set_ex(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest8_mapping_ctr(tvb, offset, pinfo, tree, di, drep);
+
+
+ proto_item_set_len(item, offset-old_offset);
+
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_8_BYTES;
+ }
+
+ return offset;
+}
+
+
+/* IDL: struct { */
+/* IDL: GUID destination_dsa_guid; */
+/* IDL: GUID source_dsa_invocation_id; */
+/* IDL: [ref] drsuapi_DsReplicaObjectIdentifier *naming_context; */
+/* IDL: drsuapi_DsReplicaHighWaterMark highwatermark; */
+/* IDL: [unique(1)] drsuapi_DsReplicaCursorCtrEx *uptodateness_vector; */
+/* IDL: drsuapi_DrsOptions replica_flags; */
+/* IDL: uint32 max_object_count; */
+/* IDL: uint32 max_ndr_size; */
+/* IDL: drsuapi_DsExtendedOperation extended_op; */
+/* IDL: hyper fsmo_info; */
+/* IDL: [unique(1)] drsuapi_DsPartialAttributeSet *partial_attribute_set; */
+/* IDL: [unique(1)] drsuapi_DsPartialAttributeSet *partial_attribute_set_ex; */
+/* IDL: drsuapi_DsReplicaOIDMapping_Ctr mapping_ctr; */
+/* IDL: drsuapi_DrsMoreOptions more_flags; */
+/* IDL: } */
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest10_destination_dsa_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest10_destination_dsa_guid, NULL);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest10_source_dsa_invocation_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest10_source_dsa_invocation_id, NULL);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest10_naming_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesRequest10_naming_context_, NDR_POINTER_REF, "Pointer to Naming Context (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsGetNCChangesRequest10_naming_context);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest10_naming_context_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest10_naming_context,0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest10_highwatermark(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsReplicaHighWaterMark(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest10_highwatermark,0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest10_uptodateness_vector(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesRequest10_uptodateness_vector_, NDR_POINTER_UNIQUE, "Pointer to Uptodateness Vector (drsuapi_DsReplicaCursorCtrEx)",hf_drsuapi_drsuapi_DsGetNCChangesRequest10_uptodateness_vector);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest10_uptodateness_vector_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsReplicaCursorCtrEx(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest10_uptodateness_vector,0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest10_replica_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_bitmap_DrsOptions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest10_replica_flags, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest10_max_object_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest10_max_object_count, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest10_max_ndr_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest10_max_ndr_size, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest10_extended_op(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_enum_DsExtendedOperation(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest10_extended_op, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest10_fsmo_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest10_fsmo_info, NULL);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest10_partial_attribute_set(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesRequest10_partial_attribute_set_, NDR_POINTER_UNIQUE, "Pointer to Partial Attribute Set (drsuapi_DsPartialAttributeSet)",hf_drsuapi_drsuapi_DsGetNCChangesRequest10_partial_attribute_set);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest10_partial_attribute_set_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsPartialAttributeSet(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest10_partial_attribute_set,0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest10_partial_attribute_set_ex(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesRequest10_partial_attribute_set_ex_, NDR_POINTER_UNIQUE, "Pointer to Partial Attribute Set Ex (drsuapi_DsPartialAttributeSet)",hf_drsuapi_drsuapi_DsGetNCChangesRequest10_partial_attribute_set_ex);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest10_partial_attribute_set_ex_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsPartialAttributeSet(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest10_partial_attribute_set_ex,0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest10_mapping_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsReplicaOIDMapping_Ctr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest10_mapping_ctr,0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest10_more_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_bitmap_DrsMoreOptions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest10_more_flags, 0);
+
+ return offset;
+}
+
+int
+drsuapi_dissect_struct_DsGetNCChangesRequest10(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+{
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+
+ ALIGN_TO_8_BYTES;
+
+ old_offset = offset;
+
+ if (parent_tree) {
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetNCChangesRequest10);
+ }
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest10_destination_dsa_guid(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest10_source_dsa_invocation_id(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest10_naming_context(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest10_highwatermark(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest10_uptodateness_vector(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest10_replica_flags(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest10_max_object_count(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest10_max_ndr_size(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest10_extended_op(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest10_fsmo_info(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest10_partial_attribute_set(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest10_partial_attribute_set_ex(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest10_mapping_ctr(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest10_more_flags(tvb, offset, pinfo, tree, di, drep);
+
+
+ proto_item_set_len(item, offset-old_offset);
+
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_8_BYTES;
+ }
+
+ return offset;
+}
+
+
+/* IDL: struct { */
+/* IDL: GUID destination_dsa_guid; */
+/* IDL: GUID source_dsa_invocation_id; */
+/* IDL: [ref] drsuapi_DsReplicaObjectIdentifier *naming_context; */
+/* IDL: drsuapi_DsReplicaHighWaterMark highwatermark; */
+/* IDL: [unique(1)] drsuapi_DsReplicaCursorCtrEx *uptodateness_vector; */
+/* IDL: drsuapi_DrsOptions replica_flags; */
+/* IDL: uint32 max_object_count; */
+/* IDL: uint32 max_ndr_size; */
+/* IDL: drsuapi_DsExtendedOperation extended_op; */
+/* IDL: hyper fsmo_info; */
+/* IDL: [unique(1)] drsuapi_DsPartialAttributeSet *partial_attribute_set; */
+/* IDL: [unique(1)] drsuapi_DsPartialAttributeSet *partial_attribute_set_ex; */
+/* IDL: drsuapi_DsReplicaOIDMapping_Ctr mapping_ctr; */
+/* IDL: drsuapi_DrsMoreOptions more_flags; */
+/* IDL: GUID correlationID; */
+/* IDL: [unique(1)] [value(NULL)] drsuapi_VAR_SIZE_BUFFER_WITH_VERSION *reserved_buffer; */
+/* IDL: } */
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest11_destination_dsa_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest11_destination_dsa_guid, NULL);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest11_source_dsa_invocation_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest11_source_dsa_invocation_id, NULL);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest11_naming_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesRequest11_naming_context_, NDR_POINTER_REF, "Pointer to Naming Context (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsGetNCChangesRequest11_naming_context);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest11_naming_context_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest11_naming_context,0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest11_highwatermark(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsReplicaHighWaterMark(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest11_highwatermark,0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest11_uptodateness_vector(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesRequest11_uptodateness_vector_, NDR_POINTER_UNIQUE, "Pointer to Uptodateness Vector (drsuapi_DsReplicaCursorCtrEx)",hf_drsuapi_drsuapi_DsGetNCChangesRequest11_uptodateness_vector);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest11_uptodateness_vector_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsReplicaCursorCtrEx(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest11_uptodateness_vector,0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest11_replica_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_bitmap_DrsOptions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest11_replica_flags, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest11_max_object_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest11_max_object_count, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest11_max_ndr_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest11_max_ndr_size, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest11_extended_op(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_enum_DsExtendedOperation(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest11_extended_op, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest11_fsmo_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest11_fsmo_info, NULL);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest11_partial_attribute_set(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesRequest11_partial_attribute_set_, NDR_POINTER_UNIQUE, "Pointer to Partial Attribute Set (drsuapi_DsPartialAttributeSet)",hf_drsuapi_drsuapi_DsGetNCChangesRequest11_partial_attribute_set);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest11_partial_attribute_set_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsPartialAttributeSet(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest11_partial_attribute_set,0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest11_partial_attribute_set_ex(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesRequest11_partial_attribute_set_ex_, NDR_POINTER_UNIQUE, "Pointer to Partial Attribute Set Ex (drsuapi_DsPartialAttributeSet)",hf_drsuapi_drsuapi_DsGetNCChangesRequest11_partial_attribute_set_ex);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest11_partial_attribute_set_ex_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsPartialAttributeSet(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest11_partial_attribute_set_ex,0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest11_mapping_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsReplicaOIDMapping_Ctr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest11_mapping_ctr,0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest11_more_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_bitmap_DrsMoreOptions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest11_more_flags, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest11_correlationID(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest11_correlationID, NULL);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest11_reserved_buffer(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesRequest11_reserved_buffer_, NDR_POINTER_UNIQUE, "Pointer to Reserved Buffer (drsuapi_VAR_SIZE_BUFFER_WITH_VERSION)",hf_drsuapi_drsuapi_DsGetNCChangesRequest11_reserved_buffer);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest11_reserved_buffer_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_VAR_SIZE_BUFFER_WITH_VERSION(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest11_reserved_buffer,0);
+
+ return offset;
+}
+
+int
+drsuapi_dissect_struct_DsGetNCChangesRequest11(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+{
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+
+ ALIGN_TO_8_BYTES;
+
+ old_offset = offset;
+
+ if (parent_tree) {
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetNCChangesRequest11);
+ }
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest11_destination_dsa_guid(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest11_source_dsa_invocation_id(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest11_naming_context(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest11_highwatermark(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest11_uptodateness_vector(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest11_replica_flags(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest11_max_object_count(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest11_max_ndr_size(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest11_extended_op(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest11_fsmo_info(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest11_partial_attribute_set(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest11_partial_attribute_set_ex(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest11_mapping_ctr(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest11_more_flags(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest11_correlationID(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest11_reserved_buffer(tvb, offset, pinfo, tree, di, drep);
+
+
+ proto_item_set_len(item, offset-old_offset);
+
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_8_BYTES;
+ }
+
+ return offset;
+}
+
+
+/* IDL: [switch_type(uint32)] union { */
+/* IDL: [case(5)] [case(5)] drsuapi_DsGetNCChangesRequest5 req5; */
+/* IDL: [case(8)] [case(8)] drsuapi_DsGetNCChangesRequest8 req8; */
+/* IDL: [case(10)] [case(10)] drsuapi_DsGetNCChangesRequest10 req10; */
+/* IDL: [case(11)] [case(11)] drsuapi_DsGetNCChangesRequest11 req11; */
+/* IDL: } */
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest_req5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsGetNCChangesRequest5(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest_req5,0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest_req8(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsGetNCChangesRequest8(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest_req8,0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest_req10(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsGetNCChangesRequest10(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest_req10,0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesRequest_req11(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsGetNCChangesRequest11(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest_req11,0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_DsGetNCChangesRequest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+{
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+ guint32 level;
+
+ old_offset = offset;
+ if (parent_tree) {
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsGetNCChangesRequest, &item, "drsuapi_DsGetNCChangesRequest");
+ }
+
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
+ ALIGN_TO_8_BYTES;
+
+ switch(level) {
+ case 5:
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest_req5(tvb, offset, pinfo, tree, di, drep);
+ break;
+
+ case 8:
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest_req8(tvb, offset, pinfo, tree, di, drep);
+ break;
+
+ case 10:
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest_req10(tvb, offset, pinfo, tree, di, drep);
+ break;
+
+ case 11:
+ offset = drsuapi_dissect_element_DsGetNCChangesRequest_req11(tvb, offset, pinfo, tree, di, drep);
+ break;
+ }
+ proto_item_set_len(item, offset-old_offset);
+
+
+ return offset;
+}
+
+/* IDL: struct { */
+/* IDL: GUID source_dsa_invocation_id; */
+/* IDL: hyper highest_usn; */
+/* IDL: NTTIME last_sync_success; */
+/* IDL: } */
+
+static int
+drsuapi_dissect_element_DsReplicaCursor2_source_dsa_invocation_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursor2_source_dsa_invocation_id, NULL);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaCursor2_highest_usn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursor2_highest_usn, NULL);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaCursor2_last_sync_success(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursor2_last_sync_success);
+
+ return offset;
+}
+
+int
+drsuapi_dissect_struct_DsReplicaCursor2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+{
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+
+ ALIGN_TO_8_BYTES;
+
+ old_offset = offset;
+
+ if (parent_tree) {
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaCursor2);
+ }
+
+ offset = drsuapi_dissect_element_DsReplicaCursor2_source_dsa_invocation_id(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaCursor2_highest_usn(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaCursor2_last_sync_success(tvb, offset, pinfo, tree, di, drep);
+
+
+ proto_item_set_len(item, offset-old_offset);
+
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_8_BYTES;
+ }
+
+ return offset;
+}
+
+
+/* IDL: struct { */
+/* IDL: [value(2)] uint32 version; */
+/* IDL: [value(0)] uint32 reserved1; */
+/* IDL: [range(0,0x100000)] uint32 count; */
+/* IDL: [value(0)] uint32 reserved2; */
+/* IDL: [size_is(count)] drsuapi_DsReplicaCursor2 cursors[*]; */
+/* IDL: } */
+
+static int
+drsuapi_dissect_element_DsReplicaCursor2CtrEx_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursor2CtrEx_version, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaCursor2CtrEx_reserved1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursor2CtrEx_reserved1, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaCursor2CtrEx_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursor2CtrEx_count, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaCursor2CtrEx_reserved2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursor2CtrEx_reserved2, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaCursor2CtrEx_cursors(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaCursor2CtrEx_cursors_);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaCursor2CtrEx_cursors_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsReplicaCursor2(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaCursor2CtrEx_cursors,0);
+
+ return offset;
+}
+
+int
+drsuapi_dissect_struct_DsReplicaCursor2CtrEx(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+{
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+
+ ALIGN_TO_8_BYTES;
+
+ old_offset = offset;
+
+ if (parent_tree) {
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaCursor2CtrEx);
+ }
+
+ offset = drsuapi_dissect_element_DsReplicaCursor2CtrEx_version(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaCursor2CtrEx_reserved1(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaCursor2CtrEx_count(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaCursor2CtrEx_reserved2(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaCursor2CtrEx_cursors(tvb, offset, pinfo, tree, di, drep);
+
+
+ proto_item_set_len(item, offset-old_offset);
+
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_8_BYTES;
+ }
+
+ return offset;
+}
+
+
+/* IDL: struct { */
+/* IDL: [range(0,26214400)] [value(ndr_size_DATA_BLOB(0,blob,0))] uint32 __ndr_size; */
+/* IDL: [unique(1)] DATA_BLOB *blob; */
+/* IDL: } */
+
+static int
+drsuapi_dissect_element_DsAttributeValue___ndr_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAttributeValue___ndr_size, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsAttributeValue_blob(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAttributeValue_blob_, NDR_POINTER_UNIQUE, "Pointer to Blob (DATA_BLOB)",hf_drsuapi_drsuapi_DsAttributeValue_blob);
+
+ return offset;
+}
+
+int
+drsuapi_dissect_struct_DsAttributeValue(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+{
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+
+ ALIGN_TO_5_BYTES;
+
+ old_offset = offset;
+
+ if (parent_tree) {
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsAttributeValue);
+ }
+
+ offset = drsuapi_dissect_element_DsAttributeValue___ndr_size(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsAttributeValue_blob(tvb, offset, pinfo, tree, di, drep);
+
+
+ proto_item_set_len(item, offset-old_offset);
+
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_5_BYTES;
+ }
+
+ return offset;
+}
+
+
+/* IDL: struct { */
+/* IDL: [range(0,10485760)] uint32 num_values; */
+/* IDL: [size_is(num_values)] [unique(1)] drsuapi_DsAttributeValue *values; */
+/* IDL: } */
+
+static int
+drsuapi_dissect_element_DsAttributeValueCtr_num_values(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAttributeValueCtr_num_values, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsAttributeValueCtr_values(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAttributeValueCtr_values_, NDR_POINTER_UNIQUE, "Pointer to Values (drsuapi_DsAttributeValue)",hf_drsuapi_drsuapi_DsAttributeValueCtr_values);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsAttributeValueCtr_values_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAttributeValueCtr_values__);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsAttributeValueCtr_values__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsAttributeValue(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAttributeValueCtr_values,0);
+
+ return offset;
+}
+
+int
+drsuapi_dissect_struct_DsAttributeValueCtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+{
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+
+ ALIGN_TO_5_BYTES;
+
+ old_offset = offset;
+
+ if (parent_tree) {
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsAttributeValueCtr);
+ }
+
+ offset = drsuapi_dissect_element_DsAttributeValueCtr_num_values(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsAttributeValueCtr_values(tvb, offset, pinfo, tree, di, drep);
+
+
+ proto_item_set_len(item, offset-old_offset);
+
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_5_BYTES;
+ }
+
+ return offset;
+}
+
+
+/* IDL: struct { */
+/* IDL: [value(ndr_size_drsuapi_DsReplicaObjectIdentifier3(r,ndr->flags))] uint32 __ndr_size; */
+/* IDL: [value(ndr_size_dom_sid28(&sid,ndr->flags))] uint32 __ndr_size_sid; */
+/* IDL: GUID guid; */
+/* IDL: dom_sid28 sid; */
+/* IDL: [value(strlen_m(dn))] uint32 __ndr_size_dn; */
+/* IDL: [charset(UTF16)] uint16 dn[__ndr_size_dn+1]; */
+/* IDL: } */
+
+static int
+drsuapi_dissect_element_DsReplicaObjectIdentifier3___ndr_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjectIdentifier3___ndr_size, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaObjectIdentifier3___ndr_size_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjectIdentifier3___ndr_size_sid, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaObjectIdentifier3_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjectIdentifier3_guid, NULL);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaObjectIdentifier3_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+
+ di->hf_index = hf_drsuapi_drsuapi_DsReplicaObjectIdentifier3_sid;
+
+ offset = dissect_ndr_nt_SID28(tvb, offset, pinfo, tree, di, drep);
+
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaObjectIdentifier3___ndr_size_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjectIdentifier3___ndr_size_dn, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaObjectIdentifier3_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ /* TODO drsuapi_dissect_element_DsReplicaObjectIdentifier3_dn IS_INLINE */
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaObjectIdentifier3_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjectIdentifier3_dn, 0);
+
+ return offset;
+}
+
+int
+drsuapi_dissect_struct_DsReplicaObjectIdentifier3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, 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, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaObjectIdentifier3);
+ }
+
+ offset = drsuapi_dissect_element_DsReplicaObjectIdentifier3___ndr_size(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaObjectIdentifier3___ndr_size_sid(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaObjectIdentifier3_guid(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaObjectIdentifier3_sid(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaObjectIdentifier3___ndr_size_dn(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaObjectIdentifier3_dn(tvb, offset, pinfo, tree, di, drep);
+
+
+ proto_item_set_len(item, offset-old_offset);
+
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_4_BYTES;
+ }
+
+ return offset;
+}
+
+
+/* IDL: struct { */
+/* IDL: [value(ndr_size_drsuapi_DsReplicaObjectIdentifier3Binary_without_Binary(r,ndr->flags))] uint32 __ndr_size; */
+/* IDL: [value(ndr_size_dom_sid28(&sid,ndr->flags))] uint32 __ndr_size_sid; */
+/* IDL: GUID guid; */
+/* IDL: dom_sid28 sid; */
+/* IDL: [value(strlen_m(dn))] uint32 __ndr_size_dn; */
+/* IDL: [charset(UTF16)] uint16 dn[__ndr_size_dn+1]; */
+/* IDL: [value(binary.length+4)] uint32 __ndr_size_binary; */
+/* IDL: [flag(LIBNDR_FLAG_REMAINING)] DATA_BLOB binary; */
+/* IDL: } */
+
+static int
+drsuapi_dissect_element_DsReplicaObjectIdentifier3Binary___ndr_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjectIdentifier3Binary___ndr_size, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaObjectIdentifier3Binary___ndr_size_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjectIdentifier3Binary___ndr_size_sid, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaObjectIdentifier3Binary_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjectIdentifier3Binary_guid, NULL);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaObjectIdentifier3Binary_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+
+ di->hf_index = hf_drsuapi_drsuapi_DsReplicaObjectIdentifier3Binary_sid;
+
+ offset = dissect_ndr_nt_SID28(tvb, offset, pinfo, tree, di, drep);
+
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaObjectIdentifier3Binary___ndr_size_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjectIdentifier3Binary___ndr_size_dn, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaObjectIdentifier3Binary_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ /* TODO drsuapi_dissect_element_DsReplicaObjectIdentifier3Binary_dn IS_INLINE */
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaObjectIdentifier3Binary_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjectIdentifier3Binary_dn, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaObjectIdentifier3Binary___ndr_size_binary(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjectIdentifier3Binary___ndr_size_binary, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaObjectIdentifier3Binary_binary(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_datablob(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjectIdentifier3Binary_binary, 1);
+
+ return offset;
+}
+
+int
+drsuapi_dissect_struct_DsReplicaObjectIdentifier3Binary(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, 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, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaObjectIdentifier3Binary);
+ }
+
+ offset = drsuapi_dissect_element_DsReplicaObjectIdentifier3Binary___ndr_size(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaObjectIdentifier3Binary___ndr_size_sid(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaObjectIdentifier3Binary_guid(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaObjectIdentifier3Binary_sid(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaObjectIdentifier3Binary___ndr_size_dn(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaObjectIdentifier3Binary_dn(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaObjectIdentifier3Binary___ndr_size_binary(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaObjectIdentifier3Binary_binary(tvb, offset, pinfo, tree, di, drep);
+
+
+ proto_item_set_len(item, offset-old_offset);
+
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_4_BYTES;
+ }
+
+ return offset;
+}
+
+
+/* IDL: struct { */
+/* IDL: drsuapi_DsAttributeId attid; */
+/* IDL: drsuapi_DsAttributeValueCtr value_ctr; */
+/* IDL: } */
+
+static int
+drsuapi_dissect_element_DsReplicaAttribute_value_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsAttributeValueCtr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaAttribute_value_ctr,0);
+
+ return offset;
+}
+
+
+/* IDL: struct { */
+/* IDL: [range(0,1048576)] uint32 num_attributes; */
+/* IDL: [size_is(num_attributes)] [unique(1)] drsuapi_DsReplicaAttribute *attributes; */
+/* IDL: } */
+
+static int
+drsuapi_dissect_element_DsReplicaAttributeCtr_num_attributes(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttributeCtr_num_attributes, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaAttributeCtr_attributes(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAttributeCtr_attributes_, NDR_POINTER_UNIQUE, "Pointer to Attributes (drsuapi_DsReplicaAttribute)",hf_drsuapi_drsuapi_DsReplicaAttributeCtr_attributes);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaAttributeCtr_attributes_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAttributeCtr_attributes__);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaAttributeCtr_attributes__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsReplicaAttribute(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaAttributeCtr_attributes,0);
+
+ return offset;
+}
+
+int
+drsuapi_dissect_struct_DsReplicaAttributeCtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+{
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+
+ ALIGN_TO_5_BYTES;
+
+ old_offset = offset;
+
+ if (parent_tree) {
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaAttributeCtr);
+ }
+
+ offset = drsuapi_dissect_element_DsReplicaAttributeCtr_num_attributes(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaAttributeCtr_attributes(tvb, offset, pinfo, tree, di, drep);
+
+
+ proto_item_set_len(item, offset-old_offset);
+
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_5_BYTES;
+ }
+
+ return offset;
+}
+
+
+/* IDL: bitmap { */
+/* IDL: DRSUAPI_DS_REPLICA_OBJECT_FROM_MASTER = 0x00000001 , */
+/* IDL: DRSUAPI_DS_REPLICA_OBJECT_DYNAMIC = 0x00000002 , */
+/* IDL: DRSUAPI_DS_REPLICA_OBJECT_REMOTE_MODIFY = 0x00010000 , */
+/* IDL: } */
+
+int
+drsuapi_dissect_bitmap_DsReplicaObjectFlags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+{
+ proto_item *item;
+ static int * const drsuapi_drsuapi_DsReplicaObjectFlags_fields[] = {
+ &hf_drsuapi_drsuapi_DsReplicaObjectFlags_DRSUAPI_DS_REPLICA_OBJECT_FROM_MASTER,
+ &hf_drsuapi_drsuapi_DsReplicaObjectFlags_DRSUAPI_DS_REPLICA_OBJECT_DYNAMIC,
+ &hf_drsuapi_drsuapi_DsReplicaObjectFlags_DRSUAPI_DS_REPLICA_OBJECT_REMOTE_MODIFY,
+ NULL
+ };
+ guint32 flags;
+ ALIGN_TO_4_BYTES;
+
+ item = proto_tree_add_bitmask_with_flags(parent_tree, tvb, offset, hf_index,
+ ett_drsuapi_drsuapi_DsReplicaObjectFlags, drsuapi_drsuapi_DsReplicaObjectFlags_fields, DREP_ENC_INTEGER(drep), BMT_NO_FALSE);
+
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, parent_tree, di, drep, -1, &flags);
+
+ if (!flags)
+ proto_item_append_text(item, ": (No values set)");
+
+ if (flags & (~0x00010003)) {
+ flags &= (~0x00010003);
+ proto_item_append_text(item, "Unknown bitmap value 0x%x", flags);
+ }
+
+ return offset;
+}
+
+
+/* IDL: struct { */
+/* IDL: [unique(1)] drsuapi_DsReplicaObjectIdentifier *identifier; */
+/* IDL: drsuapi_DsReplicaObjectFlags flags; */
+/* IDL: drsuapi_DsReplicaAttributeCtr attribute_ctr; */
+/* IDL: } */
+
+static int
+drsuapi_dissect_element_DsReplicaObject_identifier(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaObject_identifier_, NDR_POINTER_UNIQUE, "Pointer to Identifier (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsReplicaObject_identifier);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaObject_identifier_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaObject_identifier,0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaObject_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_bitmap_DsReplicaObjectFlags(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObject_flags, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaObject_attribute_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsReplicaAttributeCtr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaObject_attribute_ctr,0);
+
+ return offset;
+}
+
+
+/* IDL: struct { */
+/* IDL: uint32 version; */
+/* IDL: NTTIME_1sec originating_change_time; */
+/* IDL: GUID originating_invocation_id; */
+/* IDL: hyper originating_usn; */
+/* IDL: } */
+
+static int
+drsuapi_dissect_element_DsReplicaMetaData_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaMetaData_version, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaMetaData_originating_change_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaMetaData_originating_change_time);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaMetaData_originating_invocation_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaMetaData_originating_invocation_id, NULL);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaMetaData_originating_usn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaMetaData_originating_usn, NULL);
+
+ return offset;
+}
+
+int
+drsuapi_dissect_struct_DsReplicaMetaData(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+{
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+
+ ALIGN_TO_8_BYTES;
+
+ old_offset = offset;
+
+ if (parent_tree) {
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaMetaData);
+ }
+
+ offset = drsuapi_dissect_element_DsReplicaMetaData_version(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaMetaData_originating_change_time(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaMetaData_originating_invocation_id(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaMetaData_originating_usn(tvb, offset, pinfo, tree, di, drep);
+
+
+ proto_item_set_len(item, offset-old_offset);
+
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_8_BYTES;
+ }
+
+ return offset;
+}
+
+
+/* IDL: struct { */
+/* IDL: [range(0,1048576)] uint32 count; */
+/* IDL: [size_is(count)] drsuapi_DsReplicaMetaData meta_data[*]; */
+/* IDL: } */
+
+static int
+drsuapi_dissect_element_DsReplicaMetaDataCtr_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaMetaDataCtr_count, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaMetaDataCtr_meta_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaMetaDataCtr_meta_data_);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaMetaDataCtr_meta_data_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsReplicaMetaData(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaMetaDataCtr_meta_data,0);
+
+ return offset;
+}
+
+int
+drsuapi_dissect_struct_DsReplicaMetaDataCtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+{
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+
+ ALIGN_TO_8_BYTES;
+
+ old_offset = offset;
+
+ if (parent_tree) {
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaMetaDataCtr);
+ }
+
+ offset = drsuapi_dissect_element_DsReplicaMetaDataCtr_count(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaMetaDataCtr_meta_data(tvb, offset, pinfo, tree, di, drep);
+
+
+ proto_item_set_len(item, offset-old_offset);
+
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_8_BYTES;
+ }
+
+ return offset;
+}
+
+
+/* IDL: struct { */
+/* IDL: [max_recursion(20000)] [unique(1)] drsuapi_DsReplicaObjectListItemEx *next_object; */
+/* IDL: drsuapi_DsReplicaObject object; */
+/* IDL: uint32 is_nc_prefix; */
+/* IDL: [unique(1)] GUID *parent_object_guid; */
+/* IDL: [unique(1)] drsuapi_DsReplicaMetaDataCtr *meta_data_ctr; */
+/* IDL: } */
+
+static int
+drsuapi_dissect_element_DsReplicaObjectListItemEx_next_object(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest10_max_object_count, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaObjectListItemEx_next_object_, NDR_POINTER_UNIQUE, "Pointer to Next Object (drsuapi_DsReplicaObjectListItemEx)",hf_drsuapi_drsuapi_DsReplicaObjectListItemEx_next_object);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest10_max_ndr_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaObjectListItemEx_object(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest10_max_ndr_size, 0);
+ offset = drsuapi_dissect_struct_DsReplicaObject(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaObjectListItemEx_object,0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest10_extended_op(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaObjectListItemEx_is_nc_prefix(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_enum_DsExtendedOperation(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest10_extended_op, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjectListItemEx_is_nc_prefix, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest10_fsmo_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaObjectListItemEx_parent_object_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest10_fsmo_info, NULL);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaObjectListItemEx_parent_object_guid_, NDR_POINTER_UNIQUE, "Pointer to Parent Object Guid (GUID)",hf_drsuapi_drsuapi_DsReplicaObjectListItemEx_parent_object_guid);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest10_partial_attribute_set(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaObjectListItemEx_parent_object_guid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesRequest10_partial_attribute_set_, NDR_POINTER_UNIQUE, "Pointer to Partial Attribute Set (drsuapi_DsPartialAttributeSet)",hf_drsuapi_drsuapi_DsGetNCChangesRequest10_partial_attribute_set);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjectListItemEx_parent_object_guid, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest10_partial_attribute_set_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaObjectListItemEx_meta_data_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsPartialAttributeSet(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest10_partial_attribute_set,0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaObjectListItemEx_meta_data_ctr_, NDR_POINTER_UNIQUE, "Pointer to Meta Data Ctr (drsuapi_DsReplicaMetaDataCtr)",hf_drsuapi_drsuapi_DsReplicaObjectListItemEx_meta_data_ctr);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest10_partial_attribute_set_ex(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaObjectListItemEx_meta_data_ctr_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesRequest10_partial_attribute_set_ex_, NDR_POINTER_UNIQUE, "Pointer to Partial Attribute Set Ex (drsuapi_DsPartialAttributeSet)",hf_drsuapi_drsuapi_DsGetNCChangesRequest10_partial_attribute_set_ex);
+ offset = drsuapi_dissect_struct_DsReplicaMetaDataCtr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaObjectListItemEx_meta_data_ctr,0);
+
+ return offset;
+}
+
+int
+drsuapi_dissect_struct_DsReplicaObjectListItemEx(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+{
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+
+ ALIGN_TO_5_BYTES;
+
+ old_offset = offset;
+
+ if (parent_tree) {
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaObjectListItemEx);
+ }
+
+ offset = drsuapi_dissect_element_DsReplicaObjectListItemEx_next_object(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaObjectListItemEx_object(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaObjectListItemEx_is_nc_prefix(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaObjectListItemEx_parent_object_guid(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaObjectListItemEx_meta_data_ctr(tvb, offset, pinfo, tree, di, drep);
+
+
+ proto_item_set_len(item, offset-old_offset);
+
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_5_BYTES;
+ }
+
+ return offset;
+}
+
+
+/* IDL: struct { */
+/* IDL: GUID source_dsa_guid; */
+/* IDL: GUID source_dsa_invocation_id; */
+/* IDL: [unique(1)] drsuapi_DsReplicaObjectIdentifier *naming_context; */
+/* IDL: drsuapi_DsReplicaHighWaterMark old_highwatermark; */
+/* IDL: drsuapi_DsReplicaHighWaterMark new_highwatermark; */
+/* IDL: [unique(1)] drsuapi_DsReplicaCursorCtrEx *uptodateness_vector; */
+/* IDL: drsuapi_DsReplicaOIDMapping_Ctr mapping_ctr; */
+/* IDL: drsuapi_DsExtendedError extended_ret; */
+/* IDL: uint32 object_count; */
+/* IDL: [value(ndr_size_drsuapi_DsGetNCChangesCtr1(r,ndr->flags)+55)] uint32 __ndr_size; */
+/* IDL: [unique(1)] drsuapi_DsReplicaObjectListItemEx *first_object; */
+/* IDL: uint32 more_data; */
+/* IDL: } */
+
+static int
+drsuapi_dissect_element_DsGetNCChangesCtr1_source_dsa_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr1_source_dsa_guid, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest10_partial_attribute_set_ex_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesCtr1_source_dsa_invocation_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsPartialAttributeSet(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest10_partial_attribute_set_ex,0);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr1_source_dsa_invocation_id, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest10_mapping_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesCtr1_naming_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaOIDMapping_Ctr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest10_mapping_ctr,0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesCtr1_naming_context_, NDR_POINTER_UNIQUE, "Pointer to Naming Context (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsGetNCChangesCtr1_naming_context);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest10_more_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesCtr1_naming_context_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_bitmap_DrsMoreOptions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest10_more_flags, 0);
+ offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr1_naming_context,0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesCtr1_old_highwatermark(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsReplicaHighWaterMark(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr1_old_highwatermark,0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesCtr1_new_highwatermark(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsReplicaHighWaterMark(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr1_new_highwatermark,0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesCtr1_uptodateness_vector(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesCtr1_uptodateness_vector_, NDR_POINTER_UNIQUE, "Pointer to Uptodateness Vector (drsuapi_DsReplicaCursorCtrEx)",hf_drsuapi_drsuapi_DsGetNCChangesCtr1_uptodateness_vector);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesCtr1_uptodateness_vector_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsReplicaCursorCtrEx(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr1_uptodateness_vector,0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesCtr1_mapping_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsReplicaOIDMapping_Ctr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr1_mapping_ctr,0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesCtr1_extended_ret(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_enum_DsExtendedError(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr1_extended_ret, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesCtr1_object_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr1_object_count, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesCtr1___ndr_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr1___ndr_size, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesCtr1_first_object(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesCtr1_first_object_, NDR_POINTER_UNIQUE, "Pointer to First Object (drsuapi_DsReplicaObjectListItemEx)",hf_drsuapi_drsuapi_DsGetNCChangesCtr1_first_object);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesCtr1_first_object_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsReplicaObjectListItemEx(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr1_first_object,0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesCtr1_more_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr1_more_data, 0);
return offset;
}
int
-drsuapi_dissect_struct_DsGetNCChangesRequest10(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsGetNCChangesCtr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetNCChangesRequest10);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetNCChangesCtr1);
}
- offset = drsuapi_dissect_element_DsGetNCChangesRequest10_destination_dsa_guid(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr1_source_dsa_guid(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesRequest10_source_dsa_invocation_id(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr1_source_dsa_invocation_id(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesRequest10_naming_context(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr1_naming_context(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesRequest10_highwatermark(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr1_old_highwatermark(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesRequest10_uptodateness_vector(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr1_new_highwatermark(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesRequest10_replica_flags(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr1_uptodateness_vector(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesRequest10_max_object_count(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr1_mapping_ctr(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesRequest10_max_ndr_size(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr1_extended_ret(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesRequest10_extended_op(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr1_object_count(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesRequest10_fsmo_info(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr1___ndr_size(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesRequest10_partial_attribute_set(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr1_first_object(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesRequest10_partial_attribute_set_ex(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr1_more_data(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesRequest10_mapping_ctr(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesRequest10_more_flags(tvb, offset, pinfo, tree, di, drep);
+ proto_item_set_len(item, offset-old_offset);
+
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_8_BYTES;
+ }
+
+ return offset;
+}
+
+
+/* IDL: bitmap { */
+/* IDL: DRSUAPI_DS_LINKED_ATTRIBUTE_FLAG_ACTIVE = 0x00000001 , */
+/* IDL: } */
+
+int
+drsuapi_dissect_bitmap_DsLinkedAttributeFlags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+{
+ proto_item *item;
+ static int * const drsuapi_drsuapi_DsLinkedAttributeFlags_fields[] = {
+ &hf_drsuapi_drsuapi_DsLinkedAttributeFlags_DRSUAPI_DS_LINKED_ATTRIBUTE_FLAG_ACTIVE,
+ NULL
+ };
+ guint32 flags;
+ ALIGN_TO_4_BYTES;
+ item = proto_tree_add_bitmask_with_flags(parent_tree, tvb, offset, hf_index,
+ ett_drsuapi_drsuapi_DsLinkedAttributeFlags, drsuapi_drsuapi_DsLinkedAttributeFlags_fields, DREP_ENC_INTEGER(drep), BMT_NO_FALSE);
- proto_item_set_len(item, offset-old_offset);
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, parent_tree, di, drep, -1, &flags);
+ if (!flags)
+ proto_item_append_text(item, ": (No values set)");
- if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_8_BYTES;
+ if (flags & (~0x00000001)) {
+ flags &= (~0x00000001);
+ proto_item_append_text(item, "Unknown bitmap value 0x%x", flags);
}
return offset;
/* IDL: struct { */
-/* IDL: GUID destination_dsa_guid; */
-/* IDL: GUID source_dsa_invocation_id; */
-/* IDL: [ref] drsuapi_DsReplicaObjectIdentifier *naming_context; */
-/* IDL: drsuapi_DsReplicaHighWaterMark highwatermark; */
-/* IDL: [unique(1)] drsuapi_DsReplicaCursorCtrEx *uptodateness_vector; */
-/* IDL: drsuapi_DrsOptions replica_flags; */
-/* IDL: uint32 max_object_count; */
-/* IDL: uint32 max_ndr_size; */
-/* IDL: drsuapi_DsExtendedOperation extended_op; */
-/* IDL: hyper fsmo_info; */
-/* IDL: [unique(1)] drsuapi_DsPartialAttributeSet *partial_attribute_set; */
-/* IDL: [unique(1)] drsuapi_DsPartialAttributeSet *partial_attribute_set_ex; */
-/* IDL: drsuapi_DsReplicaOIDMapping_Ctr mapping_ctr; */
-/* IDL: drsuapi_DrsMoreOptions more_flags; */
-/* IDL: GUID correlationID; */
-/* IDL: [unique(1)] [value(NULL)] drsuapi_VAR_SIZE_BUFFER_WITH_VERSION *reserved_buffer; */
+/* IDL: [unique(1)] drsuapi_DsReplicaObjectIdentifier *identifier; */
+/* IDL: drsuapi_DsAttributeId attid; */
+/* IDL: drsuapi_DsAttributeValue value; */
+/* IDL: drsuapi_DsLinkedAttributeFlags flags; */
+/* IDL: NTTIME_1sec originating_add_time; */
+/* IDL: drsuapi_DsReplicaMetaData meta_data; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsGetNCChangesRequest11_destination_dsa_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaLinkedAttribute_identifier(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest11_destination_dsa_guid, NULL);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaLinkedAttribute_identifier_, NDR_POINTER_UNIQUE, "Pointer to Identifier (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsReplicaLinkedAttribute_identifier);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest11_source_dsa_invocation_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaLinkedAttribute_identifier_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest11_source_dsa_invocation_id, NULL);
+ offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaLinkedAttribute_identifier,0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest11_naming_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaLinkedAttribute_attid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesRequest11_naming_context_, NDR_POINTER_REF, "Pointer to Naming Context (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsGetNCChangesRequest11_naming_context);
+ offset = drsuapi_dissect_enum_DsAttributeId(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaLinkedAttribute_attid, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest11_naming_context_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaLinkedAttribute_value(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest11_naming_context,0);
+ offset = drsuapi_dissect_struct_DsAttributeValue(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaLinkedAttribute_value,0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest11_highwatermark(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaLinkedAttribute_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaHighWaterMark(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest11_highwatermark,0);
+ offset = drsuapi_dissect_bitmap_DsLinkedAttributeFlags(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaLinkedAttribute_flags, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest11_uptodateness_vector(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaLinkedAttribute_originating_add_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesRequest11_uptodateness_vector_, NDR_POINTER_UNIQUE, "Pointer to Uptodateness Vector (drsuapi_DsReplicaCursorCtrEx)",hf_drsuapi_drsuapi_DsGetNCChangesRequest11_uptodateness_vector);
+ offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaLinkedAttribute_originating_add_time);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest11_uptodateness_vector_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaLinkedAttribute_meta_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaCursorCtrEx(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest11_uptodateness_vector,0);
+ offset = drsuapi_dissect_struct_DsReplicaMetaData(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaLinkedAttribute_meta_data,0);
return offset;
}
-static int
-drsuapi_dissect_element_DsGetNCChangesRequest11_replica_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+int
+drsuapi_dissect_struct_DsReplicaLinkedAttribute(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- offset = drsuapi_dissect_bitmap_DrsOptions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest11_replica_flags, 0);
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
- return offset;
-}
+ ALIGN_TO_8_BYTES;
-static int
-drsuapi_dissect_element_DsGetNCChangesRequest11_max_object_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest11_max_object_count, 0);
+ old_offset = offset;
- return offset;
-}
+ if (parent_tree) {
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaLinkedAttribute);
+ }
-static int
-drsuapi_dissect_element_DsGetNCChangesRequest11_max_ndr_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest11_max_ndr_size, 0);
+ offset = drsuapi_dissect_element_DsReplicaLinkedAttribute_identifier(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaLinkedAttribute_attid(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaLinkedAttribute_value(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaLinkedAttribute_flags(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaLinkedAttribute_originating_add_time(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaLinkedAttribute_meta_data(tvb, offset, pinfo, tree, di, drep);
+
+
+ proto_item_set_len(item, offset-old_offset);
+
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_8_BYTES;
+ }
return offset;
}
+
+/* IDL: struct { */
+/* IDL: [unique(1)] drsuapi_DsReplicaObjectIdentifier *identifier; */
+/* IDL: drsuapi_DsAttributeId attid; */
+/* IDL: drsuapi_DsAttributeValue value; */
+/* IDL: drsuapi_DsLinkedAttributeFlags flags; */
+/* IDL: NTTIME_1sec originating_add_time; */
+/* IDL: drsuapi_DsReplicaMetaData meta_data; */
+/* IDL: uint32 unused1; */
+/* IDL: uint32 unused2; */
+/* IDL: uint32 unused3; */
+/* IDL: NTTIME_1sec timeExpired; */
+/* IDL: } */
+
static int
-drsuapi_dissect_element_DsGetNCChangesRequest11_extended_op(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaLinkedAttribute3_identifier(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_enum_DsExtendedOperation(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest11_extended_op, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaLinkedAttribute3_identifier_, NDR_POINTER_UNIQUE, "Pointer to Identifier (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsReplicaLinkedAttribute3_identifier);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest11_fsmo_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaLinkedAttribute3_identifier_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest11_fsmo_info, NULL);
+ offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaLinkedAttribute3_identifier,0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest11_partial_attribute_set(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaLinkedAttribute3_attid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesRequest11_partial_attribute_set_, NDR_POINTER_UNIQUE, "Pointer to Partial Attribute Set (drsuapi_DsPartialAttributeSet)",hf_drsuapi_drsuapi_DsGetNCChangesRequest11_partial_attribute_set);
+ offset = drsuapi_dissect_enum_DsAttributeId(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaLinkedAttribute3_attid, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest11_partial_attribute_set_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaLinkedAttribute3_value(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsPartialAttributeSet(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest11_partial_attribute_set,0);
+ offset = drsuapi_dissect_struct_DsAttributeValue(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaLinkedAttribute3_value,0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest11_partial_attribute_set_ex(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaLinkedAttribute3_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesRequest11_partial_attribute_set_ex_, NDR_POINTER_UNIQUE, "Pointer to Partial Attribute Set Ex (drsuapi_DsPartialAttributeSet)",hf_drsuapi_drsuapi_DsGetNCChangesRequest11_partial_attribute_set_ex);
+ offset = drsuapi_dissect_bitmap_DsLinkedAttributeFlags(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaLinkedAttribute3_flags, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest11_partial_attribute_set_ex_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaLinkedAttribute3_originating_add_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsPartialAttributeSet(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest11_partial_attribute_set_ex,0);
+ offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaLinkedAttribute3_originating_add_time);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest11_mapping_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaLinkedAttribute3_meta_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaOIDMapping_Ctr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest11_mapping_ctr,0);
+ offset = drsuapi_dissect_struct_DsReplicaMetaData(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaLinkedAttribute3_meta_data,0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest11_more_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaLinkedAttribute3_unused1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_bitmap_DrsMoreOptions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest11_more_flags, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaLinkedAttribute3_unused1, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest11_correlationID(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaLinkedAttribute3_unused2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesRequest11_correlationID, NULL);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaLinkedAttribute3_unused2, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest11_reserved_buffer(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaLinkedAttribute3_unused3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesRequest11_reserved_buffer_, NDR_POINTER_UNIQUE, "Pointer to Reserved Buffer (drsuapi_VAR_SIZE_BUFFER_WITH_VERSION)",hf_drsuapi_drsuapi_DsGetNCChangesRequest11_reserved_buffer);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaLinkedAttribute3_unused3, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest11_reserved_buffer_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaLinkedAttribute3_timeExpired(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_VAR_SIZE_BUFFER_WITH_VERSION(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest11_reserved_buffer,0);
+ offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaLinkedAttribute3_timeExpired);
return offset;
}
int
-drsuapi_dissect_struct_DsGetNCChangesRequest11(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsReplicaLinkedAttribute3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetNCChangesRequest11);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaLinkedAttribute3);
}
- offset = drsuapi_dissect_element_DsGetNCChangesRequest11_destination_dsa_guid(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaLinkedAttribute3_identifier(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesRequest11_source_dsa_invocation_id(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaLinkedAttribute3_attid(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesRequest11_naming_context(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaLinkedAttribute3_value(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesRequest11_highwatermark(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaLinkedAttribute3_flags(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesRequest11_uptodateness_vector(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaLinkedAttribute3_originating_add_time(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesRequest11_replica_flags(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaLinkedAttribute3_meta_data(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesRequest11_max_object_count(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaLinkedAttribute3_unused1(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesRequest11_max_ndr_size(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaLinkedAttribute3_unused2(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesRequest11_extended_op(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaLinkedAttribute3_unused3(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesRequest11_fsmo_info(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaLinkedAttribute3_timeExpired(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesRequest11_partial_attribute_set(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesRequest11_partial_attribute_set_ex(tvb, offset, pinfo, tree, di, drep);
+ proto_item_set_len(item, offset-old_offset);
+
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_8_BYTES;
+ }
+
+ return offset;
+}
+
+
+/* IDL: struct { */
+/* IDL: GUID source_dsa_guid; */
+/* IDL: GUID source_dsa_invocation_id; */
+/* IDL: [unique(1)] drsuapi_DsReplicaObjectIdentifier *naming_context; */
+/* IDL: drsuapi_DsReplicaHighWaterMark old_highwatermark; */
+/* IDL: drsuapi_DsReplicaHighWaterMark new_highwatermark; */
+/* IDL: [unique(1)] drsuapi_DsReplicaCursor2CtrEx *uptodateness_vector; */
+/* IDL: drsuapi_DsReplicaOIDMapping_Ctr mapping_ctr; */
+/* IDL: drsuapi_DsExtendedError extended_ret; */
+/* IDL: uint32 object_count; */
+/* IDL: [value(ndr_size_drsuapi_DsGetNCChangesCtr6(r,ndr->flags)+55)] uint32 __ndr_size; */
+/* IDL: [unique(1)] drsuapi_DsReplicaObjectListItemEx *first_object; */
+/* IDL: uint32 more_data; */
+/* IDL: uint32 nc_object_count; */
+/* IDL: uint32 nc_linked_attributes_count; */
+/* IDL: [range(0,1048576)] uint32 linked_attributes_count; */
+/* IDL: [size_is(linked_attributes_count)] [unique(1)] drsuapi_DsReplicaLinkedAttribute *linked_attributes; */
+/* IDL: WERROR drs_error; */
+/* IDL: } */
+
+static int
+drsuapi_dissect_element_DsGetNCChangesCtr6_source_dsa_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr6_source_dsa_guid, NULL);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesCtr6_source_dsa_invocation_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr6_source_dsa_invocation_id, NULL);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesCtr6_naming_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesCtr6_naming_context_, NDR_POINTER_UNIQUE, "Pointer to Naming Context (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsGetNCChangesCtr6_naming_context);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetNCChangesCtr6_naming_context_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr6_naming_context,0);
- offset = drsuapi_dissect_element_DsGetNCChangesRequest11_mapping_ctr(tvb, offset, pinfo, tree, di, drep);
+ return offset;
+}
- offset = drsuapi_dissect_element_DsGetNCChangesRequest11_more_flags(tvb, offset, pinfo, tree, di, drep);
+static int
+drsuapi_dissect_element_DsGetNCChangesCtr6_old_highwatermark(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsReplicaHighWaterMark(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr6_old_highwatermark,0);
- offset = drsuapi_dissect_element_DsGetNCChangesRequest11_correlationID(tvb, offset, pinfo, tree, di, drep);
+ return offset;
+}
- offset = drsuapi_dissect_element_DsGetNCChangesRequest11_reserved_buffer(tvb, offset, pinfo, tree, di, drep);
+static int
+drsuapi_dissect_element_DsGetNCChangesCtr6_new_highwatermark(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsReplicaHighWaterMark(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr6_new_highwatermark,0);
+ return offset;
+}
- proto_item_set_len(item, offset-old_offset);
+static int
+drsuapi_dissect_element_DsGetNCChangesCtr6_uptodateness_vector(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesCtr6_uptodateness_vector_, NDR_POINTER_UNIQUE, "Pointer to Uptodateness Vector (drsuapi_DsReplicaCursor2CtrEx)",hf_drsuapi_drsuapi_DsGetNCChangesCtr6_uptodateness_vector);
+ return offset;
+}
- if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_8_BYTES;
- }
+static int
+drsuapi_dissect_element_DsGetNCChangesCtr6_uptodateness_vector_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsReplicaCursor2CtrEx(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr6_uptodateness_vector,0);
return offset;
}
+static int
+drsuapi_dissect_element_DsGetNCChangesCtr6_mapping_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsReplicaOIDMapping_Ctr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr6_mapping_ctr,0);
-/* IDL: [switch_type(uint32)] union { */
-/* IDL: [case(5)] [case(5)] drsuapi_DsGetNCChangesRequest5 req5; */
-/* IDL: [case(8)] [case(8)] drsuapi_DsGetNCChangesRequest8 req8; */
-/* IDL: [case(10)] [case(10)] drsuapi_DsGetNCChangesRequest10 req10; */
-/* IDL: [case(11)] [case(11)] drsuapi_DsGetNCChangesRequest11 req11; */
-/* IDL: } */
+ return offset;
+}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest_req5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesCtr6_extended_ret(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsGetNCChangesRequest5(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest_req5,0);
+ offset = drsuapi_dissect_enum_DsExtendedError(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr6_extended_ret, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest_req8(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesCtr6_object_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsGetNCChangesRequest8(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest_req8,0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr6_object_count, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest_req10(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesCtr6___ndr_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsGetNCChangesRequest10(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest_req10,0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr6___ndr_size, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesRequest_req11(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesCtr6_first_object(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsGetNCChangesRequest11(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesRequest_req11,0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesCtr6_first_object_, NDR_POINTER_UNIQUE, "Pointer to First Object (drsuapi_DsReplicaObjectListItemEx)",hf_drsuapi_drsuapi_DsGetNCChangesCtr6_first_object);
return offset;
}
static int
-drsuapi_dissect_DsGetNCChangesRequest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_element_DsGetNCChangesCtr6_first_object_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
- guint32 level;
+ offset = drsuapi_dissect_struct_DsReplicaObjectListItemEx(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr6_first_object,0);
- old_offset = offset;
- if (parent_tree) {
- tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsGetNCChangesRequest, &item, "drsuapi_DsGetNCChangesRequest");
- }
+ return offset;
+}
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
- ALIGN_TO_8_BYTES;
+static int
+drsuapi_dissect_element_DsGetNCChangesCtr6_more_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr6_more_data, 0);
- switch(level) {
- case 5:
- offset = drsuapi_dissect_element_DsGetNCChangesRequest_req5(tvb, offset, pinfo, tree, di, drep);
- break;
+ return offset;
+}
- case 8:
- offset = drsuapi_dissect_element_DsGetNCChangesRequest_req8(tvb, offset, pinfo, tree, di, drep);
- break;
+static int
+drsuapi_dissect_element_DsGetNCChangesCtr6_nc_object_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr6_nc_object_count, 0);
- case 10:
- offset = drsuapi_dissect_element_DsGetNCChangesRequest_req10(tvb, offset, pinfo, tree, di, drep);
- break;
+ return offset;
+}
- case 11:
- offset = drsuapi_dissect_element_DsGetNCChangesRequest_req11(tvb, offset, pinfo, tree, di, drep);
- break;
- }
- proto_item_set_len(item, offset-old_offset);
+static int
+drsuapi_dissect_element_DsGetNCChangesCtr6_nc_linked_attributes_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr6_nc_linked_attributes_count, 0);
+
+ return offset;
+}
+static int
+drsuapi_dissect_element_DsGetNCChangesCtr6_linked_attributes_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr6_linked_attributes_count, 0);
return offset;
}
-/* IDL: struct { */
-/* IDL: GUID source_dsa_invocation_id; */
-/* IDL: hyper highest_usn; */
-/* IDL: NTTIME last_sync_success; */
-/* IDL: } */
+static int
+drsuapi_dissect_element_DsGetNCChangesCtr6_linked_attributes(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesCtr6_linked_attributes_, NDR_POINTER_UNIQUE, "Pointer to Linked Attributes (drsuapi_DsReplicaLinkedAttribute)",hf_drsuapi_drsuapi_DsGetNCChangesCtr6_linked_attributes);
+
+ return offset;
+}
static int
-drsuapi_dissect_element_DsReplicaCursor2_source_dsa_invocation_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesCtr6_linked_attributes_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursor2_source_dsa_invocation_id, NULL);
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesCtr6_linked_attributes__);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaCursor2_highest_usn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesCtr6_linked_attributes__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursor2_highest_usn, NULL);
+ offset = drsuapi_dissect_struct_DsReplicaLinkedAttribute(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr6_linked_attributes,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaCursor2_last_sync_success(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesCtr6_drs_error(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursor2_last_sync_success);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr6_drs_error, 0);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaCursor2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsGetNCChangesCtr6(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaCursor2);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetNCChangesCtr6);
}
- offset = drsuapi_dissect_element_DsReplicaCursor2_source_dsa_invocation_id(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr6_source_dsa_guid(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaCursor2_highest_usn(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr6_source_dsa_invocation_id(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaCursor2_last_sync_success(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr6_naming_context(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr6_old_highwatermark(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr6_new_highwatermark(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr6_uptodateness_vector(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr6_mapping_ctr(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr6_extended_ret(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr6_object_count(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr6___ndr_size(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr6_first_object(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr6_more_data(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr6_nc_object_count(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr6_nc_linked_attributes_count(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr6_linked_attributes_count(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr6_linked_attributes(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr6_drs_error(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
/* IDL: struct { */
-/* IDL: [value(2)] uint32 version; */
-/* IDL: [value(0)] uint32 reserved1; */
-/* IDL: [range(0,0x100000)] uint32 count; */
-/* IDL: [value(0)] uint32 reserved2; */
-/* IDL: [size_is(count)] drsuapi_DsReplicaCursor2 cursors[*]; */
+/* IDL: GUID source_dsa_guid; */
+/* IDL: GUID source_dsa_invocation_id; */
+/* IDL: [unique(1)] drsuapi_DsReplicaObjectIdentifier *naming_context; */
+/* IDL: drsuapi_DsReplicaHighWaterMark old_highwatermark; */
+/* IDL: drsuapi_DsReplicaHighWaterMark new_highwatermark; */
+/* IDL: [unique(1)] drsuapi_DsReplicaCursor2CtrEx *uptodateness_vector; */
+/* IDL: drsuapi_DsReplicaOIDMapping_Ctr mapping_ctr; */
+/* IDL: drsuapi_DsExtendedError extended_ret; */
+/* IDL: uint32 object_count; */
+/* IDL: [value(ndr_size_drsuapi_DsGetNCChangesCtr9(r,ndr->flags)+55)] uint32 __ndr_size; */
+/* IDL: [unique(1)] drsuapi_DsReplicaObjectListItemEx *first_object; */
+/* IDL: uint32 more_data; */
+/* IDL: uint32 nc_object_count; */
+/* IDL: uint32 nc_linked_attributes_count; */
+/* IDL: [range(0,1048576)] uint32 linked_attributes_count; */
+/* IDL: [size_is(linked_attributes_count)] [unique(1)] drsuapi_DsReplicaLinkedAttribute3 *linked_attributes; */
+/* IDL: WERROR drs_error; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaCursor2CtrEx_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesCtr9_source_dsa_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursor2CtrEx_version, 0);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr9_source_dsa_guid, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaCursor2CtrEx_reserved1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesCtr9_source_dsa_invocation_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursor2CtrEx_reserved1, 0);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr9_source_dsa_invocation_id, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaCursor2CtrEx_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesCtr9_naming_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursor2CtrEx_count, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesCtr9_naming_context_, NDR_POINTER_UNIQUE, "Pointer to Naming Context (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsGetNCChangesCtr9_naming_context);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaCursor2CtrEx_reserved2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesCtr9_naming_context_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursor2CtrEx_reserved2, 0);
+ offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr9_naming_context,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaCursor2CtrEx_cursors(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesCtr9_old_highwatermark(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaCursor2CtrEx_cursors_);
+ offset = drsuapi_dissect_struct_DsReplicaHighWaterMark(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr9_old_highwatermark,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaCursor2CtrEx_cursors_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesCtr9_new_highwatermark(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaCursor2(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaCursor2CtrEx_cursors,0);
+ offset = drsuapi_dissect_struct_DsReplicaHighWaterMark(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr9_new_highwatermark,0);
return offset;
}
-int
-drsuapi_dissect_struct_DsReplicaCursor2CtrEx(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+static int
+drsuapi_dissect_element_DsGetNCChangesCtr9_uptodateness_vector(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
-
- ALIGN_TO_8_BYTES;
-
- old_offset = offset;
-
- if (parent_tree) {
- item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaCursor2CtrEx);
- }
-
- offset = drsuapi_dissect_element_DsReplicaCursor2CtrEx_version(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaCursor2CtrEx_reserved1(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaCursor2CtrEx_count(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaCursor2CtrEx_reserved2(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaCursor2CtrEx_cursors(tvb, offset, pinfo, tree, di, drep);
-
-
- proto_item_set_len(item, offset-old_offset);
-
-
- if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_8_BYTES;
- }
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesCtr9_uptodateness_vector_, NDR_POINTER_UNIQUE, "Pointer to Uptodateness Vector (drsuapi_DsReplicaCursor2CtrEx)",hf_drsuapi_drsuapi_DsGetNCChangesCtr9_uptodateness_vector);
return offset;
}
-
-/* IDL: struct { */
-/* IDL: [range(0,26214400)] [value(ndr_size_DATA_BLOB(0,blob,0))] uint32 __ndr_size; */
-/* IDL: [unique(1)] DATA_BLOB *blob; */
-/* IDL: } */
-
static int
-drsuapi_dissect_element_DsAttributeValue___ndr_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesCtr9_uptodateness_vector_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAttributeValue___ndr_size, 0);
+ offset = drsuapi_dissect_struct_DsReplicaCursor2CtrEx(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr9_uptodateness_vector,0);
return offset;
}
static int
-drsuapi_dissect_element_DsAttributeValue_blob(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesCtr9_mapping_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAttributeValue_blob_, NDR_POINTER_UNIQUE, "Pointer to Blob (DATA_BLOB)",hf_drsuapi_drsuapi_DsAttributeValue_blob);
+ offset = drsuapi_dissect_struct_DsReplicaOIDMapping_Ctr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr9_mapping_ctr,0);
return offset;
}
-int
-drsuapi_dissect_struct_DsAttributeValue(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+static int
+drsuapi_dissect_element_DsGetNCChangesCtr9_extended_ret(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
-
- ALIGN_TO_5_BYTES;
-
- old_offset = offset;
-
- if (parent_tree) {
- item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsAttributeValue);
- }
-
- offset = drsuapi_dissect_element_DsAttributeValue___ndr_size(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsAttributeValue_blob(tvb, offset, pinfo, tree, di, drep);
-
-
- proto_item_set_len(item, offset-old_offset);
-
-
- if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_5_BYTES;
- }
+ offset = drsuapi_dissect_enum_DsExtendedError(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr9_extended_ret, 0);
return offset;
}
-
-/* IDL: struct { */
-/* IDL: [range(0,10485760)] uint32 num_values; */
-/* IDL: [size_is(num_values)] [unique(1)] drsuapi_DsAttributeValue *values; */
-/* IDL: } */
-
static int
-drsuapi_dissect_element_DsAttributeValueCtr_num_values(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesCtr9_object_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAttributeValueCtr_num_values, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr9_object_count, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsAttributeValueCtr_values(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesCtr9___ndr_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAttributeValueCtr_values_, NDR_POINTER_UNIQUE, "Pointer to Values (drsuapi_DsAttributeValue)",hf_drsuapi_drsuapi_DsAttributeValueCtr_values);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr9___ndr_size, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsAttributeValueCtr_values_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesCtr9_first_object(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAttributeValueCtr_values__);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesCtr9_first_object_, NDR_POINTER_UNIQUE, "Pointer to First Object (drsuapi_DsReplicaObjectListItemEx)",hf_drsuapi_drsuapi_DsGetNCChangesCtr9_first_object);
return offset;
}
static int
-drsuapi_dissect_element_DsAttributeValueCtr_values__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesCtr9_first_object_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsAttributeValue(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAttributeValueCtr_values,0);
+ offset = drsuapi_dissect_struct_DsReplicaObjectListItemEx(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr9_first_object,0);
return offset;
}
-int
-drsuapi_dissect_struct_DsAttributeValueCtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+static int
+drsuapi_dissect_element_DsGetNCChangesCtr9_more_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
-
- ALIGN_TO_5_BYTES;
-
- old_offset = offset;
-
- if (parent_tree) {
- item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsAttributeValueCtr);
- }
-
- offset = drsuapi_dissect_element_DsAttributeValueCtr_num_values(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsAttributeValueCtr_values(tvb, offset, pinfo, tree, di, drep);
-
-
- proto_item_set_len(item, offset-old_offset);
-
-
- if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_5_BYTES;
- }
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr9_more_data, 0);
return offset;
}
-
-/* IDL: struct { */
-/* IDL: [value(ndr_size_drsuapi_DsReplicaObjectIdentifier3(r,ndr->flags))] uint32 __ndr_size; */
-/* IDL: [value(ndr_size_dom_sid28(&sid,ndr->flags))] uint32 __ndr_size_sid; */
-/* IDL: GUID guid; */
-/* IDL: dom_sid28 sid; */
-/* IDL: [value(strlen_m(dn))] uint32 __ndr_size_dn; */
-/* IDL: [charset(UTF16)] uint16 dn[__ndr_size_dn+1]; */
-/* IDL: } */
-
static int
-drsuapi_dissect_element_DsReplicaObjectIdentifier3___ndr_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesCtr9_nc_object_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjectIdentifier3___ndr_size, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr9_nc_object_count, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObjectIdentifier3___ndr_size_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesCtr9_nc_linked_attributes_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjectIdentifier3___ndr_size_sid, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr9_nc_linked_attributes_count, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObjectIdentifier3_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesCtr9_linked_attributes_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjectIdentifier3_guid, NULL);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr9_linked_attributes_count, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObjectIdentifier3_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesCtr9_linked_attributes(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
-
- di->hf_index = hf_drsuapi_drsuapi_DsReplicaObjectIdentifier3_sid;
-
- offset = dissect_ndr_nt_SID28(tvb, offset, pinfo, tree, di, drep);
-
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesCtr9_linked_attributes_, NDR_POINTER_UNIQUE, "Pointer to Linked Attributes (drsuapi_DsReplicaLinkedAttribute3)",hf_drsuapi_drsuapi_DsGetNCChangesCtr9_linked_attributes);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObjectIdentifier3___ndr_size_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesCtr9_linked_attributes_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjectIdentifier3___ndr_size_dn, 0);
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesCtr9_linked_attributes__);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObjectIdentifier3_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesCtr9_linked_attributes__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- /* TODO drsuapi_dissect_element_DsReplicaObjectIdentifier3_dn IS_INLINE */
+ offset = drsuapi_dissect_struct_DsReplicaLinkedAttribute3(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr9_linked_attributes,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObjectIdentifier3_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesCtr9_drs_error(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjectIdentifier3_dn, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr9_drs_error, 0);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaObjectIdentifier3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsGetNCChangesCtr9(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_4_BYTES;
+ ALIGN_TO_8_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaObjectIdentifier3);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetNCChangesCtr9);
}
- offset = drsuapi_dissect_element_DsReplicaObjectIdentifier3___ndr_size(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr9_source_dsa_guid(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaObjectIdentifier3___ndr_size_sid(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr9_source_dsa_invocation_id(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaObjectIdentifier3_guid(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr9_naming_context(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaObjectIdentifier3_sid(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr9_old_highwatermark(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaObjectIdentifier3___ndr_size_dn(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr9_new_highwatermark(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaObjectIdentifier3_dn(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr9_uptodateness_vector(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr9_mapping_ctr(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr9_extended_ret(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr9_object_count(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr9___ndr_size(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr9_first_object(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr9_more_data(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr9_nc_object_count(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr9_nc_linked_attributes_count(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr9_linked_attributes_count(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr9_linked_attributes(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr9_drs_error(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_4_BYTES;
+ ALIGN_TO_8_BYTES;
}
return offset;
}
-/* IDL: struct { */
-/* IDL: [value(ndr_size_drsuapi_DsReplicaObjectIdentifier3Binary_without_Binary(r,ndr->flags))] uint32 __ndr_size; */
-/* IDL: [value(ndr_size_dom_sid28(&sid,ndr->flags))] uint32 __ndr_size_sid; */
-/* IDL: GUID guid; */
-/* IDL: dom_sid28 sid; */
-/* IDL: [value(strlen_m(dn))] uint32 __ndr_size_dn; */
-/* IDL: [charset(UTF16)] uint16 dn[__ndr_size_dn+1]; */
-/* IDL: [value(binary.length+4)] uint32 __ndr_size_binary; */
-/* IDL: [flag(LIBNDR_FLAG_REMAINING)] DATA_BLOB binary; */
+/* IDL: [switch_type(uint32)] union { */
+/* IDL: [case(1)] [case(1)] drsuapi_DsGetNCChangesCtr1 ctr1; */
+/* IDL: [case(6)] [case(6)] drsuapi_DsGetNCChangesCtr6 ctr6; */
+/* IDL: [case(9)] [case(9)] drsuapi_DsGetNCChangesCtr9 ctr9; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaObjectIdentifier3Binary___ndr_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesCtr_ctr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjectIdentifier3Binary___ndr_size, 0);
+ offset = drsuapi_dissect_struct_DsGetNCChangesCtr1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr_ctr1,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObjectIdentifier3Binary___ndr_size_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesCtr_ctr6(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjectIdentifier3Binary___ndr_size_sid, 0);
+ offset = drsuapi_dissect_struct_DsGetNCChangesCtr6(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr_ctr6,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObjectIdentifier3Binary_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChangesCtr_ctr9(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjectIdentifier3Binary_guid, NULL);
+ offset = drsuapi_dissect_struct_DsGetNCChangesCtr9(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr_ctr9,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObjectIdentifier3Binary_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsGetNCChangesCtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
-
- di->hf_index = hf_drsuapi_drsuapi_DsReplicaObjectIdentifier3Binary_sid;
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+ guint32 level;
+
+ old_offset = offset;
+ if (parent_tree) {
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsGetNCChangesCtr, &item, "drsuapi_DsGetNCChangesCtr");
+ }
+
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
+ ALIGN_TO_8_BYTES;
+
+ switch(level) {
+ case 1:
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr_ctr1(tvb, offset, pinfo, tree, di, drep);
+ break;
+
+ case 6:
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr_ctr6(tvb, offset, pinfo, tree, di, drep);
+ break;
+
+ case 9:
+ offset = drsuapi_dissect_element_DsGetNCChangesCtr_ctr9(tvb, offset, pinfo, tree, di, drep);
+ break;
+ }
+ proto_item_set_len(item, offset-old_offset);
- offset = dissect_ndr_nt_SID28(tvb, offset, pinfo, tree, di, drep);
-
return offset;
}
+/* IDL: struct { */
+/* IDL: [ref] drsuapi_DsReplicaObjectIdentifier *naming_context; */
+/* IDL: [charset(DOS)] [ref] uint8 *dest_dsa_dns_name; */
+/* IDL: GUID dest_dsa_guid; */
+/* IDL: drsuapi_DrsOptions options; */
+/* IDL: } */
+
static int
-drsuapi_dissect_element_DsReplicaObjectIdentifier3Binary___ndr_size_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaUpdateRefsRequest1_naming_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjectIdentifier3Binary___ndr_size_dn, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaUpdateRefsRequest1_naming_context_, NDR_POINTER_REF, "Pointer to Naming Context (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsReplicaUpdateRefsRequest1_naming_context);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObjectIdentifier3Binary_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaUpdateRefsRequest1_naming_context_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- /* TODO drsuapi_dissect_element_DsReplicaObjectIdentifier3Binary_dn IS_INLINE */
+ offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaUpdateRefsRequest1_naming_context,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObjectIdentifier3Binary_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaUpdateRefsRequest1_dest_dsa_dns_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaUpdateRefsRequest1_dest_dsa_dns_name_, NDR_POINTER_REF, "Pointer to Dest Dsa Dns Name (uint8)",hf_drsuapi_drsuapi_DsReplicaUpdateRefsRequest1_dest_dsa_dns_name);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaUpdateRefsRequest1_dest_dsa_dns_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjectIdentifier3Binary_dn, 0);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint8), hf_drsuapi_drsuapi_DsReplicaUpdateRefsRequest1_dest_dsa_dns_name, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObjectIdentifier3Binary___ndr_size_binary(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaUpdateRefsRequest1_dest_dsa_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjectIdentifier3Binary___ndr_size_binary, 0);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaUpdateRefsRequest1_dest_dsa_guid, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObjectIdentifier3Binary_binary(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaUpdateRefsRequest1_options(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_datablob(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjectIdentifier3Binary_binary, 1);
+ offset = drsuapi_dissect_bitmap_DrsOptions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaUpdateRefsRequest1_options, 0);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaObjectIdentifier3Binary(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsReplicaUpdateRefsRequest1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_4_BYTES;
+ ALIGN_TO_5_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaObjectIdentifier3Binary);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaUpdateRefsRequest1);
}
- offset = drsuapi_dissect_element_DsReplicaObjectIdentifier3Binary___ndr_size(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaObjectIdentifier3Binary___ndr_size_sid(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaObjectIdentifier3Binary_guid(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaObjectIdentifier3Binary_sid(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaObjectIdentifier3Binary___ndr_size_dn(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaUpdateRefsRequest1_naming_context(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaObjectIdentifier3Binary_dn(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaUpdateRefsRequest1_dest_dsa_dns_name(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaObjectIdentifier3Binary___ndr_size_binary(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaUpdateRefsRequest1_dest_dsa_guid(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaObjectIdentifier3Binary_binary(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaUpdateRefsRequest1_options(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_4_BYTES;
+ ALIGN_TO_5_BYTES;
}
return offset;
/* IDL: struct { */
-/* IDL: drsuapi_DsAttributeId attid; */
-/* IDL: drsuapi_DsAttributeValueCtr value_ctr; */
+/* IDL: [ref] drsuapi_DsReplicaObjectIdentifier *naming_context; */
+/* IDL: [charset(DOS)] [ref] uint8 *dest_dsa_dns_name; */
+/* IDL: GUID dest_dsa_guid; */
+/* IDL: drsuapi_DrsOptions options; */
+/* IDL: GUID correlationID; */
+/* IDL: [unique(1)] [value(NULL)] drsuapi_VAR_SIZE_BUFFER_WITH_VERSION *reserved_buffer; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaAttribute_value_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaUpdateRefsRequest2_naming_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsAttributeValueCtr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaAttribute_value_ctr,0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaUpdateRefsRequest2_naming_context_, NDR_POINTER_REF, "Pointer to Naming Context (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsReplicaUpdateRefsRequest2_naming_context);
return offset;
}
+static int
+drsuapi_dissect_element_DsReplicaUpdateRefsRequest2_naming_context_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaUpdateRefsRequest2_naming_context,0);
-/* IDL: struct { */
-/* IDL: [range(0,1048576)] uint32 num_attributes; */
-/* IDL: [size_is(num_attributes)] [unique(1)] drsuapi_DsReplicaAttribute *attributes; */
-/* IDL: } */
+ return offset;
+}
static int
-drsuapi_dissect_element_DsReplicaAttributeCtr_num_attributes(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaUpdateRefsRequest2_dest_dsa_dns_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttributeCtr_num_attributes, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaUpdateRefsRequest2_dest_dsa_dns_name_, NDR_POINTER_REF, "Pointer to Dest Dsa Dns Name (uint8)",hf_drsuapi_drsuapi_DsReplicaUpdateRefsRequest2_dest_dsa_dns_name);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAttributeCtr_attributes(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaUpdateRefsRequest2_dest_dsa_dns_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAttributeCtr_attributes_, NDR_POINTER_UNIQUE, "Pointer to Attributes (drsuapi_DsReplicaAttribute)",hf_drsuapi_drsuapi_DsReplicaAttributeCtr_attributes);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint8), hf_drsuapi_drsuapi_DsReplicaUpdateRefsRequest2_dest_dsa_dns_name, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAttributeCtr_attributes_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaUpdateRefsRequest2_dest_dsa_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAttributeCtr_attributes__);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaUpdateRefsRequest2_dest_dsa_guid, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAttributeCtr_attributes__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaUpdateRefsRequest2_options(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaAttribute(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaAttributeCtr_attributes,0);
+ offset = drsuapi_dissect_bitmap_DrsOptions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaUpdateRefsRequest2_options, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaUpdateRefsRequest2_correlationID(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaUpdateRefsRequest2_correlationID, NULL);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaUpdateRefsRequest2_reserved_buffer(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaUpdateRefsRequest2_reserved_buffer_, NDR_POINTER_UNIQUE, "Pointer to Reserved Buffer (drsuapi_VAR_SIZE_BUFFER_WITH_VERSION)",hf_drsuapi_drsuapi_DsReplicaUpdateRefsRequest2_reserved_buffer);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaUpdateRefsRequest2_reserved_buffer_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_VAR_SIZE_BUFFER_WITH_VERSION(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaUpdateRefsRequest2_reserved_buffer,0);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaAttributeCtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsReplicaUpdateRefsRequest2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaAttributeCtr);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaUpdateRefsRequest2);
}
- offset = drsuapi_dissect_element_DsReplicaAttributeCtr_num_attributes(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaUpdateRefsRequest2_naming_context(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaAttributeCtr_attributes(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaUpdateRefsRequest2_dest_dsa_dns_name(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaUpdateRefsRequest2_dest_dsa_guid(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaUpdateRefsRequest2_options(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaUpdateRefsRequest2_correlationID(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaUpdateRefsRequest2_reserved_buffer(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
}
-/* IDL: bitmap { */
-/* IDL: DRSUAPI_DS_REPLICA_OBJECT_FROM_MASTER = 0x00000001 , */
-/* IDL: DRSUAPI_DS_REPLICA_OBJECT_DYNAMIC = 0x00000002 , */
-/* IDL: DRSUAPI_DS_REPLICA_OBJECT_REMOTE_MODIFY = 0x00010000 , */
+/* IDL: [switch_type(uint32)] union { */
+/* IDL: [case(1)] [case(1)] drsuapi_DsReplicaUpdateRefsRequest1 req1; */
+/* IDL: [case(2)] [case(2)] drsuapi_DsReplicaUpdateRefsRequest2 req2; */
/* IDL: } */
-int
-drsuapi_dissect_bitmap_DsReplicaObjectFlags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+static int
+drsuapi_dissect_element_DsReplicaUpdateRefsRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- proto_item *item;
- static int * const drsuapi_drsuapi_DsReplicaObjectFlags_fields[] = {
- &hf_drsuapi_drsuapi_DsReplicaObjectFlags_DRSUAPI_DS_REPLICA_OBJECT_FROM_MASTER,
- &hf_drsuapi_drsuapi_DsReplicaObjectFlags_DRSUAPI_DS_REPLICA_OBJECT_DYNAMIC,
- &hf_drsuapi_drsuapi_DsReplicaObjectFlags_DRSUAPI_DS_REPLICA_OBJECT_REMOTE_MODIFY,
- NULL
- };
- guint32 flags;
- ALIGN_TO_4_BYTES;
+ offset = drsuapi_dissect_struct_DsReplicaUpdateRefsRequest1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaUpdateRefsRequest_req1,0);
- item = proto_tree_add_bitmask_with_flags(parent_tree, tvb, offset, hf_index,
- ett_drsuapi_drsuapi_DsReplicaObjectFlags, drsuapi_drsuapi_DsReplicaObjectFlags_fields, DREP_ENC_INTEGER(drep), BMT_NO_FALSE);
+ return offset;
+}
- offset = dissect_ndr_uint32(tvb, offset, pinfo, parent_tree, di, drep, -1, &flags);
+static int
+drsuapi_dissect_element_DsReplicaUpdateRefsRequest_req2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsReplicaUpdateRefsRequest2(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaUpdateRefsRequest_req2,0);
- if (!flags)
- proto_item_append_text(item, ": (No values set)");
+ return offset;
+}
- if (flags & (~0x00010003)) {
- flags &= (~0x00010003);
- proto_item_append_text(item, "Unknown bitmap value 0x%x", flags);
+static int
+drsuapi_dissect_DsReplicaUpdateRefsRequest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+{
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+ guint32 level;
+
+ old_offset = offset;
+ if (parent_tree) {
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsReplicaUpdateRefsRequest, &item, "drsuapi_DsReplicaUpdateRefsRequest");
}
- return offset;
-}
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
+ ALIGN_TO_5_BYTES;
+ switch(level) {
+ case 1:
+ offset = drsuapi_dissect_element_DsReplicaUpdateRefsRequest_req1(tvb, offset, pinfo, tree, di, drep);
+ break;
-/* IDL: struct { */
-/* IDL: [unique(1)] drsuapi_DsReplicaObjectIdentifier *identifier; */
-/* IDL: drsuapi_DsReplicaObjectFlags flags; */
-/* IDL: drsuapi_DsReplicaAttributeCtr attribute_ctr; */
-/* IDL: } */
+ case 2:
+ offset = drsuapi_dissect_element_DsReplicaUpdateRefsRequest_req2(tvb, offset, pinfo, tree, di, drep);
+ break;
+ }
+ proto_item_set_len(item, offset-old_offset);
-static int
-drsuapi_dissect_element_DsReplicaObject_identifier(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaObject_identifier_, NDR_POINTER_UNIQUE, "Pointer to Identifier (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsReplicaObject_identifier);
return offset;
}
+/* IDL: struct { */
+/* IDL: [ref] drsuapi_DsReplicaObjectIdentifier *naming_context; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *source_dsa_address; */
+/* IDL: uint8 schedule[84]; */
+/* IDL: drsuapi_DrsOptions options; */
+/* IDL: } */
+
static int
-drsuapi_dissect_element_DsReplicaObject_identifier_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAddRequest1_naming_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaObject_identifier,0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAddRequest1_naming_context_, NDR_POINTER_REF, "Pointer to Naming Context (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsReplicaAddRequest1_naming_context);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObject_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAddRequest1_naming_context_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_bitmap_DsReplicaObjectFlags(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObject_flags, 0);
+ offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaAddRequest1_naming_context,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObject_attribute_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAddRequest1_source_dsa_address(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaAttributeCtr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaObject_attribute_ctr,0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAddRequest1_source_dsa_address_, NDR_POINTER_UNIQUE, "Pointer to Source Dsa Address (uint16)",hf_drsuapi_drsuapi_DsReplicaAddRequest1_source_dsa_address);
return offset;
}
-
-/* IDL: struct { */
-/* IDL: uint32 version; */
-/* IDL: NTTIME_1sec originating_change_time; */
-/* IDL: GUID originating_invocation_id; */
-/* IDL: hyper originating_usn; */
-/* IDL: } */
-
static int
-drsuapi_dissect_element_DsReplicaMetaData_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAddRequest1_source_dsa_address_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaMetaData_version, 0);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaAddRequest1_source_dsa_address, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaMetaData_originating_change_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAddRequest1_schedule(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaMetaData_originating_change_time);
+ int i;
+ for (i = 0; i < 84; i++)
+ offset = drsuapi_dissect_element_DsReplicaAddRequest1_schedule_(tvb, offset, pinfo, tree, di, drep);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaMetaData_originating_invocation_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAddRequest1_schedule_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaMetaData_originating_invocation_id, NULL);
+ offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAddRequest1_schedule, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaMetaData_originating_usn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAddRequest1_options(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaMetaData_originating_usn, NULL);
+ offset = drsuapi_dissect_bitmap_DrsOptions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAddRequest1_options, 0);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaMetaData(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsReplicaAddRequest1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_5_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaMetaData);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaAddRequest1);
}
- offset = drsuapi_dissect_element_DsReplicaMetaData_version(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaAddRequest1_naming_context(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaMetaData_originating_change_time(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaAddRequest1_source_dsa_address(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaMetaData_originating_invocation_id(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaAddRequest1_schedule(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaMetaData_originating_usn(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaAddRequest1_options(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_5_BYTES;
}
return offset;
/* IDL: struct { */
-/* IDL: [range(0,1048576)] uint32 count; */
-/* IDL: [size_is(count)] drsuapi_DsReplicaMetaData meta_data[*]; */
+/* IDL: [ref] drsuapi_DsReplicaObjectIdentifier *naming_context; */
+/* IDL: [unique(1)] drsuapi_DsReplicaObjectIdentifier *source_dsa_dn; */
+/* IDL: [unique(1)] drsuapi_DsReplicaObjectIdentifier *transport_dn; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *source_dsa_address; */
+/* IDL: uint8 schedule[84]; */
+/* IDL: drsuapi_DrsOptions options; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaMetaDataCtr_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAddRequest2_naming_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaMetaDataCtr_count, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAddRequest2_naming_context_, NDR_POINTER_REF, "Pointer to Naming Context (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsReplicaAddRequest2_naming_context);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaMetaDataCtr_meta_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAddRequest2_naming_context_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaMetaDataCtr_meta_data_);
+ offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaAddRequest2_naming_context,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaMetaDataCtr_meta_data_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAddRequest2_source_dsa_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaMetaData(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaMetaDataCtr_meta_data,0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAddRequest2_source_dsa_dn_, NDR_POINTER_UNIQUE, "Pointer to Source Dsa Dn (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsReplicaAddRequest2_source_dsa_dn);
return offset;
}
-int
-drsuapi_dissect_struct_DsReplicaMetaDataCtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+static int
+drsuapi_dissect_element_DsReplicaAddRequest2_source_dsa_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
-
- ALIGN_TO_8_BYTES;
-
- old_offset = offset;
-
- if (parent_tree) {
- item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaMetaDataCtr);
- }
-
- offset = drsuapi_dissect_element_DsReplicaMetaDataCtr_count(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaMetaDataCtr_meta_data(tvb, offset, pinfo, tree, di, drep);
-
-
- proto_item_set_len(item, offset-old_offset);
-
-
- if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_8_BYTES;
- }
+ offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaAddRequest2_source_dsa_dn,0);
return offset;
}
-
-/* IDL: struct { */
-/* IDL: [max_recursion(20000)] [unique(1)] drsuapi_DsReplicaObjectListItemEx *next_object; */
-/* IDL: drsuapi_DsReplicaObject object; */
-/* IDL: uint32 is_nc_prefix; */
-/* IDL: [unique(1)] GUID *parent_object_guid; */
-/* IDL: [unique(1)] drsuapi_DsReplicaMetaDataCtr *meta_data_ctr; */
-/* IDL: } */
-
static int
-drsuapi_dissect_element_DsReplicaObjectListItemEx_next_object(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAddRequest2_transport_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaObjectListItemEx_next_object_, NDR_POINTER_UNIQUE, "Pointer to Next Object (drsuapi_DsReplicaObjectListItemEx)",hf_drsuapi_drsuapi_DsReplicaObjectListItemEx_next_object);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAddRequest2_transport_dn_, NDR_POINTER_UNIQUE, "Pointer to Transport Dn (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsReplicaAddRequest2_transport_dn);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObjectListItemEx_object(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAddRequest2_transport_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaObject(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaObjectListItemEx_object,0);
+ offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaAddRequest2_transport_dn,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObjectListItemEx_is_nc_prefix(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAddRequest2_source_dsa_address(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjectListItemEx_is_nc_prefix, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAddRequest2_source_dsa_address_, NDR_POINTER_UNIQUE, "Pointer to Source Dsa Address (uint16)",hf_drsuapi_drsuapi_DsReplicaAddRequest2_source_dsa_address);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObjectListItemEx_parent_object_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAddRequest2_source_dsa_address_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaObjectListItemEx_parent_object_guid_, NDR_POINTER_UNIQUE, "Pointer to Parent Object Guid (GUID)",hf_drsuapi_drsuapi_DsReplicaObjectListItemEx_parent_object_guid);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaAddRequest2_source_dsa_address, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObjectListItemEx_parent_object_guid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAddRequest2_schedule(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjectListItemEx_parent_object_guid, NULL);
+ int i;
+ for (i = 0; i < 84; i++)
+ offset = drsuapi_dissect_element_DsReplicaAddRequest2_schedule_(tvb, offset, pinfo, tree, di, drep);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObjectListItemEx_meta_data_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAddRequest2_schedule_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaObjectListItemEx_meta_data_ctr_, NDR_POINTER_UNIQUE, "Pointer to Meta Data Ctr (drsuapi_DsReplicaMetaDataCtr)",hf_drsuapi_drsuapi_DsReplicaObjectListItemEx_meta_data_ctr);
+ offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAddRequest2_schedule, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObjectListItemEx_meta_data_ctr_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAddRequest2_options(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaMetaDataCtr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaObjectListItemEx_meta_data_ctr,0);
+ offset = drsuapi_dissect_bitmap_DrsOptions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAddRequest2_options, 0);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaObjectListItemEx(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsReplicaAddRequest2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaObjectListItemEx);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaAddRequest2);
}
- offset = drsuapi_dissect_element_DsReplicaObjectListItemEx_next_object(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaAddRequest2_naming_context(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaObjectListItemEx_object(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaAddRequest2_source_dsa_dn(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaObjectListItemEx_is_nc_prefix(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaAddRequest2_transport_dn(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaObjectListItemEx_parent_object_guid(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaAddRequest2_source_dsa_address(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaObjectListItemEx_meta_data_ctr(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaAddRequest2_schedule(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaAddRequest2_options(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
/* IDL: struct { */
-/* IDL: GUID source_dsa_guid; */
-/* IDL: GUID source_dsa_invocation_id; */
-/* IDL: [unique(1)] drsuapi_DsReplicaObjectIdentifier *naming_context; */
-/* IDL: drsuapi_DsReplicaHighWaterMark old_highwatermark; */
-/* IDL: drsuapi_DsReplicaHighWaterMark new_highwatermark; */
-/* IDL: [unique(1)] drsuapi_DsReplicaCursorCtrEx *uptodateness_vector; */
-/* IDL: drsuapi_DsReplicaOIDMapping_Ctr mapping_ctr; */
-/* IDL: drsuapi_DsExtendedError extended_ret; */
-/* IDL: uint32 object_count; */
-/* IDL: [value(ndr_size_drsuapi_DsGetNCChangesCtr1(r,ndr->flags)+55)] uint32 __ndr_size; */
-/* IDL: [unique(1)] drsuapi_DsReplicaObjectListItemEx *first_object; */
-/* IDL: uint32 more_data; */
+/* IDL: [ref] drsuapi_DsReplicaObjectIdentifier *naming_context; */
+/* IDL: [unique(1)] drsuapi_DsReplicaObjectIdentifier *source_dsa_dn; */
+/* IDL: [unique(1)] drsuapi_DsReplicaObjectIdentifier *transport_dn; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *source_dsa_address; */
+/* IDL: uint8 schedule[84]; */
+/* IDL: drsuapi_DrsOptions options; */
+/* IDL: GUID correlationID; */
+/* IDL: [unique(1)] [value(NULL)] drsuapi_VAR_SIZE_BUFFER_WITH_VERSION *reserved_buffer; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsGetNCChangesCtr1_source_dsa_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAddRequest3_naming_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr1_source_dsa_guid, NULL);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAddRequest3_naming_context_, NDR_POINTER_REF, "Pointer to Naming Context (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsReplicaAddRequest3_naming_context);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr1_source_dsa_invocation_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAddRequest3_naming_context_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr1_source_dsa_invocation_id, NULL);
+ offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaAddRequest3_naming_context,0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr1_naming_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAddRequest3_source_dsa_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesCtr1_naming_context_, NDR_POINTER_UNIQUE, "Pointer to Naming Context (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsGetNCChangesCtr1_naming_context);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAddRequest3_source_dsa_dn_, NDR_POINTER_UNIQUE, "Pointer to Source Dsa Dn (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsReplicaAddRequest3_source_dsa_dn);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr1_naming_context_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAddRequest3_source_dsa_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr1_naming_context,0);
+ offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaAddRequest3_source_dsa_dn,0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr1_old_highwatermark(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAddRequest3_transport_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaHighWaterMark(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr1_old_highwatermark,0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAddRequest3_transport_dn_, NDR_POINTER_UNIQUE, "Pointer to Transport Dn (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsReplicaAddRequest3_transport_dn);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr1_new_highwatermark(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAddRequest3_transport_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaHighWaterMark(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr1_new_highwatermark,0);
+ offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaAddRequest3_transport_dn,0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr1_uptodateness_vector(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAddRequest3_source_dsa_address(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesCtr1_uptodateness_vector_, NDR_POINTER_UNIQUE, "Pointer to Uptodateness Vector (drsuapi_DsReplicaCursorCtrEx)",hf_drsuapi_drsuapi_DsGetNCChangesCtr1_uptodateness_vector);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAddRequest3_source_dsa_address_, NDR_POINTER_UNIQUE, "Pointer to Source Dsa Address (uint16)",hf_drsuapi_drsuapi_DsReplicaAddRequest3_source_dsa_address);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr1_uptodateness_vector_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAddRequest3_source_dsa_address_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaCursorCtrEx(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr1_uptodateness_vector,0);
-
- return offset;
-}
+ char *data;
-static int
-drsuapi_dissect_element_DsGetNCChangesCtr1_mapping_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = drsuapi_dissect_struct_DsReplicaOIDMapping_Ctr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr1_mapping_ctr,0);
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaAddRequest3_source_dsa_address, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr1_extended_ret(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAddRequest3_schedule(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_enum_DsExtendedError(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr1_extended_ret, 0);
+ int i;
+ for (i = 0; i < 84; i++)
+ offset = drsuapi_dissect_element_DsReplicaAddRequest3_schedule_(tvb, offset, pinfo, tree, di, drep);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr1_object_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAddRequest3_schedule_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr1_object_count, 0);
+ offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAddRequest3_schedule, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr1___ndr_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAddRequest3_options(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr1___ndr_size, 0);
+ offset = drsuapi_dissect_bitmap_DrsOptions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAddRequest3_options, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr1_first_object(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAddRequest3_correlationID(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesCtr1_first_object_, NDR_POINTER_UNIQUE, "Pointer to First Object (drsuapi_DsReplicaObjectListItemEx)",hf_drsuapi_drsuapi_DsGetNCChangesCtr1_first_object);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAddRequest3_correlationID, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr1_first_object_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAddRequest3_reserved_buffer(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaObjectListItemEx(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr1_first_object,0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAddRequest3_reserved_buffer_, NDR_POINTER_UNIQUE, "Pointer to Reserved Buffer (drsuapi_VAR_SIZE_BUFFER_WITH_VERSION)",hf_drsuapi_drsuapi_DsReplicaAddRequest3_reserved_buffer);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr1_more_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAddRequest3_reserved_buffer_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr1_more_data, 0);
+ offset = drsuapi_dissect_struct_VAR_SIZE_BUFFER_WITH_VERSION(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaAddRequest3_reserved_buffer,0);
return offset;
}
int
-drsuapi_dissect_struct_DsGetNCChangesCtr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsReplicaAddRequest3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_5_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetNCChangesCtr1);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaAddRequest3);
}
- offset = drsuapi_dissect_element_DsGetNCChangesCtr1_source_dsa_guid(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesCtr1_source_dsa_invocation_id(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesCtr1_naming_context(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesCtr1_old_highwatermark(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesCtr1_new_highwatermark(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaAddRequest3_naming_context(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesCtr1_uptodateness_vector(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaAddRequest3_source_dsa_dn(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesCtr1_mapping_ctr(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaAddRequest3_transport_dn(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesCtr1_extended_ret(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaAddRequest3_source_dsa_address(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesCtr1_object_count(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaAddRequest3_schedule(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesCtr1___ndr_size(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaAddRequest3_options(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesCtr1_first_object(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaAddRequest3_correlationID(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesCtr1_more_data(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaAddRequest3_reserved_buffer(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_5_BYTES;
}
return offset;
}
-/* IDL: bitmap { */
-/* IDL: DRSUAPI_DS_LINKED_ATTRIBUTE_FLAG_ACTIVE = 0x00000001 , */
+/* IDL: [switch_type(uint32)] union { */
+/* IDL: [case(1)] [case(1)] drsuapi_DsReplicaAddRequest1 req1; */
+/* IDL: [case(2)] [case(2)] drsuapi_DsReplicaAddRequest2 req2; */
+/* IDL: [case(3)] [case(3)] drsuapi_DsReplicaAddRequest3 req3; */
/* IDL: } */
-int
-drsuapi_dissect_bitmap_DsLinkedAttributeFlags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+static int
+drsuapi_dissect_element_DsReplicaAddRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- proto_item *item;
- static int * const drsuapi_drsuapi_DsLinkedAttributeFlags_fields[] = {
- &hf_drsuapi_drsuapi_DsLinkedAttributeFlags_DRSUAPI_DS_LINKED_ATTRIBUTE_FLAG_ACTIVE,
- NULL
- };
- guint32 flags;
- ALIGN_TO_4_BYTES;
-
- item = proto_tree_add_bitmask_with_flags(parent_tree, tvb, offset, hf_index,
- ett_drsuapi_drsuapi_DsLinkedAttributeFlags, drsuapi_drsuapi_DsLinkedAttributeFlags_fields, DREP_ENC_INTEGER(drep), BMT_NO_FALSE);
-
- offset = dissect_ndr_uint32(tvb, offset, pinfo, parent_tree, di, drep, -1, &flags);
+ offset = drsuapi_dissect_struct_DsReplicaAddRequest1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaAddRequest_req1,0);
- if (!flags)
- proto_item_append_text(item, ": (No values set)");
+ return offset;
+}
- if (flags & (~0x00000001)) {
- flags &= (~0x00000001);
- proto_item_append_text(item, "Unknown bitmap value 0x%x", flags);
- }
+static int
+drsuapi_dissect_element_DsReplicaAddRequest_req2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsReplicaAddRequest2(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaAddRequest_req2,0);
return offset;
}
-
-/* IDL: struct { */
-/* IDL: [unique(1)] drsuapi_DsReplicaObjectIdentifier *identifier; */
-/* IDL: drsuapi_DsAttributeId attid; */
-/* IDL: drsuapi_DsAttributeValue value; */
-/* IDL: drsuapi_DsLinkedAttributeFlags flags; */
-/* IDL: NTTIME_1sec originating_add_time; */
-/* IDL: drsuapi_DsReplicaMetaData meta_data; */
-/* IDL: } */
-
static int
-drsuapi_dissect_element_DsReplicaLinkedAttribute_identifier(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAddRequest_req3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaLinkedAttribute_identifier_, NDR_POINTER_UNIQUE, "Pointer to Identifier (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsReplicaLinkedAttribute_identifier);
+ offset = drsuapi_dissect_struct_DsReplicaAddRequest3(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaAddRequest_req3,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaLinkedAttribute_identifier_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsReplicaAddRequest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaLinkedAttribute_identifier,0);
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+ guint32 level;
+
+ old_offset = offset;
+ if (parent_tree) {
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsReplicaAddRequest, &item, "drsuapi_DsReplicaAddRequest");
+ }
+
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
+ ALIGN_TO_5_BYTES;
+
+ switch(level) {
+ case 1:
+ offset = drsuapi_dissect_element_DsReplicaAddRequest_req1(tvb, offset, pinfo, tree, di, drep);
+ break;
+
+ case 2:
+ offset = drsuapi_dissect_element_DsReplicaAddRequest_req2(tvb, offset, pinfo, tree, di, drep);
+ break;
+
+ case 3:
+ offset = drsuapi_dissect_element_DsReplicaAddRequest_req3(tvb, offset, pinfo, tree, di, drep);
+ break;
+ }
+ proto_item_set_len(item, offset-old_offset);
+
return offset;
}
+/* IDL: struct { */
+/* IDL: [ref] drsuapi_DsReplicaObjectIdentifier *naming_context; */
+/* IDL: [charset(UTF8)] [unique(1)] uint8 *source_dsa_address; */
+/* IDL: drsuapi_DrsOptions options; */
+/* IDL: } */
+
static int
-drsuapi_dissect_element_DsReplicaLinkedAttribute_attid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaDelRequest1_naming_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_enum_DsAttributeId(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaLinkedAttribute_attid, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaDelRequest1_naming_context_, NDR_POINTER_REF, "Pointer to Naming Context (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsReplicaDelRequest1_naming_context);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaLinkedAttribute_value(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaDelRequest1_naming_context_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsAttributeValue(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaLinkedAttribute_value,0);
+ offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaDelRequest1_naming_context,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaLinkedAttribute_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaDelRequest1_source_dsa_address(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_bitmap_DsLinkedAttributeFlags(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaLinkedAttribute_flags, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaDelRequest1_source_dsa_address_, NDR_POINTER_UNIQUE, "Pointer to Source Dsa Address (uint8)",hf_drsuapi_drsuapi_DsReplicaDelRequest1_source_dsa_address);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaLinkedAttribute_originating_add_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaDelRequest1_source_dsa_address_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaLinkedAttribute_originating_add_time);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint8), hf_drsuapi_drsuapi_DsReplicaDelRequest1_source_dsa_address, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaLinkedAttribute_meta_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaDelRequest1_options(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaMetaData(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaLinkedAttribute_meta_data,0);
+ offset = drsuapi_dissect_bitmap_DrsOptions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaDelRequest1_options, 0);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaLinkedAttribute(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsReplicaDelRequest1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_5_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaLinkedAttribute);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaDelRequest1);
}
- offset = drsuapi_dissect_element_DsReplicaLinkedAttribute_identifier(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaLinkedAttribute_attid(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaLinkedAttribute_value(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaLinkedAttribute_flags(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaDelRequest1_naming_context(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaLinkedAttribute_originating_add_time(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaDelRequest1_source_dsa_address(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaLinkedAttribute_meta_data(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaDelRequest1_options(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_5_BYTES;
}
return offset;
}
-/* IDL: struct { */
-/* IDL: [unique(1)] drsuapi_DsReplicaObjectIdentifier *identifier; */
-/* IDL: drsuapi_DsAttributeId attid; */
-/* IDL: drsuapi_DsAttributeValue value; */
-/* IDL: drsuapi_DsLinkedAttributeFlags flags; */
-/* IDL: NTTIME_1sec originating_add_time; */
-/* IDL: drsuapi_DsReplicaMetaData meta_data; */
-/* IDL: uint32 unused1; */
-/* IDL: uint32 unused2; */
-/* IDL: uint32 unused3; */
-/* IDL: NTTIME_1sec timeExpired; */
+/* IDL: [switch_type(uint32)] union { */
+/* IDL: [case(1)] [case(1)] drsuapi_DsReplicaDelRequest1 req1; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaLinkedAttribute3_identifier(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaDelRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaLinkedAttribute3_identifier_, NDR_POINTER_UNIQUE, "Pointer to Identifier (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsReplicaLinkedAttribute3_identifier);
+ offset = drsuapi_dissect_struct_DsReplicaDelRequest1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaDelRequest_req1,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaLinkedAttribute3_identifier_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsReplicaDelRequest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaLinkedAttribute3_identifier,0);
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+ guint32 level;
+
+ old_offset = offset;
+ if (parent_tree) {
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsReplicaDelRequest, &item, "drsuapi_DsReplicaDelRequest");
+ }
+
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
+ ALIGN_TO_5_BYTES;
+
+ switch(level) {
+ case 1:
+ offset = drsuapi_dissect_element_DsReplicaDelRequest_req1(tvb, offset, pinfo, tree, di, drep);
+ break;
+ }
+ proto_item_set_len(item, offset-old_offset);
+
return offset;
}
+/* IDL: struct { */
+/* IDL: [ref] drsuapi_DsReplicaObjectIdentifier *naming_context; */
+/* IDL: GUID source_dra; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *source_dra_address; */
+/* IDL: uint8 schedule[84]; */
+/* IDL: drsuapi_DrsOptions replica_flags; */
+/* IDL: uint32 modify_fields; */
+/* IDL: drsuapi_DrsOptions options; */
+/* IDL: } */
+
static int
-drsuapi_dissect_element_DsReplicaLinkedAttribute3_attid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaModRequest1_naming_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_enum_DsAttributeId(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaLinkedAttribute3_attid, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaModRequest1_naming_context_, NDR_POINTER_REF, "Pointer to Naming Context (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsReplicaModRequest1_naming_context);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaLinkedAttribute3_value(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaModRequest1_naming_context_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsAttributeValue(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaLinkedAttribute3_value,0);
+ offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaModRequest1_naming_context,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaLinkedAttribute3_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaModRequest1_source_dra(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_bitmap_DsLinkedAttributeFlags(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaLinkedAttribute3_flags, 0);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaModRequest1_source_dra, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaLinkedAttribute3_originating_add_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaModRequest1_source_dra_address(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaLinkedAttribute3_originating_add_time);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaModRequest1_source_dra_address_, NDR_POINTER_UNIQUE, "Pointer to Source Dra Address (uint16)",hf_drsuapi_drsuapi_DsReplicaModRequest1_source_dra_address);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaLinkedAttribute3_meta_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaModRequest1_source_dra_address_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaMetaData(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaLinkedAttribute3_meta_data,0);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaModRequest1_source_dra_address, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaLinkedAttribute3_unused1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaModRequest1_schedule(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaLinkedAttribute3_unused1, 0);
+ int i;
+ for (i = 0; i < 84; i++)
+ offset = drsuapi_dissect_element_DsReplicaModRequest1_schedule_(tvb, offset, pinfo, tree, di, drep);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaLinkedAttribute3_unused2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaModRequest1_schedule_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaLinkedAttribute3_unused2, 0);
+ offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaModRequest1_schedule, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaLinkedAttribute3_unused3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaModRequest1_replica_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaLinkedAttribute3_unused3, 0);
+ offset = drsuapi_dissect_bitmap_DrsOptions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaModRequest1_replica_flags, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaLinkedAttribute3_timeExpired(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaModRequest1_modify_fields(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaLinkedAttribute3_timeExpired);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaModRequest1_modify_fields, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaModRequest1_options(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_bitmap_DrsOptions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaModRequest1_options, 0);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaLinkedAttribute3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsReplicaModRequest1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_5_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaLinkedAttribute3);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaModRequest1);
}
- offset = drsuapi_dissect_element_DsReplicaLinkedAttribute3_identifier(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaLinkedAttribute3_attid(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaLinkedAttribute3_value(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaLinkedAttribute3_flags(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaLinkedAttribute3_originating_add_time(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaLinkedAttribute3_meta_data(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaLinkedAttribute3_unused1(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaLinkedAttribute3_unused2(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaLinkedAttribute3_unused3(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaLinkedAttribute3_timeExpired(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaModRequest1_naming_context(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaModRequest1_source_dra(tvb, offset, pinfo, tree, di, drep);
- proto_item_set_len(item, offset-old_offset);
+ offset = drsuapi_dissect_element_DsReplicaModRequest1_source_dra_address(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaModRequest1_schedule(tvb, offset, pinfo, tree, di, drep);
- if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_8_BYTES;
- }
+ offset = drsuapi_dissect_element_DsReplicaModRequest1_replica_flags(tvb, offset, pinfo, tree, di, drep);
- return offset;
-}
+ offset = drsuapi_dissect_element_DsReplicaModRequest1_modify_fields(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaModRequest1_options(tvb, offset, pinfo, tree, di, drep);
-/* IDL: struct { */
-/* IDL: GUID source_dsa_guid; */
-/* IDL: GUID source_dsa_invocation_id; */
-/* IDL: [unique(1)] drsuapi_DsReplicaObjectIdentifier *naming_context; */
-/* IDL: drsuapi_DsReplicaHighWaterMark old_highwatermark; */
-/* IDL: drsuapi_DsReplicaHighWaterMark new_highwatermark; */
-/* IDL: [unique(1)] drsuapi_DsReplicaCursor2CtrEx *uptodateness_vector; */
-/* IDL: drsuapi_DsReplicaOIDMapping_Ctr mapping_ctr; */
-/* IDL: drsuapi_DsExtendedError extended_ret; */
-/* IDL: uint32 object_count; */
-/* IDL: [value(ndr_size_drsuapi_DsGetNCChangesCtr6(r,ndr->flags)+55)] uint32 __ndr_size; */
-/* IDL: [unique(1)] drsuapi_DsReplicaObjectListItemEx *first_object; */
-/* IDL: uint32 more_data; */
-/* IDL: uint32 nc_object_count; */
-/* IDL: uint32 nc_linked_attributes_count; */
-/* IDL: [range(0,1048576)] uint32 linked_attributes_count; */
-/* IDL: [size_is(linked_attributes_count)] [unique(1)] drsuapi_DsReplicaLinkedAttribute *linked_attributes; */
-/* IDL: WERROR drs_error; */
-/* IDL: } */
-static int
-drsuapi_dissect_element_DsGetNCChangesCtr6_source_dsa_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr6_source_dsa_guid, NULL);
+ proto_item_set_len(item, offset-old_offset);
- return offset;
-}
-static int
-drsuapi_dissect_element_DsGetNCChangesCtr6_source_dsa_invocation_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr6_source_dsa_invocation_id, NULL);
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_5_BYTES;
+ }
return offset;
}
-static int
-drsuapi_dissect_element_DsGetNCChangesCtr6_naming_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesCtr6_naming_context_, NDR_POINTER_UNIQUE, "Pointer to Naming Context (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsGetNCChangesCtr6_naming_context);
- return offset;
-}
+/* IDL: [switch_type(uint32)] union { */
+/* IDL: [case(1)] [case(1)] drsuapi_DsReplicaModRequest1 req1; */
+/* IDL: } */
static int
-drsuapi_dissect_element_DsGetNCChangesCtr6_naming_context_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaModRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr6_naming_context,0);
+ offset = drsuapi_dissect_struct_DsReplicaModRequest1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaModRequest_req1,0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr6_old_highwatermark(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsReplicaModRequest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaHighWaterMark(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr6_old_highwatermark,0);
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+ guint32 level;
- return offset;
-}
+ old_offset = offset;
+ if (parent_tree) {
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsReplicaModRequest, &item, "drsuapi_DsReplicaModRequest");
+ }
-static int
-drsuapi_dissect_element_DsGetNCChangesCtr6_new_highwatermark(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = drsuapi_dissect_struct_DsReplicaHighWaterMark(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr6_new_highwatermark,0);
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
+ ALIGN_TO_5_BYTES;
- return offset;
-}
+ switch(level) {
+ case 1:
+ offset = drsuapi_dissect_element_DsReplicaModRequest_req1(tvb, offset, pinfo, tree, di, drep);
+ break;
+ }
+ proto_item_set_len(item, offset-old_offset);
-static int
-drsuapi_dissect_element_DsGetNCChangesCtr6_uptodateness_vector(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesCtr6_uptodateness_vector_, NDR_POINTER_UNIQUE, "Pointer to Uptodateness Vector (drsuapi_DsReplicaCursor2CtrEx)",hf_drsuapi_drsuapi_DsGetNCChangesCtr6_uptodateness_vector);
return offset;
}
-static int
-drsuapi_dissect_element_DsGetNCChangesCtr6_uptodateness_vector_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = drsuapi_dissect_struct_DsReplicaCursor2CtrEx(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr6_uptodateness_vector,0);
+/* IDL: enum { */
+/* IDL: DRSUAPI_DS_MEMBERSHIP_TYPE_UNIVERSAL_AND_DOMAIN_GROUPS=1, */
+/* IDL: DRSUAPI_DS_MEMBERSHIP_TYPE_DOMAIN_LOCAL_GROUPS=2, */
+/* IDL: DRSUAPI_DS_MEMBERSHIP_TYPE_DOMAIN_GROUPS=3, */
+/* IDL: DRSUAPI_DS_MEMBERSHIP_TYPE_DOMAIN_LOCAL_GROUPS2=4, */
+/* IDL: DRSUAPI_DS_MEMBERSHIP_TYPE_UNIVERSAL_GROUPS=5, */
+/* IDL: DRSUAPI_DS_MEMBERSHIP_TYPE_GROUPMEMBERS=6, */
+/* IDL: DRSUAPI_DS_MEMBERSHIP_TYPE_DOMAIN_GROUPS2=7, */
+/* IDL: } */
+int
+drsuapi_dissect_enum_DsMembershipType(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
+{
+ guint32 parameter=0;
+ if (param) {
+ parameter = *param;
+ }
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, ¶meter);
+ if (param) {
+ *param = parameter;
+ }
return offset;
}
+
+/* IDL: struct { */
+/* IDL: NTSTATUS status; */
+/* IDL: [range(0,10000)] uint32 num_memberships; */
+/* IDL: [range(0,10000)] uint32 num_sids; */
+/* IDL: [size_is(num_memberships)] [unique(1)] drsuapi_DsReplicaObjectIdentifier **info_array; */
+/* IDL: [size_is(num_memberships)] [unique(1)] security_GroupAttrs *group_attrs; */
+/* IDL: [size_is(num_sids)] [unique(1)] dom_sid28 **sids; */
+/* IDL: } */
+
static int
-drsuapi_dissect_element_DsGetNCChangesCtr6_mapping_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMembershipsCtr1_status(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaOIDMapping_Ctr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr6_mapping_ctr,0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetMembershipsCtr1_status, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr6_extended_ret(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMembershipsCtr1_num_memberships(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_enum_DsExtendedError(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr6_extended_ret, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetMembershipsCtr1_num_memberships, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr6_object_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMembershipsCtr1_num_sids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr6_object_count, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetMembershipsCtr1_num_sids, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr6___ndr_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMembershipsCtr1_info_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr6___ndr_size, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMembershipsCtr1_info_array_, NDR_POINTER_UNIQUE, "Pointer to Info Array (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsGetMembershipsCtr1_info_array);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr6_first_object(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMembershipsCtr1_info_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesCtr6_first_object_, NDR_POINTER_UNIQUE, "Pointer to First Object (drsuapi_DsReplicaObjectListItemEx)",hf_drsuapi_drsuapi_DsGetNCChangesCtr6_first_object);
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMembershipsCtr1_info_array__);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr6_first_object_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMembershipsCtr1_info_array__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaObjectListItemEx(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr6_first_object,0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMembershipsCtr1_info_array___, NDR_POINTER_UNIQUE, "Pointer to Info Array (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsGetMembershipsCtr1_info_array);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr6_more_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMembershipsCtr1_info_array___(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr6_more_data, 0);
+ offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetMembershipsCtr1_info_array,0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr6_nc_object_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMembershipsCtr1_group_attrs(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr6_nc_object_count, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMembershipsCtr1_group_attrs_, NDR_POINTER_UNIQUE, "Pointer to Group Attrs (security_GroupAttrs)",hf_drsuapi_drsuapi_DsGetMembershipsCtr1_group_attrs);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr6_nc_linked_attributes_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMembershipsCtr1_group_attrs_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr6_nc_linked_attributes_count, 0);
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMembershipsCtr1_group_attrs__);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr6_linked_attributes_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMembershipsCtr1_group_attrs__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr6_linked_attributes_count, 0);
+ offset = drsuapi_dissect_bitmap_security_GroupAttrs(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetMembershipsCtr1_group_attrs, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr6_linked_attributes(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMembershipsCtr1_sids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesCtr6_linked_attributes_, NDR_POINTER_UNIQUE, "Pointer to Linked Attributes (drsuapi_DsReplicaLinkedAttribute)",hf_drsuapi_drsuapi_DsGetNCChangesCtr6_linked_attributes);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMembershipsCtr1_sids_, NDR_POINTER_UNIQUE, "Pointer to Sids (dom_sid28)",hf_drsuapi_drsuapi_DsGetMembershipsCtr1_sids);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr6_linked_attributes_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMembershipsCtr1_sids_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesCtr6_linked_attributes__);
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMembershipsCtr1_sids__);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr6_linked_attributes__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMembershipsCtr1_sids__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaLinkedAttribute(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr6_linked_attributes,0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMembershipsCtr1_sids___, NDR_POINTER_UNIQUE, "Pointer to Sids (dom_sid28)",hf_drsuapi_drsuapi_DsGetMembershipsCtr1_sids);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr6_drs_error(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMembershipsCtr1_sids___(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr6_drs_error, 0);
+
+ di->hf_index = hf_drsuapi_drsuapi_DsGetMembershipsCtr1_sids;
+
+ offset = dissect_ndr_nt_SID28(tvb, offset, pinfo, tree, di, drep);
+
return offset;
}
int
-drsuapi_dissect_struct_DsGetNCChangesCtr6(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsGetMembershipsCtr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_5_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetNCChangesCtr6);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetMembershipsCtr1);
}
- offset = drsuapi_dissect_element_DsGetNCChangesCtr6_source_dsa_guid(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesCtr6_source_dsa_invocation_id(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesCtr6_naming_context(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesCtr6_old_highwatermark(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesCtr6_new_highwatermark(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesCtr6_uptodateness_vector(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesCtr6_mapping_ctr(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesCtr6_extended_ret(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesCtr6_object_count(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesCtr6___ndr_size(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesCtr6_first_object(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesCtr6_more_data(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetMembershipsCtr1_status(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesCtr6_nc_object_count(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetMembershipsCtr1_num_memberships(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesCtr6_nc_linked_attributes_count(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetMembershipsCtr1_num_sids(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesCtr6_linked_attributes_count(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetMembershipsCtr1_info_array(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesCtr6_linked_attributes(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetMembershipsCtr1_group_attrs(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesCtr6_drs_error(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetMembershipsCtr1_sids(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_5_BYTES;
}
return offset;
}
-/* IDL: struct { */
-/* IDL: GUID source_dsa_guid; */
-/* IDL: GUID source_dsa_invocation_id; */
-/* IDL: [unique(1)] drsuapi_DsReplicaObjectIdentifier *naming_context; */
-/* IDL: drsuapi_DsReplicaHighWaterMark old_highwatermark; */
-/* IDL: drsuapi_DsReplicaHighWaterMark new_highwatermark; */
-/* IDL: [unique(1)] drsuapi_DsReplicaCursor2CtrEx *uptodateness_vector; */
-/* IDL: drsuapi_DsReplicaOIDMapping_Ctr mapping_ctr; */
-/* IDL: drsuapi_DsExtendedError extended_ret; */
-/* IDL: uint32 object_count; */
-/* IDL: [value(ndr_size_drsuapi_DsGetNCChangesCtr9(r,ndr->flags)+55)] uint32 __ndr_size; */
-/* IDL: [unique(1)] drsuapi_DsReplicaObjectListItemEx *first_object; */
-/* IDL: uint32 more_data; */
-/* IDL: uint32 nc_object_count; */
-/* IDL: uint32 nc_linked_attributes_count; */
-/* IDL: [range(0,1048576)] uint32 linked_attributes_count; */
-/* IDL: [size_is(linked_attributes_count)] [unique(1)] drsuapi_DsReplicaLinkedAttribute3 *linked_attributes; */
-/* IDL: WERROR drs_error; */
+/* IDL: [switch_type(uint32)] union { */
+/* IDL: [case(1)] [case(1)] drsuapi_DsGetMembershipsCtr1 ctr1; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsGetNCChangesCtr9_source_dsa_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMembershipsCtr_ctr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr9_source_dsa_guid, NULL);
+ offset = drsuapi_dissect_struct_DsGetMembershipsCtr1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetMembershipsCtr_ctr1,0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr9_source_dsa_invocation_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsGetMembershipsCtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr9_source_dsa_invocation_id, NULL);
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+ guint32 level;
- return offset;
-}
+ old_offset = offset;
+ if (parent_tree) {
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsGetMembershipsCtr, &item, "drsuapi_DsGetMembershipsCtr");
+ }
+
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
+ ALIGN_TO_5_BYTES;
+
+ switch(level) {
+ case 1:
+ offset = drsuapi_dissect_element_DsGetMembershipsCtr_ctr1(tvb, offset, pinfo, tree, di, drep);
+ break;
+ }
+ proto_item_set_len(item, offset-old_offset);
-static int
-drsuapi_dissect_element_DsGetNCChangesCtr9_naming_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesCtr9_naming_context_, NDR_POINTER_UNIQUE, "Pointer to Naming Context (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsGetNCChangesCtr9_naming_context);
return offset;
}
+/* IDL: struct { */
+/* IDL: [range(1,10000)] uint32 count; */
+/* IDL: [size_is(count)] [unique(1)] drsuapi_DsReplicaObjectIdentifier **info_array; */
+/* IDL: uint32 flags; */
+/* IDL: [range(1,7)] drsuapi_DsMembershipType type; */
+/* IDL: [unique(1)] drsuapi_DsReplicaObjectIdentifier *domain; */
+/* IDL: } */
+
static int
-drsuapi_dissect_element_DsGetNCChangesCtr9_naming_context_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMembershipsRequest1_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr9_naming_context,0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetMembershipsRequest1_count, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr9_old_highwatermark(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMembershipsRequest1_info_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaHighWaterMark(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr9_old_highwatermark,0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMembershipsRequest1_info_array_, NDR_POINTER_UNIQUE, "Pointer to Info Array (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsGetMembershipsRequest1_info_array);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr9_new_highwatermark(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMembershipsRequest1_info_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaHighWaterMark(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr9_new_highwatermark,0);
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMembershipsRequest1_info_array__);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr9_uptodateness_vector(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMembershipsRequest1_info_array__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesCtr9_uptodateness_vector_, NDR_POINTER_UNIQUE, "Pointer to Uptodateness Vector (drsuapi_DsReplicaCursor2CtrEx)",hf_drsuapi_drsuapi_DsGetNCChangesCtr9_uptodateness_vector);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMembershipsRequest1_info_array___, NDR_POINTER_UNIQUE, "Pointer to Info Array (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsGetMembershipsRequest1_info_array);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr9_uptodateness_vector_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMembershipsRequest1_info_array___(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaCursor2CtrEx(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr9_uptodateness_vector,0);
+ offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetMembershipsRequest1_info_array,0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr9_mapping_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMembershipsRequest1_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaOIDMapping_Ctr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr9_mapping_ctr,0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetMembershipsRequest1_flags, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr9_extended_ret(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMembershipsRequest1_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_enum_DsExtendedError(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr9_extended_ret, 0);
+ offset = drsuapi_dissect_enum_DsMembershipType(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetMembershipsRequest1_type, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr9_object_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMembershipsRequest1_domain(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr9_object_count, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMembershipsRequest1_domain_, NDR_POINTER_UNIQUE, "Pointer to Domain (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsGetMembershipsRequest1_domain);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr9___ndr_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMembershipsRequest1_domain_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr9___ndr_size, 0);
+ offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetMembershipsRequest1_domain,0);
return offset;
}
-static int
-drsuapi_dissect_element_DsGetNCChangesCtr9_first_object(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+int
+drsuapi_dissect_struct_DsGetMembershipsRequest1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesCtr9_first_object_, NDR_POINTER_UNIQUE, "Pointer to First Object (drsuapi_DsReplicaObjectListItemEx)",hf_drsuapi_drsuapi_DsGetNCChangesCtr9_first_object);
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+
+ ALIGN_TO_5_BYTES;
+
+ old_offset = offset;
+
+ if (parent_tree) {
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetMembershipsRequest1);
+ }
+
+ offset = drsuapi_dissect_element_DsGetMembershipsRequest1_count(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetMembershipsRequest1_info_array(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetMembershipsRequest1_flags(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetMembershipsRequest1_type(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetMembershipsRequest1_domain(tvb, offset, pinfo, tree, di, drep);
+
+
+ proto_item_set_len(item, offset-old_offset);
+
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_5_BYTES;
+ }
return offset;
}
+
+/* IDL: [switch_type(uint32)] union { */
+/* IDL: [case(1)] [case(1)] drsuapi_DsGetMembershipsRequest1 req1; */
+/* IDL: } */
+
static int
-drsuapi_dissect_element_DsGetNCChangesCtr9_first_object_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMembershipsRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaObjectListItemEx(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr9_first_object,0);
+ offset = drsuapi_dissect_struct_DsGetMembershipsRequest1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetMembershipsRequest_req1,0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr9_more_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsGetMembershipsRequest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr9_more_data, 0);
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+ guint32 level;
+
+ old_offset = offset;
+ if (parent_tree) {
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsGetMembershipsRequest, &item, "drsuapi_DsGetMembershipsRequest");
+ }
+
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
+ ALIGN_TO_5_BYTES;
+
+ switch(level) {
+ case 1:
+ offset = drsuapi_dissect_element_DsGetMembershipsRequest_req1(tvb, offset, pinfo, tree, di, drep);
+ break;
+ }
+ proto_item_set_len(item, offset-old_offset);
+
return offset;
}
-static int
-drsuapi_dissect_element_DsGetNCChangesCtr9_nc_object_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+/* IDL: bitmap { */
+/* IDL: DRSUAPI_NT4_CHANGELOG_GET_CHANGELOG = 0x00000001 , */
+/* IDL: DRSUAPI_NT4_CHANGELOG_GET_SERIAL_NUMBERS = 0x00000002 , */
+/* IDL: } */
+
+int
+drsuapi_dissect_bitmap_DsGetNT4ChangeLogFlags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr9_nc_object_count, 0);
+ proto_item *item;
+ static int * const drsuapi_drsuapi_DsGetNT4ChangeLogFlags_fields[] = {
+ &hf_drsuapi_drsuapi_DsGetNT4ChangeLogFlags_DRSUAPI_NT4_CHANGELOG_GET_CHANGELOG,
+ &hf_drsuapi_drsuapi_DsGetNT4ChangeLogFlags_DRSUAPI_NT4_CHANGELOG_GET_SERIAL_NUMBERS,
+ NULL
+ };
+ guint32 flags;
+ ALIGN_TO_4_BYTES;
+
+ item = proto_tree_add_bitmask_with_flags(parent_tree, tvb, offset, hf_index,
+ ett_drsuapi_drsuapi_DsGetNT4ChangeLogFlags, drsuapi_drsuapi_DsGetNT4ChangeLogFlags_fields, DREP_ENC_INTEGER(drep), BMT_NO_FALSE);
+
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, parent_tree, di, drep, -1, &flags);
+
+ if (!flags)
+ proto_item_append_text(item, ": (No values set)");
+
+ if (flags & (~0x00000003)) {
+ flags &= (~0x00000003);
+ proto_item_append_text(item, "Unknown bitmap value 0x%x", flags);
+ }
return offset;
}
+
+/* IDL: struct { */
+/* IDL: drsuapi_DsGetNT4ChangeLogFlags flags; */
+/* IDL: uint32 preferred_maximum_length; */
+/* IDL: [range(0,0x00A00000)] uint32 restart_length; */
+/* IDL: [size_is(restart_length)] [unique(1)] uint8 *restart_data; */
+/* IDL: } */
+
static int
-drsuapi_dissect_element_DsGetNCChangesCtr9_nc_linked_attributes_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNT4ChangeLogRequest1_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr9_nc_linked_attributes_count, 0);
+ offset = drsuapi_dissect_bitmap_DsGetNT4ChangeLogFlags(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLogRequest1_flags, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr9_linked_attributes_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNT4ChangeLogRequest1_preferred_maximum_length(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr9_linked_attributes_count, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLogRequest1_preferred_maximum_length, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr9_linked_attributes(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNT4ChangeLogRequest1_restart_length(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesCtr9_linked_attributes_, NDR_POINTER_UNIQUE, "Pointer to Linked Attributes (drsuapi_DsReplicaLinkedAttribute3)",hf_drsuapi_drsuapi_DsGetNCChangesCtr9_linked_attributes);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLogRequest1_restart_length, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr9_linked_attributes_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNT4ChangeLogRequest1_restart_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChangesCtr9_linked_attributes__);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNT4ChangeLogRequest1_restart_data_, NDR_POINTER_UNIQUE, "Pointer to Restart Data (uint8)",hf_drsuapi_drsuapi_DsGetNT4ChangeLogRequest1_restart_data);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr9_linked_attributes__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNT4ChangeLogRequest1_restart_data_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaLinkedAttribute3(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr9_linked_attributes,0);
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNT4ChangeLogRequest1_restart_data__);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChangesCtr9_drs_error(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNT4ChangeLogRequest1_restart_data__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChangesCtr9_drs_error, 0);
+ offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLogRequest1_restart_data, 0);
return offset;
}
int
-drsuapi_dissect_struct_DsGetNCChangesCtr9(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsGetNT4ChangeLogRequest1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_5_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetNCChangesCtr9);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetNT4ChangeLogRequest1);
}
- offset = drsuapi_dissect_element_DsGetNCChangesCtr9_source_dsa_guid(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesCtr9_source_dsa_invocation_id(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesCtr9_naming_context(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesCtr9_old_highwatermark(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesCtr9_new_highwatermark(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesCtr9_uptodateness_vector(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesCtr9_mapping_ctr(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesCtr9_extended_ret(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesCtr9_object_count(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesCtr9___ndr_size(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesCtr9_first_object(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesCtr9_more_data(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesCtr9_nc_object_count(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNCChangesCtr9_nc_linked_attributes_count(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetNT4ChangeLogRequest1_flags(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesCtr9_linked_attributes_count(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetNT4ChangeLogRequest1_preferred_maximum_length(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesCtr9_linked_attributes(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetNT4ChangeLogRequest1_restart_length(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChangesCtr9_drs_error(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetNT4ChangeLogRequest1_restart_data(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_5_BYTES;
}
return offset;
/* IDL: [switch_type(uint32)] union { */
-/* IDL: [case(1)] [case(1)] drsuapi_DsGetNCChangesCtr1 ctr1; */
-/* IDL: [case(6)] [case(6)] drsuapi_DsGetNCChangesCtr6 ctr6; */
-/* IDL: [case(9)] [case(9)] drsuapi_DsGetNCChangesCtr9 ctr9; */
+/* IDL: [case(1)] [case(1)] drsuapi_DsGetNT4ChangeLogRequest1 req1; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsGetNCChangesCtr_ctr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = drsuapi_dissect_struct_DsGetNCChangesCtr1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr_ctr1,0);
-
- return offset;
-}
-
-static int
-drsuapi_dissect_element_DsGetNCChangesCtr_ctr6(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = drsuapi_dissect_struct_DsGetNCChangesCtr6(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr_ctr6,0);
-
- return offset;
-}
-
-static int
-drsuapi_dissect_element_DsGetNCChangesCtr_ctr9(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNT4ChangeLogRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsGetNCChangesCtr9(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNCChangesCtr_ctr9,0);
+ offset = drsuapi_dissect_struct_DsGetNT4ChangeLogRequest1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNT4ChangeLogRequest_req1,0);
return offset;
}
static int
-drsuapi_dissect_DsGetNCChangesCtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_DsGetNT4ChangeLogRequest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
old_offset = offset;
if (parent_tree) {
- tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsGetNCChangesCtr, &item, "drsuapi_DsGetNCChangesCtr");
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsGetNT4ChangeLogRequest, &item, "drsuapi_DsGetNT4ChangeLogRequest");
}
offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_5_BYTES;
switch(level) {
case 1:
- offset = drsuapi_dissect_element_DsGetNCChangesCtr_ctr1(tvb, offset, pinfo, tree, di, drep);
- break;
-
- case 6:
- offset = drsuapi_dissect_element_DsGetNCChangesCtr_ctr6(tvb, offset, pinfo, tree, di, drep);
- break;
-
- case 9:
- offset = drsuapi_dissect_element_DsGetNCChangesCtr_ctr9(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetNT4ChangeLogRequest_req1(tvb, offset, pinfo, tree, di, drep);
break;
}
proto_item_set_len(item, offset-old_offset);
return offset;
}
-/* IDL: struct { */
-/* IDL: [ref] drsuapi_DsReplicaObjectIdentifier *naming_context; */
-/* IDL: [charset(DOS)] [ref] uint8 *dest_dsa_dns_name; */
-/* IDL: GUID dest_dsa_guid; */
-/* IDL: drsuapi_DrsOptions options; */
-/* IDL: } */
-
-static int
-drsuapi_dissect_element_DsReplicaUpdateRefsRequest1_naming_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaUpdateRefsRequest1_naming_context_, NDR_POINTER_REF, "Pointer to Naming Context (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsReplicaUpdateRefsRequest1_naming_context);
-
- return offset;
-}
-
+/* IDL: struct { */
+/* IDL: [range(0,0x00A00000)] uint32 restart_length; */
+/* IDL: [range(0,0x00A00000)] uint32 log_length; */
+/* IDL: hyper sam_serial_number; */
+/* IDL: NTTIME sam_creation_time; */
+/* IDL: hyper builtin_serial_number; */
+/* IDL: NTTIME builtin_creation_time; */
+/* IDL: hyper lsa_serial_number; */
+/* IDL: NTTIME lsa_creation_time; */
+/* IDL: NTSTATUS status; */
+/* IDL: [size_is(restart_length)] [unique(1)] uint8 *restart_data; */
+/* IDL: [size_is(log_length)] [unique(1)] uint8 *log_data; */
+/* IDL: } */
+
static int
-drsuapi_dissect_element_DsReplicaUpdateRefsRequest1_naming_context_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_restart_length(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaUpdateRefsRequest1_naming_context,0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLogInfo1_restart_length, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaUpdateRefsRequest1_dest_dsa_dns_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_log_length(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaUpdateRefsRequest1_dest_dsa_dns_name_, NDR_POINTER_REF, "Pointer to Dest Dsa Dns Name (uint8)",hf_drsuapi_drsuapi_DsReplicaUpdateRefsRequest1_dest_dsa_dns_name);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLogInfo1_log_length, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaUpdateRefsRequest1_dest_dsa_dns_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_sam_serial_number(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- char *data;
-
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint8), hf_drsuapi_drsuapi_DsReplicaUpdateRefsRequest1_dest_dsa_dns_name, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLogInfo1_sam_serial_number, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaUpdateRefsRequest1_dest_dsa_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_sam_creation_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaUpdateRefsRequest1_dest_dsa_guid, NULL);
+ offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLogInfo1_sam_creation_time);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaUpdateRefsRequest1_options(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_builtin_serial_number(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_bitmap_DrsOptions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaUpdateRefsRequest1_options, 0);
+ offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLogInfo1_builtin_serial_number, NULL);
return offset;
}
-int
-drsuapi_dissect_struct_DsReplicaUpdateRefsRequest1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+static int
+drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_builtin_creation_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
-
- ALIGN_TO_5_BYTES;
-
- old_offset = offset;
-
- if (parent_tree) {
- item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaUpdateRefsRequest1);
- }
-
- offset = drsuapi_dissect_element_DsReplicaUpdateRefsRequest1_naming_context(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaUpdateRefsRequest1_dest_dsa_dns_name(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaUpdateRefsRequest1_dest_dsa_guid(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaUpdateRefsRequest1_options(tvb, offset, pinfo, tree, di, drep);
-
-
- proto_item_set_len(item, offset-old_offset);
-
-
- if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_5_BYTES;
- }
+ offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLogInfo1_builtin_creation_time);
return offset;
}
-
-/* IDL: struct { */
-/* IDL: [ref] drsuapi_DsReplicaObjectIdentifier *naming_context; */
-/* IDL: [charset(DOS)] [ref] uint8 *dest_dsa_dns_name; */
-/* IDL: GUID dest_dsa_guid; */
-/* IDL: drsuapi_DrsOptions options; */
-/* IDL: GUID correlationID; */
-/* IDL: [unique(1)] [value(NULL)] drsuapi_VAR_SIZE_BUFFER_WITH_VERSION *reserved_buffer; */
-/* IDL: } */
-
static int
-drsuapi_dissect_element_DsReplicaUpdateRefsRequest2_naming_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_lsa_serial_number(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaUpdateRefsRequest2_naming_context_, NDR_POINTER_REF, "Pointer to Naming Context (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsReplicaUpdateRefsRequest2_naming_context);
+ offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLogInfo1_lsa_serial_number, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaUpdateRefsRequest2_naming_context_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_lsa_creation_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaUpdateRefsRequest2_naming_context,0);
+ offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLogInfo1_lsa_creation_time);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaUpdateRefsRequest2_dest_dsa_dns_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_status(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaUpdateRefsRequest2_dest_dsa_dns_name_, NDR_POINTER_REF, "Pointer to Dest Dsa Dns Name (uint8)",hf_drsuapi_drsuapi_DsReplicaUpdateRefsRequest2_dest_dsa_dns_name);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLogInfo1_status, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaUpdateRefsRequest2_dest_dsa_dns_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_restart_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- char *data;
-
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint8), hf_drsuapi_drsuapi_DsReplicaUpdateRefsRequest2_dest_dsa_dns_name, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_restart_data_, NDR_POINTER_UNIQUE, "Pointer to Restart Data (uint8)",hf_drsuapi_drsuapi_DsGetNT4ChangeLogInfo1_restart_data);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaUpdateRefsRequest2_dest_dsa_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_restart_data_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaUpdateRefsRequest2_dest_dsa_guid, NULL);
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_restart_data__);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaUpdateRefsRequest2_options(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_restart_data__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_bitmap_DrsOptions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaUpdateRefsRequest2_options, 0);
+ offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLogInfo1_restart_data, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaUpdateRefsRequest2_correlationID(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_log_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaUpdateRefsRequest2_correlationID, NULL);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_log_data_, NDR_POINTER_UNIQUE, "Pointer to Log Data (uint8)",hf_drsuapi_drsuapi_DsGetNT4ChangeLogInfo1_log_data);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaUpdateRefsRequest2_reserved_buffer(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_log_data_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaUpdateRefsRequest2_reserved_buffer_, NDR_POINTER_UNIQUE, "Pointer to Reserved Buffer (drsuapi_VAR_SIZE_BUFFER_WITH_VERSION)",hf_drsuapi_drsuapi_DsReplicaUpdateRefsRequest2_reserved_buffer);
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_log_data__);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaUpdateRefsRequest2_reserved_buffer_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_log_data__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_VAR_SIZE_BUFFER_WITH_VERSION(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaUpdateRefsRequest2_reserved_buffer,0);
+ offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLogInfo1_log_data, 0);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaUpdateRefsRequest2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsGetNT4ChangeLogInfo1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_5_BYTES;
+ ALIGN_TO_8_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaUpdateRefsRequest2);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetNT4ChangeLogInfo1);
}
- offset = drsuapi_dissect_element_DsReplicaUpdateRefsRequest2_naming_context(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_restart_length(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaUpdateRefsRequest2_dest_dsa_dns_name(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_log_length(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaUpdateRefsRequest2_dest_dsa_guid(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_sam_serial_number(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaUpdateRefsRequest2_options(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_sam_creation_time(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaUpdateRefsRequest2_correlationID(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_builtin_serial_number(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaUpdateRefsRequest2_reserved_buffer(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_builtin_creation_time(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_lsa_serial_number(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_lsa_creation_time(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_status(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_restart_data(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_log_data(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_5_BYTES;
+ ALIGN_TO_8_BYTES;
}
return offset;
/* IDL: [switch_type(uint32)] union { */
-/* IDL: [case(1)] [case(1)] drsuapi_DsReplicaUpdateRefsRequest1 req1; */
-/* IDL: [case(2)] [case(2)] drsuapi_DsReplicaUpdateRefsRequest2 req2; */
+/* IDL: [case(1)] [case(1)] drsuapi_DsGetNT4ChangeLogInfo1 info1; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaUpdateRefsRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = drsuapi_dissect_struct_DsReplicaUpdateRefsRequest1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaUpdateRefsRequest_req1,0);
-
- return offset;
-}
-
-static int
-drsuapi_dissect_element_DsReplicaUpdateRefsRequest_req2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNT4ChangeLogInfo_info1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaUpdateRefsRequest2(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaUpdateRefsRequest_req2,0);
+ offset = drsuapi_dissect_struct_DsGetNT4ChangeLogInfo1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNT4ChangeLogInfo_info1,0);
return offset;
}
static int
-drsuapi_dissect_DsReplicaUpdateRefsRequest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_DsGetNT4ChangeLogInfo(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
old_offset = offset;
if (parent_tree) {
- tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsReplicaUpdateRefsRequest, &item, "drsuapi_DsReplicaUpdateRefsRequest");
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsGetNT4ChangeLogInfo, &item, "drsuapi_DsGetNT4ChangeLogInfo");
}
offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
- ALIGN_TO_5_BYTES;
+ ALIGN_TO_8_BYTES;
switch(level) {
case 1:
- offset = drsuapi_dissect_element_DsReplicaUpdateRefsRequest_req1(tvb, offset, pinfo, tree, di, drep);
- break;
-
- case 2:
- offset = drsuapi_dissect_element_DsReplicaUpdateRefsRequest_req2(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetNT4ChangeLogInfo_info1(tvb, offset, pinfo, tree, di, drep);
break;
}
proto_item_set_len(item, offset-old_offset);
return offset;
}
-/* IDL: struct { */
-/* IDL: [ref] drsuapi_DsReplicaObjectIdentifier *naming_context; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *source_dsa_address; */
-/* IDL: uint8 schedule[84]; */
-/* IDL: drsuapi_DrsOptions options; */
+/* IDL: enum { */
+/* IDL: DRSUAPI_DS_NAME_STATUS_OK=0, */
+/* IDL: DRSUAPI_DS_NAME_STATUS_RESOLVE_ERROR=1, */
+/* IDL: DRSUAPI_DS_NAME_STATUS_NOT_FOUND=2, */
+/* IDL: DRSUAPI_DS_NAME_STATUS_NOT_UNIQUE=3, */
+/* IDL: DRSUAPI_DS_NAME_STATUS_NO_MAPPING=4, */
+/* IDL: DRSUAPI_DS_NAME_STATUS_DOMAIN_ONLY=5, */
+/* IDL: DRSUAPI_DS_NAME_STATUS_NO_SYNTACTICAL_MAPPING=6, */
+/* IDL: DRSUAPI_DS_NAME_STATUS_TRUST_REFERRAL=7, */
+/* IDL: } */
+
+int
+drsuapi_dissect_enum_DsNameStatus(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
+{
+ guint32 parameter=0;
+ if (param) {
+ parameter = *param;
+ }
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, ¶meter);
+ if (param) {
+ *param = parameter;
+ }
+ return offset;
+}
+
+
+/* IDL: enum { */
+/* IDL: DRSUAPI_DS_NAME_FLAG_NO_FLAGS=0x0, */
+/* IDL: DRSUAPI_DS_NAME_FLAG_SYNTACTICAL_ONLY=0x1, */
+/* IDL: DRSUAPI_DS_NAME_FLAG_EVAL_AT_DC=0x2, */
+/* IDL: DRSUAPI_DS_NAME_FLAG_GCVERIFY=0x4, */
+/* IDL: DRSUAPI_DS_NAME_FLAG_TRUST_REFERRAL=0x8, */
+/* IDL: } */
+
+int
+drsuapi_dissect_enum_DsNameFlags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
+{
+ guint32 parameter=0;
+ if (param) {
+ parameter = *param;
+ }
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, ¶meter);
+ if (param) {
+ *param = parameter;
+ }
+ return offset;
+}
+
+
+/* IDL: enum { */
+/* IDL: DRSUAPI_DS_NAME_FORMAT_UNKNOWN=0x00000000, */
+/* IDL: DRSUAPI_DS_NAME_FORMAT_FQDN_1779=0x00000001, */
+/* IDL: DRSUAPI_DS_NAME_FORMAT_NT4_ACCOUNT=0x00000002, */
+/* IDL: DRSUAPI_DS_NAME_FORMAT_DISPLAY=0x00000003, */
+/* IDL: DRSUAPI_DS_NAME_FORMAT_GUID=0x00000006, */
+/* IDL: DRSUAPI_DS_NAME_FORMAT_CANONICAL=0x00000007, */
+/* IDL: DRSUAPI_DS_NAME_FORMAT_USER_PRINCIPAL=0x00000008, */
+/* IDL: DRSUAPI_DS_NAME_FORMAT_CANONICAL_EX=0x00000009, */
+/* IDL: DRSUAPI_DS_NAME_FORMAT_SERVICE_PRINCIPAL=0x0000000A, */
+/* IDL: DRSUAPI_DS_NAME_FORMAT_SID_OR_SID_HISTORY=0x0000000B, */
+/* IDL: DRSUAPI_DS_NAME_FORMAT_DNS_DOMAIN=0x0000000C, */
+/* IDL: DRSUAPI_DS_NAME_FORMAT_UPN_AND_ALTSECID=0xFFFFFFEF, */
+/* IDL: DRSUAPI_DS_NAME_FORMAT_NT4_ACCOUNT_NAME_SANS_DOMAIN_EX=0xFFFFFFF0, */
+/* IDL: DRSUAPI_DS_NAME_FORMAT_LIST_GLOBAL_CATALOG_SERVERS=0xFFFFFFF1, */
+/* IDL: DRSUAPI_DS_NAME_FORMAT_UPN_FOR_LOGON=0xFFFFFFF2, */
+/* IDL: DRSUAPI_DS_NAME_FORMAT_LIST_SERVERS_WITH_DCS_IN_SITE=0xFFFFFFF3, */
+/* IDL: DRSUAPI_DS_NAME_FORMAT_STRING_SID_NAME=0xFFFFFFF4, */
+/* IDL: DRSUAPI_DS_NAME_FORMAT_ALT_SECURITY_IDENTITIES_NAME=0xFFFFFFF5, */
+/* IDL: DRSUAPI_DS_NAME_FORMAT_LIST_NCS=0xFFFFFFF6, */
+/* IDL: DRSUAPI_DS_NAME_FORMAT_LIST_DOMAINS=0xFFFFFFF7, */
+/* IDL: DRSUAPI_DS_NAME_FORMAT_MAP_SCHEMA_GUID=0xFFFFFFF8, */
+/* IDL: DRSUAPI_DS_NAME_FORMAT_NT4_ACCOUNT_NAME_SANS_DOMAIN=0xFFFFFFF9, */
+/* IDL: DRSUAPI_DS_NAME_FORMAT_LIST_ROLES=0xFFFFFFFA, */
+/* IDL: DRSUAPI_DS_NAME_FORMAT_LIST_INFO_FOR_SERVER=0xFFFFFFFB, */
+/* IDL: DRSUAPI_DS_NAME_FORMAT_LIST_SERVERS_FOR_DOMAIN_IN_SITE=0xFFFFFFFC, */
+/* IDL: DRSUAPI_DS_NAME_FORMAT_LIST_DOMAINS_IN_SITE=0xFFFFFFFD, */
+/* IDL: DRSUAPI_DS_NAME_FORMAT_LIST_SERVERS_IN_SITE=0xFFFFFFFE, */
+/* IDL: DRSUAPI_DS_NAME_FORMAT_LIST_SITES=0xFFFFFFFF, */
/* IDL: } */
-static int
-drsuapi_dissect_element_DsReplicaAddRequest1_naming_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+int
+drsuapi_dissect_enum_DsNameFormat(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAddRequest1_naming_context_, NDR_POINTER_REF, "Pointer to Naming Context (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsReplicaAddRequest1_naming_context);
-
+ guint32 parameter=0;
+ if (param) {
+ parameter = *param;
+ }
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, ¶meter);
+ if (param) {
+ *param = parameter;
+ }
return offset;
}
-static int
-drsuapi_dissect_element_DsReplicaAddRequest1_naming_context_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaAddRequest1_naming_context,0);
- return offset;
-}
+/* IDL: struct { */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *str; */
+/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaAddRequest1_source_dsa_address(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsNameString_str(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAddRequest1_source_dsa_address_, NDR_POINTER_UNIQUE, "Pointer to Source Dsa Address (uint16)",hf_drsuapi_drsuapi_DsReplicaAddRequest1_source_dsa_address);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsNameString_str_, NDR_POINTER_UNIQUE, "Pointer to Str (uint16)",hf_drsuapi_drsuapi_DsNameString_str);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAddRequest1_source_dsa_address_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsNameString_str_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
char *data;
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaAddRequest1_source_dsa_address, FALSE, &data);
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsNameString_str, FALSE, &data);
proto_item_append_text(tree, ": %s", data);
return offset;
}
-static int
-drsuapi_dissect_element_DsReplicaAddRequest1_schedule(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- int i;
- for (i = 0; i < 84; i++)
- offset = drsuapi_dissect_element_DsReplicaAddRequest1_schedule_(tvb, offset, pinfo, tree, di, drep);
-
- return offset;
-}
-
-static int
-drsuapi_dissect_element_DsReplicaAddRequest1_schedule_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAddRequest1_schedule, 0);
-
- return offset;
-}
-
-static int
-drsuapi_dissect_element_DsReplicaAddRequest1_options(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = drsuapi_dissect_bitmap_DrsOptions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAddRequest1_options, 0);
-
- return offset;
-}
-
int
-drsuapi_dissect_struct_DsReplicaAddRequest1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsNameString(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaAddRequest1);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsNameString);
}
- offset = drsuapi_dissect_element_DsReplicaAddRequest1_naming_context(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaAddRequest1_source_dsa_address(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaAddRequest1_schedule(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaAddRequest1_options(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsNameString_str(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
/* IDL: struct { */
-/* IDL: [ref] drsuapi_DsReplicaObjectIdentifier *naming_context; */
-/* IDL: [unique(1)] drsuapi_DsReplicaObjectIdentifier *source_dsa_dn; */
-/* IDL: [unique(1)] drsuapi_DsReplicaObjectIdentifier *transport_dn; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *source_dsa_address; */
-/* IDL: uint8 schedule[84]; */
-/* IDL: drsuapi_DrsOptions options; */
+/* IDL: uint32 codepage; */
+/* IDL: uint32 language; */
+/* IDL: drsuapi_DsNameFlags format_flags; */
+/* IDL: drsuapi_DsNameFormat format_offered; */
+/* IDL: drsuapi_DsNameFormat format_desired; */
+/* IDL: [range(1,10000)] uint32 count; */
+/* IDL: [size_is(count)] [unique(1)] drsuapi_DsNameString *names; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaAddRequest2_naming_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAddRequest2_naming_context_, NDR_POINTER_REF, "Pointer to Naming Context (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsReplicaAddRequest2_naming_context);
-
- return offset;
-}
-
-static int
-drsuapi_dissect_element_DsReplicaAddRequest2_naming_context_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaAddRequest2_naming_context,0);
-
- return offset;
-}
-
-static int
-drsuapi_dissect_element_DsReplicaAddRequest2_source_dsa_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsNameRequest1_codepage(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAddRequest2_source_dsa_dn_, NDR_POINTER_UNIQUE, "Pointer to Source Dsa Dn (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsReplicaAddRequest2_source_dsa_dn);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsNameRequest1_codepage, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAddRequest2_source_dsa_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsNameRequest1_language(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaAddRequest2_source_dsa_dn,0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsNameRequest1_language, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAddRequest2_transport_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsNameRequest1_format_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAddRequest2_transport_dn_, NDR_POINTER_UNIQUE, "Pointer to Transport Dn (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsReplicaAddRequest2_transport_dn);
+ offset = drsuapi_dissect_enum_DsNameFlags(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsNameRequest1_format_flags, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAddRequest2_transport_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsNameRequest1_format_offered(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaAddRequest2_transport_dn,0);
+ offset = drsuapi_dissect_enum_DsNameFormat(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsNameRequest1_format_offered, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAddRequest2_source_dsa_address(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsNameRequest1_format_desired(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAddRequest2_source_dsa_address_, NDR_POINTER_UNIQUE, "Pointer to Source Dsa Address (uint16)",hf_drsuapi_drsuapi_DsReplicaAddRequest2_source_dsa_address);
+ offset = drsuapi_dissect_enum_DsNameFormat(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsNameRequest1_format_desired, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAddRequest2_source_dsa_address_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsNameRequest1_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- char *data;
-
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaAddRequest2_source_dsa_address, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsNameRequest1_count, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAddRequest2_schedule(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsNameRequest1_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- int i;
- for (i = 0; i < 84; i++)
- offset = drsuapi_dissect_element_DsReplicaAddRequest2_schedule_(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsNameRequest1_names_, NDR_POINTER_UNIQUE, "Pointer to Names (drsuapi_DsNameString)",hf_drsuapi_drsuapi_DsNameRequest1_names);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAddRequest2_schedule_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsNameRequest1_names_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAddRequest2_schedule, 0);
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsNameRequest1_names__);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAddRequest2_options(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsNameRequest1_names__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_bitmap_DrsOptions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAddRequest2_options, 0);
+ offset = drsuapi_dissect_struct_DsNameString(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsNameRequest1_names,0);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaAddRequest2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsNameRequest1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaAddRequest2);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsNameRequest1);
}
- offset = drsuapi_dissect_element_DsReplicaAddRequest2_naming_context(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsNameRequest1_codepage(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaAddRequest2_source_dsa_dn(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsNameRequest1_language(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaAddRequest2_transport_dn(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsNameRequest1_format_flags(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaAddRequest2_source_dsa_address(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsNameRequest1_format_offered(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaAddRequest2_schedule(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsNameRequest1_format_desired(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaAddRequest2_options(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsNameRequest1_count(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsNameRequest1_names(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
}
-/* IDL: struct { */
-/* IDL: [ref] drsuapi_DsReplicaObjectIdentifier *naming_context; */
-/* IDL: [unique(1)] drsuapi_DsReplicaObjectIdentifier *source_dsa_dn; */
-/* IDL: [unique(1)] drsuapi_DsReplicaObjectIdentifier *transport_dn; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *source_dsa_address; */
-/* IDL: uint8 schedule[84]; */
-/* IDL: drsuapi_DrsOptions options; */
-/* IDL: GUID correlationID; */
-/* IDL: [unique(1)] [value(NULL)] drsuapi_VAR_SIZE_BUFFER_WITH_VERSION *reserved_buffer; */
+/* IDL: [switch_type(uint32)] union { */
+/* IDL: [case(1)] [case(1)] drsuapi_DsNameRequest1 req1; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaAddRequest3_naming_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsNameRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAddRequest3_naming_context_, NDR_POINTER_REF, "Pointer to Naming Context (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsReplicaAddRequest3_naming_context);
+ offset = drsuapi_dissect_struct_DsNameRequest1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsNameRequest_req1,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAddRequest3_naming_context_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsNameRequest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaAddRequest3_naming_context,0);
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+ guint32 level;
- return offset;
-}
+ old_offset = offset;
+ if (parent_tree) {
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsNameRequest, &item, "drsuapi_DsNameRequest");
+ }
+
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
+ ALIGN_TO_5_BYTES;
+
+ switch(level) {
+ case 1:
+ offset = drsuapi_dissect_element_DsNameRequest_req1(tvb, offset, pinfo, tree, di, drep);
+ break;
+ }
+ proto_item_set_len(item, offset-old_offset);
-static int
-drsuapi_dissect_element_DsReplicaAddRequest3_source_dsa_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAddRequest3_source_dsa_dn_, NDR_POINTER_UNIQUE, "Pointer to Source Dsa Dn (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsReplicaAddRequest3_source_dsa_dn);
return offset;
}
+/* IDL: struct { */
+/* IDL: drsuapi_DsNameStatus status; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *dns_domain_name; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *result_name; */
+/* IDL: } */
+
static int
-drsuapi_dissect_element_DsReplicaAddRequest3_source_dsa_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsNameInfo1_status(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaAddRequest3_source_dsa_dn,0);
+ offset = drsuapi_dissect_enum_DsNameStatus(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsNameInfo1_status, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAddRequest3_transport_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsNameInfo1_dns_domain_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAddRequest3_transport_dn_, NDR_POINTER_UNIQUE, "Pointer to Transport Dn (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsReplicaAddRequest3_transport_dn);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsNameInfo1_dns_domain_name_, NDR_POINTER_UNIQUE, "Pointer to Dns Domain Name (uint16)",hf_drsuapi_drsuapi_DsNameInfo1_dns_domain_name);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAddRequest3_transport_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsNameInfo1_dns_domain_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaAddRequest3_transport_dn,0);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsNameInfo1_dns_domain_name, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAddRequest3_source_dsa_address(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsNameInfo1_result_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAddRequest3_source_dsa_address_, NDR_POINTER_UNIQUE, "Pointer to Source Dsa Address (uint16)",hf_drsuapi_drsuapi_DsReplicaAddRequest3_source_dsa_address);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsNameInfo1_result_name_, NDR_POINTER_UNIQUE, "Pointer to Result Name (uint16)",hf_drsuapi_drsuapi_DsNameInfo1_result_name);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAddRequest3_source_dsa_address_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsNameInfo1_result_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
char *data;
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaAddRequest3_source_dsa_address, FALSE, &data);
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsNameInfo1_result_name, FALSE, &data);
proto_item_append_text(tree, ": %s", data);
return offset;
}
-static int
-drsuapi_dissect_element_DsReplicaAddRequest3_schedule(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- int i;
- for (i = 0; i < 84; i++)
- offset = drsuapi_dissect_element_DsReplicaAddRequest3_schedule_(tvb, offset, pinfo, tree, di, drep);
+int
+drsuapi_dissect_struct_DsNameInfo1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+{
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+
+ ALIGN_TO_5_BYTES;
+
+ old_offset = offset;
+
+ if (parent_tree) {
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsNameInfo1);
+ }
+
+ offset = drsuapi_dissect_element_DsNameInfo1_status(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsNameInfo1_dns_domain_name(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsNameInfo1_result_name(tvb, offset, pinfo, tree, di, drep);
+
+
+ proto_item_set_len(item, offset-old_offset);
+
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_5_BYTES;
+ }
return offset;
}
-static int
-drsuapi_dissect_element_DsReplicaAddRequest3_schedule_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAddRequest3_schedule, 0);
- return offset;
-}
+/* IDL: struct { */
+/* IDL: uint32 count; */
+/* IDL: [size_is(count)] [unique(1)] drsuapi_DsNameInfo1 *array; */
+/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaAddRequest3_options(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsNameCtr1_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_bitmap_DrsOptions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAddRequest3_options, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsNameCtr1_count, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAddRequest3_correlationID(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsNameCtr1_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAddRequest3_correlationID, NULL);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsNameCtr1_array_, NDR_POINTER_UNIQUE, "Pointer to Array (drsuapi_DsNameInfo1)",hf_drsuapi_drsuapi_DsNameCtr1_array);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAddRequest3_reserved_buffer(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsNameCtr1_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAddRequest3_reserved_buffer_, NDR_POINTER_UNIQUE, "Pointer to Reserved Buffer (drsuapi_VAR_SIZE_BUFFER_WITH_VERSION)",hf_drsuapi_drsuapi_DsReplicaAddRequest3_reserved_buffer);
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsNameCtr1_array__);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAddRequest3_reserved_buffer_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsNameCtr1_array__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_VAR_SIZE_BUFFER_WITH_VERSION(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaAddRequest3_reserved_buffer,0);
+ offset = drsuapi_dissect_struct_DsNameInfo1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsNameCtr1_array,0);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaAddRequest3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsNameCtr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaAddRequest3);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsNameCtr1);
}
- offset = drsuapi_dissect_element_DsReplicaAddRequest3_naming_context(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaAddRequest3_source_dsa_dn(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaAddRequest3_transport_dn(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaAddRequest3_source_dsa_address(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaAddRequest3_schedule(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaAddRequest3_options(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaAddRequest3_correlationID(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsNameCtr1_count(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaAddRequest3_reserved_buffer(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsNameCtr1_array(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
/* IDL: [switch_type(uint32)] union { */
-/* IDL: [case(1)] [case(1)] drsuapi_DsReplicaAddRequest1 req1; */
-/* IDL: [case(2)] [case(2)] drsuapi_DsReplicaAddRequest2 req2; */
-/* IDL: [case(3)] [case(3)] drsuapi_DsReplicaAddRequest3 req3; */
+/* IDL: [case(1)] [case(1)] [unique(1)] drsuapi_DsNameCtr1 *ctr1; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaAddRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = drsuapi_dissect_struct_DsReplicaAddRequest1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaAddRequest_req1,0);
-
- return offset;
-}
-
-static int
-drsuapi_dissect_element_DsReplicaAddRequest_req2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsNameCtr_ctr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaAddRequest2(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaAddRequest_req2,0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsNameCtr_ctr1_, NDR_POINTER_UNIQUE, "Pointer to Ctr1 (drsuapi_DsNameCtr1)",hf_drsuapi_drsuapi_DsNameCtr_ctr1);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAddRequest_req3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsNameCtr_ctr1_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaAddRequest3(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaAddRequest_req3,0);
+ offset = drsuapi_dissect_struct_DsNameCtr1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsNameCtr_ctr1,0);
return offset;
}
static int
-drsuapi_dissect_DsReplicaAddRequest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_DsNameCtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
old_offset = offset;
if (parent_tree) {
- tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsReplicaAddRequest, &item, "drsuapi_DsReplicaAddRequest");
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsNameCtr, &item, "drsuapi_DsNameCtr");
}
offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
switch(level) {
case 1:
- offset = drsuapi_dissect_element_DsReplicaAddRequest_req1(tvb, offset, pinfo, tree, di, drep);
- break;
-
- case 2:
- offset = drsuapi_dissect_element_DsReplicaAddRequest_req2(tvb, offset, pinfo, tree, di, drep);
- break;
-
- case 3:
- offset = drsuapi_dissect_element_DsReplicaAddRequest_req3(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsNameCtr_ctr1(tvb, offset, pinfo, tree, di, drep);
break;
}
proto_item_set_len(item, offset-old_offset);
return offset;
}
+/* IDL: enum { */
+/* IDL: DRSUAPI_DS_SPN_OPERATION_ADD=0, */
+/* IDL: DRSUAPI_DS_SPN_OPERATION_REPLACE=1, */
+/* IDL: DRSUAPI_DS_SPN_OPERATION_DELETE=2, */
+/* IDL: } */
+
+int
+drsuapi_dissect_enum_DsSpnOperation(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
+{
+ guint32 parameter=0;
+ if (param) {
+ parameter = *param;
+ }
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, ¶meter);
+ if (param) {
+ *param = parameter;
+ }
+ return offset;
+}
+
+
/* IDL: struct { */
-/* IDL: [ref] drsuapi_DsReplicaObjectIdentifier *naming_context; */
-/* IDL: [charset(UTF8)] [unique(1)] uint8 *source_dsa_address; */
-/* IDL: drsuapi_DrsOptions options; */
+/* IDL: drsuapi_DsSpnOperation operation; */
+/* IDL: uint32 unknown1; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *object_dn; */
+/* IDL: [range(0,10000)] uint32 count; */
+/* IDL: [size_is(count)] [unique(1)] drsuapi_DsNameString *spn_names; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaDelRequest1_naming_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsWriteAccountSpnRequest1_operation(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaDelRequest1_naming_context_, NDR_POINTER_REF, "Pointer to Naming Context (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsReplicaDelRequest1_naming_context);
+ offset = drsuapi_dissect_enum_DsSpnOperation(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsWriteAccountSpnRequest1_operation, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaDelRequest1_naming_context_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsWriteAccountSpnRequest1_unknown1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaDelRequest1_naming_context,0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsWriteAccountSpnRequest1_unknown1, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaDelRequest1_source_dsa_address(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsWriteAccountSpnRequest1_object_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaDelRequest1_source_dsa_address_, NDR_POINTER_UNIQUE, "Pointer to Source Dsa Address (uint8)",hf_drsuapi_drsuapi_DsReplicaDelRequest1_source_dsa_address);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsWriteAccountSpnRequest1_object_dn_, NDR_POINTER_UNIQUE, "Pointer to Object Dn (uint16)",hf_drsuapi_drsuapi_DsWriteAccountSpnRequest1_object_dn);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaDelRequest1_source_dsa_address_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsWriteAccountSpnRequest1_object_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
char *data;
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint8), hf_drsuapi_drsuapi_DsReplicaDelRequest1_source_dsa_address, FALSE, &data);
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsWriteAccountSpnRequest1_object_dn, FALSE, &data);
proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaDelRequest1_options(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsWriteAccountSpnRequest1_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_bitmap_DrsOptions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaDelRequest1_options, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsWriteAccountSpnRequest1_count, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsWriteAccountSpnRequest1_spn_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsWriteAccountSpnRequest1_spn_names_, NDR_POINTER_UNIQUE, "Pointer to Spn Names (drsuapi_DsNameString)",hf_drsuapi_drsuapi_DsWriteAccountSpnRequest1_spn_names);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsWriteAccountSpnRequest1_spn_names_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsWriteAccountSpnRequest1_spn_names__);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsWriteAccountSpnRequest1_spn_names__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsNameString(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsWriteAccountSpnRequest1_spn_names,0);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaDelRequest1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsWriteAccountSpnRequest1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaDelRequest1);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsWriteAccountSpnRequest1);
}
- offset = drsuapi_dissect_element_DsReplicaDelRequest1_naming_context(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsWriteAccountSpnRequest1_operation(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaDelRequest1_source_dsa_address(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsWriteAccountSpnRequest1_unknown1(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaDelRequest1_options(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsWriteAccountSpnRequest1_object_dn(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsWriteAccountSpnRequest1_count(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsWriteAccountSpnRequest1_spn_names(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
/* IDL: [switch_type(uint32)] union { */
-/* IDL: [case(1)] [case(1)] drsuapi_DsReplicaDelRequest1 req1; */
+/* IDL: [case(1)] [case(1)] drsuapi_DsWriteAccountSpnRequest1 req1; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaDelRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsWriteAccountSpnRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaDelRequest1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaDelRequest_req1,0);
+ offset = drsuapi_dissect_struct_DsWriteAccountSpnRequest1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsWriteAccountSpnRequest_req1,0);
return offset;
}
static int
-drsuapi_dissect_DsReplicaDelRequest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_DsWriteAccountSpnRequest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
old_offset = offset;
if (parent_tree) {
- tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsReplicaDelRequest, &item, "drsuapi_DsReplicaDelRequest");
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsWriteAccountSpnRequest, &item, "drsuapi_DsWriteAccountSpnRequest");
}
offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
switch(level) {
case 1:
- offset = drsuapi_dissect_element_DsReplicaDelRequest_req1(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsWriteAccountSpnRequest_req1(tvb, offset, pinfo, tree, di, drep);
break;
}
proto_item_set_len(item, offset-old_offset);
}
/* IDL: struct { */
-/* IDL: [ref] drsuapi_DsReplicaObjectIdentifier *naming_context; */
-/* IDL: GUID source_dra; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *source_dra_address; */
-/* IDL: uint8 schedule[84]; */
-/* IDL: drsuapi_DrsOptions replica_flags; */
-/* IDL: uint32 modify_fields; */
-/* IDL: drsuapi_DrsOptions options; */
+/* IDL: WERROR status; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaModRequest1_naming_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsWriteAccountSpnResult1_status(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaModRequest1_naming_context_, NDR_POINTER_REF, "Pointer to Naming Context (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsReplicaModRequest1_naming_context);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsWriteAccountSpnResult1_status, 0);
return offset;
}
-static int
-drsuapi_dissect_element_DsReplicaModRequest1_naming_context_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+int
+drsuapi_dissect_struct_DsWriteAccountSpnResult1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaModRequest1_naming_context,0);
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
- return offset;
-}
+ ALIGN_TO_4_BYTES;
-static int
-drsuapi_dissect_element_DsReplicaModRequest1_source_dra(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaModRequest1_source_dra, NULL);
+ old_offset = offset;
+
+ if (parent_tree) {
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsWriteAccountSpnResult1);
+ }
+
+ offset = drsuapi_dissect_element_DsWriteAccountSpnResult1_status(tvb, offset, pinfo, tree, di, drep);
+
+
+ proto_item_set_len(item, offset-old_offset);
+
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_4_BYTES;
+ }
return offset;
}
+
+/* IDL: [switch_type(uint32)] union { */
+/* IDL: [case(1)] [case(1)] drsuapi_DsWriteAccountSpnResult1 res1; */
+/* IDL: } */
+
static int
-drsuapi_dissect_element_DsReplicaModRequest1_source_dra_address(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsWriteAccountSpnResult_res1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaModRequest1_source_dra_address_, NDR_POINTER_UNIQUE, "Pointer to Source Dra Address (uint16)",hf_drsuapi_drsuapi_DsReplicaModRequest1_source_dra_address);
+ offset = drsuapi_dissect_struct_DsWriteAccountSpnResult1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsWriteAccountSpnResult_res1,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaModRequest1_source_dra_address_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsWriteAccountSpnResult(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- char *data;
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+ guint32 level;
+
+ old_offset = offset;
+ if (parent_tree) {
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsWriteAccountSpnResult, &item, "drsuapi_DsWriteAccountSpnResult");
+ }
+
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
+ ALIGN_TO_4_BYTES;
+
+ switch(level) {
+ case 1:
+ offset = drsuapi_dissect_element_DsWriteAccountSpnResult_res1(tvb, offset, pinfo, tree, di, drep);
+ break;
+ }
+ proto_item_set_len(item, offset-old_offset);
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaModRequest1_source_dra_address, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
return offset;
}
+/* IDL: struct { */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *server_dn; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *domain_dn; */
+/* IDL: uint32 commit; */
+/* IDL: } */
+
static int
-drsuapi_dissect_element_DsReplicaModRequest1_schedule(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsRemoveDSServerRequest1_server_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- int i;
- for (i = 0; i < 84; i++)
- offset = drsuapi_dissect_element_DsReplicaModRequest1_schedule_(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsRemoveDSServerRequest1_server_dn_, NDR_POINTER_UNIQUE, "Pointer to Server Dn (uint16)",hf_drsuapi_drsuapi_DsRemoveDSServerRequest1_server_dn);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaModRequest1_schedule_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsRemoveDSServerRequest1_server_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaModRequest1_schedule, 0);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsRemoveDSServerRequest1_server_dn, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaModRequest1_replica_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsRemoveDSServerRequest1_domain_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_bitmap_DrsOptions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaModRequest1_replica_flags, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsRemoveDSServerRequest1_domain_dn_, NDR_POINTER_UNIQUE, "Pointer to Domain Dn (uint16)",hf_drsuapi_drsuapi_DsRemoveDSServerRequest1_domain_dn);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaModRequest1_modify_fields(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsRemoveDSServerRequest1_domain_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaModRequest1_modify_fields, 0);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsRemoveDSServerRequest1_domain_dn, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaModRequest1_options(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsRemoveDSServerRequest1_commit(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_bitmap_DrsOptions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaModRequest1_options, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsRemoveDSServerRequest1_commit, 0);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaModRequest1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsRemoveDSServerRequest1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaModRequest1);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsRemoveDSServerRequest1);
}
- offset = drsuapi_dissect_element_DsReplicaModRequest1_naming_context(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaModRequest1_source_dra(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaModRequest1_source_dra_address(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaModRequest1_schedule(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaModRequest1_replica_flags(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsRemoveDSServerRequest1_server_dn(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaModRequest1_modify_fields(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsRemoveDSServerRequest1_domain_dn(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaModRequest1_options(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsRemoveDSServerRequest1_commit(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
/* IDL: [switch_type(uint32)] union { */
-/* IDL: [case(1)] [case(1)] drsuapi_DsReplicaModRequest1 req1; */
+/* IDL: [case(1)] [case(1)] drsuapi_DsRemoveDSServerRequest1 req1; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaModRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsRemoveDSServerRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaModRequest1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaModRequest_req1,0);
+ offset = drsuapi_dissect_struct_DsRemoveDSServerRequest1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsRemoveDSServerRequest_req1,0);
return offset;
}
static int
-drsuapi_dissect_DsReplicaModRequest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_DsRemoveDSServerRequest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
old_offset = offset;
if (parent_tree) {
- tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsReplicaModRequest, &item, "drsuapi_DsReplicaModRequest");
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsRemoveDSServerRequest, &item, "drsuapi_DsRemoveDSServerRequest");
}
offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
switch(level) {
case 1:
- offset = drsuapi_dissect_element_DsReplicaModRequest_req1(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsRemoveDSServerRequest_req1(tvb, offset, pinfo, tree, di, drep);
break;
}
proto_item_set_len(item, offset-old_offset);
return offset;
}
-/* IDL: enum { */
-/* IDL: DRSUAPI_DS_MEMBERSHIP_TYPE_UNIVERSAL_AND_DOMAIN_GROUPS=1, */
-/* IDL: DRSUAPI_DS_MEMBERSHIP_TYPE_DOMAIN_LOCAL_GROUPS=2, */
-/* IDL: DRSUAPI_DS_MEMBERSHIP_TYPE_DOMAIN_GROUPS=3, */
-/* IDL: DRSUAPI_DS_MEMBERSHIP_TYPE_DOMAIN_LOCAL_GROUPS2=4, */
-/* IDL: DRSUAPI_DS_MEMBERSHIP_TYPE_UNIVERSAL_GROUPS=5, */
-/* IDL: DRSUAPI_DS_MEMBERSHIP_TYPE_GROUPMEMBERS=6, */
-/* IDL: DRSUAPI_DS_MEMBERSHIP_TYPE_DOMAIN_GROUPS2=7, */
-/* IDL: } */
-
-int
-drsuapi_dissect_enum_DsMembershipType(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
-{
- guint32 parameter=0;
- if (param) {
- parameter = *param;
- }
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, ¶meter);
- if (param) {
- *param = parameter;
- }
- return offset;
-}
-
-
/* IDL: struct { */
-/* IDL: NTSTATUS status; */
-/* IDL: [range(0,10000)] uint32 num_memberships; */
-/* IDL: [range(0,10000)] uint32 num_sids; */
-/* IDL: [size_is(num_memberships)] [unique(1)] drsuapi_DsReplicaObjectIdentifier **info_array; */
-/* IDL: [size_is(num_memberships)] [unique(1)] security_GroupAttrs *group_attrs; */
-/* IDL: [size_is(num_sids)] [unique(1)] dom_sid28 **sids; */
+/* IDL: uint32 last_dc_in_domain; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsGetMembershipsCtr1_status(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsRemoveDSServerResult1_last_dc_in_domain(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetMembershipsCtr1_status, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsRemoveDSServerResult1_last_dc_in_domain, 0);
return offset;
}
-static int
-drsuapi_dissect_element_DsGetMembershipsCtr1_num_memberships(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+int
+drsuapi_dissect_struct_DsRemoveDSServerResult1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetMembershipsCtr1_num_memberships, 0);
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
- return offset;
-}
+ ALIGN_TO_4_BYTES;
-static int
-drsuapi_dissect_element_DsGetMembershipsCtr1_num_sids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetMembershipsCtr1_num_sids, 0);
+ old_offset = offset;
- return offset;
-}
+ if (parent_tree) {
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsRemoveDSServerResult1);
+ }
-static int
-drsuapi_dissect_element_DsGetMembershipsCtr1_info_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMembershipsCtr1_info_array_, NDR_POINTER_UNIQUE, "Pointer to Info Array (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsGetMembershipsCtr1_info_array);
+ offset = drsuapi_dissect_element_DsRemoveDSServerResult1_last_dc_in_domain(tvb, offset, pinfo, tree, di, drep);
- return offset;
-}
-static int
-drsuapi_dissect_element_DsGetMembershipsCtr1_info_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMembershipsCtr1_info_array__);
+ proto_item_set_len(item, offset-old_offset);
- return offset;
-}
-static int
-drsuapi_dissect_element_DsGetMembershipsCtr1_info_array__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMembershipsCtr1_info_array___, NDR_POINTER_UNIQUE, "Pointer to Info Array (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsGetMembershipsCtr1_info_array);
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_4_BYTES;
+ }
return offset;
}
-static int
-drsuapi_dissect_element_DsGetMembershipsCtr1_info_array___(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetMembershipsCtr1_info_array,0);
- return offset;
-}
+/* IDL: [switch_type(uint32)] union { */
+/* IDL: [case(1)] [case(1)] drsuapi_DsRemoveDSServerResult1 res1; */
+/* IDL: } */
static int
-drsuapi_dissect_element_DsGetMembershipsCtr1_group_attrs(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsRemoveDSServerResult_res1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMembershipsCtr1_group_attrs_, NDR_POINTER_UNIQUE, "Pointer to Group Attrs (security_GroupAttrs)",hf_drsuapi_drsuapi_DsGetMembershipsCtr1_group_attrs);
+ offset = drsuapi_dissect_struct_DsRemoveDSServerResult1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsRemoveDSServerResult_res1,0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetMembershipsCtr1_group_attrs_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsRemoveDSServerResult(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMembershipsCtr1_group_attrs__);
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+ guint32 level;
- return offset;
-}
+ old_offset = offset;
+ if (parent_tree) {
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsRemoveDSServerResult, &item, "drsuapi_DsRemoveDSServerResult");
+ }
+
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
+ ALIGN_TO_4_BYTES;
+
+ switch(level) {
+ case 1:
+ offset = drsuapi_dissect_element_DsRemoveDSServerResult_res1(tvb, offset, pinfo, tree, di, drep);
+ break;
+ }
+ proto_item_set_len(item, offset-old_offset);
-static int
-drsuapi_dissect_element_DsGetMembershipsCtr1_group_attrs__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = drsuapi_dissect_bitmap_security_GroupAttrs(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetMembershipsCtr1_group_attrs, 0);
return offset;
}
-static int
-drsuapi_dissect_element_DsGetMembershipsCtr1_sids(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMembershipsCtr1_sids_, NDR_POINTER_UNIQUE, "Pointer to Sids (dom_sid28)",hf_drsuapi_drsuapi_DsGetMembershipsCtr1_sids);
+/* IDL: enum { */
+/* IDL: DRSUAPI_DC_INFO_CTR_1=1, */
+/* IDL: DRSUAPI_DC_INFO_CTR_2=2, */
+/* IDL: DRSUAPI_DC_INFO_CTR_3=3, */
+/* IDL: DRSUAPI_DC_CONNECTION_CTR_01=0xFFFFFFFF, */
+/* IDL: } */
+int
+drsuapi_dissect_enum_DsGetDCInfoCtrLevels(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
+{
+ guint32 parameter=0;
+ if (param) {
+ parameter = *param;
+ }
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, ¶meter);
+ if (param) {
+ *param = parameter;
+ }
return offset;
}
+
+/* IDL: struct { */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *domain_name; */
+/* IDL: drsuapi_DsGetDCInfoCtrLevels level; */
+/* IDL: } */
+
static int
-drsuapi_dissect_element_DsGetMembershipsCtr1_sids_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfoRequest1_domain_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMembershipsCtr1_sids__);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfoRequest1_domain_name_, NDR_POINTER_UNIQUE, "Pointer to Domain Name (uint16)",hf_drsuapi_drsuapi_DsGetDCInfoRequest1_domain_name);
return offset;
}
static int
-drsuapi_dissect_element_DsGetMembershipsCtr1_sids__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfoRequest1_domain_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMembershipsCtr1_sids___, NDR_POINTER_UNIQUE, "Pointer to Sids (dom_sid28)",hf_drsuapi_drsuapi_DsGetMembershipsCtr1_sids);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfoRequest1_domain_name, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsGetMembershipsCtr1_sids___(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfoRequest1_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
-
- di->hf_index = hf_drsuapi_drsuapi_DsGetMembershipsCtr1_sids;
-
- offset = dissect_ndr_nt_SID28(tvb, offset, pinfo, tree, di, drep);
-
+ offset = drsuapi_dissect_enum_DsGetDCInfoCtrLevels(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfoRequest1_level, 0);
return offset;
}
int
-drsuapi_dissect_struct_DsGetMembershipsCtr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsGetDCInfoRequest1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetMembershipsCtr1);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetDCInfoRequest1);
}
- offset = drsuapi_dissect_element_DsGetMembershipsCtr1_status(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetMembershipsCtr1_num_memberships(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetMembershipsCtr1_num_sids(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetMembershipsCtr1_info_array(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetMembershipsCtr1_group_attrs(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetDCInfoRequest1_domain_name(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetMembershipsCtr1_sids(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetDCInfoRequest1_level(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
/* IDL: [switch_type(uint32)] union { */
-/* IDL: [case(1)] [case(1)] drsuapi_DsGetMembershipsCtr1 ctr1; */
+/* IDL: [case(1)] [case(1)] drsuapi_DsGetDCInfoRequest1 req1; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsGetMembershipsCtr_ctr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfoRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsGetMembershipsCtr1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetMembershipsCtr_ctr1,0);
+ offset = drsuapi_dissect_struct_DsGetDCInfoRequest1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetDCInfoRequest_req1,0);
return offset;
}
static int
-drsuapi_dissect_DsGetMembershipsCtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_DsGetDCInfoRequest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
old_offset = offset;
if (parent_tree) {
- tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsGetMembershipsCtr, &item, "drsuapi_DsGetMembershipsCtr");
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsGetDCInfoRequest, &item, "drsuapi_DsGetDCInfoRequest");
}
offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
switch(level) {
case 1:
- offset = drsuapi_dissect_element_DsGetMembershipsCtr_ctr1(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetDCInfoRequest_req1(tvb, offset, pinfo, tree, di, drep);
break;
}
proto_item_set_len(item, offset-old_offset);
}
/* IDL: struct { */
-/* IDL: [range(1,10000)] uint32 count; */
-/* IDL: [size_is(count)] [unique(1)] drsuapi_DsReplicaObjectIdentifier **info_array; */
-/* IDL: uint32 flags; */
-/* IDL: [range(1,7)] drsuapi_DsMembershipType type; */
-/* IDL: [unique(1)] drsuapi_DsReplicaObjectIdentifier *domain; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *netbios_name; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *dns_name; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *site_name; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *computer_dn; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *server_dn; */
+/* IDL: uint32 is_pdc; */
+/* IDL: uint32 is_enabled; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsGetMembershipsRequest1_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo1_netbios_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetMembershipsRequest1_count, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfo1_netbios_name_, NDR_POINTER_UNIQUE, "Pointer to Netbios Name (uint16)",hf_drsuapi_drsuapi_DsGetDCInfo1_netbios_name);
return offset;
}
static int
-drsuapi_dissect_element_DsGetMembershipsRequest1_info_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo1_netbios_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMembershipsRequest1_info_array_, NDR_POINTER_UNIQUE, "Pointer to Info Array (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsGetMembershipsRequest1_info_array);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfo1_netbios_name, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsGetMembershipsRequest1_info_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo1_dns_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMembershipsRequest1_info_array__);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfo1_dns_name_, NDR_POINTER_UNIQUE, "Pointer to Dns Name (uint16)",hf_drsuapi_drsuapi_DsGetDCInfo1_dns_name);
return offset;
}
static int
-drsuapi_dissect_element_DsGetMembershipsRequest1_info_array__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo1_dns_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMembershipsRequest1_info_array___, NDR_POINTER_UNIQUE, "Pointer to Info Array (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsGetMembershipsRequest1_info_array);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfo1_dns_name, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsGetMembershipsRequest1_info_array___(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo1_site_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetMembershipsRequest1_info_array,0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfo1_site_name_, NDR_POINTER_UNIQUE, "Pointer to Site Name (uint16)",hf_drsuapi_drsuapi_DsGetDCInfo1_site_name);
return offset;
}
static int
-drsuapi_dissect_element_DsGetMembershipsRequest1_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo1_site_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetMembershipsRequest1_flags, 0);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfo1_site_name, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsGetMembershipsRequest1_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo1_computer_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_enum_DsMembershipType(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetMembershipsRequest1_type, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfo1_computer_dn_, NDR_POINTER_UNIQUE, "Pointer to Computer Dn (uint16)",hf_drsuapi_drsuapi_DsGetDCInfo1_computer_dn);
return offset;
}
static int
-drsuapi_dissect_element_DsGetMembershipsRequest1_domain(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo1_computer_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMembershipsRequest1_domain_, NDR_POINTER_UNIQUE, "Pointer to Domain (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsGetMembershipsRequest1_domain);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfo1_computer_dn, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsGetMembershipsRequest1_domain_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo1_server_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetMembershipsRequest1_domain,0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfo1_server_dn_, NDR_POINTER_UNIQUE, "Pointer to Server Dn (uint16)",hf_drsuapi_drsuapi_DsGetDCInfo1_server_dn);
return offset;
}
-int
-drsuapi_dissect_struct_DsGetMembershipsRequest1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+static int
+drsuapi_dissect_element_DsGetDCInfo1_server_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
-
- ALIGN_TO_5_BYTES;
-
- old_offset = offset;
-
- if (parent_tree) {
- item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetMembershipsRequest1);
- }
-
- offset = drsuapi_dissect_element_DsGetMembershipsRequest1_count(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetMembershipsRequest1_info_array(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetMembershipsRequest1_flags(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetMembershipsRequest1_type(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetMembershipsRequest1_domain(tvb, offset, pinfo, tree, di, drep);
-
-
- proto_item_set_len(item, offset-old_offset);
-
+ char *data;
- if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_5_BYTES;
- }
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfo1_server_dn, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
+static int
+drsuapi_dissect_element_DsGetDCInfo1_is_pdc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfo1_is_pdc, 0);
-/* IDL: [switch_type(uint32)] union { */
-/* IDL: [case(1)] [case(1)] drsuapi_DsGetMembershipsRequest1 req1; */
-/* IDL: } */
+ return offset;
+}
static int
-drsuapi_dissect_element_DsGetMembershipsRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo1_is_enabled(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsGetMembershipsRequest1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetMembershipsRequest_req1,0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfo1_is_enabled, 0);
return offset;
}
-static int
-drsuapi_dissect_DsGetMembershipsRequest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+int
+drsuapi_dissect_struct_DsGetDCInfo1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- guint32 level;
+
+ ALIGN_TO_5_BYTES;
old_offset = offset;
+
if (parent_tree) {
- tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsGetMembershipsRequest, &item, "drsuapi_DsGetMembershipsRequest");
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetDCInfo1);
}
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
- ALIGN_TO_5_BYTES;
+ offset = drsuapi_dissect_element_DsGetDCInfo1_netbios_name(tvb, offset, pinfo, tree, di, drep);
- switch(level) {
- case 1:
- offset = drsuapi_dissect_element_DsGetMembershipsRequest_req1(tvb, offset, pinfo, tree, di, drep);
- break;
- }
- proto_item_set_len(item, offset-old_offset);
+ offset = drsuapi_dissect_element_DsGetDCInfo1_dns_name(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetDCInfo1_site_name(tvb, offset, pinfo, tree, di, drep);
- return offset;
-}
+ offset = drsuapi_dissect_element_DsGetDCInfo1_computer_dn(tvb, offset, pinfo, tree, di, drep);
-/* IDL: bitmap { */
-/* IDL: DRSUAPI_NT4_CHANGELOG_GET_CHANGELOG = 0x00000001 , */
-/* IDL: DRSUAPI_NT4_CHANGELOG_GET_SERIAL_NUMBERS = 0x00000002 , */
-/* IDL: } */
+ offset = drsuapi_dissect_element_DsGetDCInfo1_server_dn(tvb, offset, pinfo, tree, di, drep);
-int
-drsuapi_dissect_bitmap_DsGetNT4ChangeLogFlags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
-{
- proto_item *item;
- static int * const drsuapi_drsuapi_DsGetNT4ChangeLogFlags_fields[] = {
- &hf_drsuapi_drsuapi_DsGetNT4ChangeLogFlags_DRSUAPI_NT4_CHANGELOG_GET_CHANGELOG,
- &hf_drsuapi_drsuapi_DsGetNT4ChangeLogFlags_DRSUAPI_NT4_CHANGELOG_GET_SERIAL_NUMBERS,
- NULL
- };
- guint32 flags;
- ALIGN_TO_4_BYTES;
+ offset = drsuapi_dissect_element_DsGetDCInfo1_is_pdc(tvb, offset, pinfo, tree, di, drep);
- item = proto_tree_add_bitmask_with_flags(parent_tree, tvb, offset, hf_index,
- ett_drsuapi_drsuapi_DsGetNT4ChangeLogFlags, drsuapi_drsuapi_DsGetNT4ChangeLogFlags_fields, DREP_ENC_INTEGER(drep), BMT_NO_FALSE);
+ offset = drsuapi_dissect_element_DsGetDCInfo1_is_enabled(tvb, offset, pinfo, tree, di, drep);
- offset = dissect_ndr_uint32(tvb, offset, pinfo, parent_tree, di, drep, -1, &flags);
- if (!flags)
- proto_item_append_text(item, ": (No values set)");
+ proto_item_set_len(item, offset-old_offset);
- if (flags & (~0x00000003)) {
- flags &= (~0x00000003);
- proto_item_append_text(item, "Unknown bitmap value 0x%x", flags);
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_5_BYTES;
}
return offset;
/* IDL: struct { */
-/* IDL: drsuapi_DsGetNT4ChangeLogFlags flags; */
-/* IDL: uint32 preferred_maximum_length; */
-/* IDL: [range(0,0x00A00000)] uint32 restart_length; */
-/* IDL: [size_is(restart_length)] [unique(1)] uint8 *restart_data; */
+/* IDL: [range(0,10000)] uint32 count; */
+/* IDL: [size_is(count)] [unique(1)] drsuapi_DsGetDCInfo1 *array; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsGetNT4ChangeLogRequest1_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = drsuapi_dissect_bitmap_DsGetNT4ChangeLogFlags(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLogRequest1_flags, 0);
-
- return offset;
-}
-
-static int
-drsuapi_dissect_element_DsGetNT4ChangeLogRequest1_preferred_maximum_length(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLogRequest1_preferred_maximum_length, 0);
-
- return offset;
-}
-
-static int
-drsuapi_dissect_element_DsGetNT4ChangeLogRequest1_restart_length(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfoCtr1_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLogRequest1_restart_length, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfoCtr1_count, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNT4ChangeLogRequest1_restart_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfoCtr1_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNT4ChangeLogRequest1_restart_data_, NDR_POINTER_UNIQUE, "Pointer to Restart Data (uint8)",hf_drsuapi_drsuapi_DsGetNT4ChangeLogRequest1_restart_data);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfoCtr1_array_, NDR_POINTER_UNIQUE, "Pointer to Array (drsuapi_DsGetDCInfo1)",hf_drsuapi_drsuapi_DsGetDCInfoCtr1_array);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNT4ChangeLogRequest1_restart_data_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfoCtr1_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNT4ChangeLogRequest1_restart_data__);
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfoCtr1_array__);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNT4ChangeLogRequest1_restart_data__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfoCtr1_array__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLogRequest1_restart_data, 0);
+ offset = drsuapi_dissect_struct_DsGetDCInfo1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetDCInfoCtr1_array,0);
return offset;
}
int
-drsuapi_dissect_struct_DsGetNT4ChangeLogRequest1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsGetDCInfoCtr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetNT4ChangeLogRequest1);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetDCInfoCtr1);
}
- offset = drsuapi_dissect_element_DsGetNT4ChangeLogRequest1_flags(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNT4ChangeLogRequest1_preferred_maximum_length(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNT4ChangeLogRequest1_restart_length(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetDCInfoCtr1_count(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetNT4ChangeLogRequest1_restart_data(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetDCInfoCtr1_array(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
}
-/* IDL: [switch_type(uint32)] union { */
-/* IDL: [case(1)] [case(1)] drsuapi_DsGetNT4ChangeLogRequest1 req1; */
-/* IDL: } */
+/* IDL: struct { */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *netbios_name; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *dns_name; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *site_name; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *site_dn; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *computer_dn; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *server_dn; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *ntds_dn; */
+/* IDL: uint32 is_pdc; */
+/* IDL: uint32 is_enabled; */
+/* IDL: uint32 is_gc; */
+/* IDL: GUID site_guid; */
+/* IDL: GUID computer_guid; */
+/* IDL: GUID server_guid; */
+/* IDL: GUID ntds_guid; */
+/* IDL: } */
+
+static int
+drsuapi_dissect_element_DsGetDCInfo2_netbios_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfo2_netbios_name_, NDR_POINTER_UNIQUE, "Pointer to Netbios Name (uint16)",hf_drsuapi_drsuapi_DsGetDCInfo2_netbios_name);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetDCInfo2_netbios_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfo2_netbios_name, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetDCInfo2_dns_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfo2_dns_name_, NDR_POINTER_UNIQUE, "Pointer to Dns Name (uint16)",hf_drsuapi_drsuapi_DsGetDCInfo2_dns_name);
+
+ return offset;
+}
static int
-drsuapi_dissect_element_DsGetNT4ChangeLogRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo2_dns_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsGetNT4ChangeLogRequest1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNT4ChangeLogRequest_req1,0);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfo2_dns_name, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_DsGetNT4ChangeLogRequest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_element_DsGetDCInfo2_site_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
- guint32 level;
-
- old_offset = offset;
- if (parent_tree) {
- tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsGetNT4ChangeLogRequest, &item, "drsuapi_DsGetNT4ChangeLogRequest");
- }
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfo2_site_name_, NDR_POINTER_UNIQUE, "Pointer to Site Name (uint16)",hf_drsuapi_drsuapi_DsGetDCInfo2_site_name);
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
- ALIGN_TO_5_BYTES;
+ return offset;
+}
- switch(level) {
- case 1:
- offset = drsuapi_dissect_element_DsGetNT4ChangeLogRequest_req1(tvb, offset, pinfo, tree, di, drep);
- break;
- }
- proto_item_set_len(item, offset-old_offset);
+static int
+drsuapi_dissect_element_DsGetDCInfo2_site_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ char *data;
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfo2_site_name, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
-/* IDL: struct { */
-/* IDL: [range(0,0x00A00000)] uint32 restart_length; */
-/* IDL: [range(0,0x00A00000)] uint32 log_length; */
-/* IDL: hyper sam_serial_number; */
-/* IDL: NTTIME sam_creation_time; */
-/* IDL: hyper builtin_serial_number; */
-/* IDL: NTTIME builtin_creation_time; */
-/* IDL: hyper lsa_serial_number; */
-/* IDL: NTTIME lsa_creation_time; */
-/* IDL: NTSTATUS status; */
-/* IDL: [size_is(restart_length)] [unique(1)] uint8 *restart_data; */
-/* IDL: [size_is(log_length)] [unique(1)] uint8 *log_data; */
-/* IDL: } */
-
static int
-drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_restart_length(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo2_site_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLogInfo1_restart_length, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfo2_site_dn_, NDR_POINTER_UNIQUE, "Pointer to Site Dn (uint16)",hf_drsuapi_drsuapi_DsGetDCInfo2_site_dn);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_log_length(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo2_site_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLogInfo1_log_length, 0);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfo2_site_dn, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_sam_serial_number(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo2_computer_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLogInfo1_sam_serial_number, NULL);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfo2_computer_dn_, NDR_POINTER_UNIQUE, "Pointer to Computer Dn (uint16)",hf_drsuapi_drsuapi_DsGetDCInfo2_computer_dn);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_sam_creation_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo2_computer_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLogInfo1_sam_creation_time);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfo2_computer_dn, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_builtin_serial_number(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo2_server_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLogInfo1_builtin_serial_number, NULL);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfo2_server_dn_, NDR_POINTER_UNIQUE, "Pointer to Server Dn (uint16)",hf_drsuapi_drsuapi_DsGetDCInfo2_server_dn);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_builtin_creation_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo2_server_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLogInfo1_builtin_creation_time);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfo2_server_dn, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_lsa_serial_number(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo2_ntds_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLogInfo1_lsa_serial_number, NULL);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfo2_ntds_dn_, NDR_POINTER_UNIQUE, "Pointer to Ntds Dn (uint16)",hf_drsuapi_drsuapi_DsGetDCInfo2_ntds_dn);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_lsa_creation_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo2_ntds_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLogInfo1_lsa_creation_time);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfo2_ntds_dn, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_status(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo2_is_pdc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLogInfo1_status, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfo2_is_pdc, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_restart_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo2_is_enabled(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_restart_data_, NDR_POINTER_UNIQUE, "Pointer to Restart Data (uint8)",hf_drsuapi_drsuapi_DsGetNT4ChangeLogInfo1_restart_data);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfo2_is_enabled, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_restart_data_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo2_is_gc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_restart_data__);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfo2_is_gc, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_restart_data__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo2_site_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLogInfo1_restart_data, 0);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfo2_site_guid, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_log_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo2_computer_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_log_data_, NDR_POINTER_UNIQUE, "Pointer to Log Data (uint8)",hf_drsuapi_drsuapi_DsGetNT4ChangeLogInfo1_log_data);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfo2_computer_guid, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_log_data_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo2_server_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_log_data__);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfo2_server_guid, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_log_data__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo2_ntds_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLogInfo1_log_data, 0);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfo2_ntds_guid, NULL);
return offset;
}
int
-drsuapi_dissect_struct_DsGetNT4ChangeLogInfo1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsGetDCInfo2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_5_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetNT4ChangeLogInfo1);
- }
-
- offset = drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_restart_length(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_log_length(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_sam_serial_number(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_sam_creation_time(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_builtin_serial_number(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_builtin_creation_time(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_lsa_serial_number(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_lsa_creation_time(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_status(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_restart_data(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNT4ChangeLogInfo1_log_data(tvb, offset, pinfo, tree, di, drep);
-
-
- proto_item_set_len(item, offset-old_offset);
-
-
- if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_8_BYTES;
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetDCInfo2);
}
- return offset;
-}
-
-
-/* IDL: [switch_type(uint32)] union { */
-/* IDL: [case(1)] [case(1)] drsuapi_DsGetNT4ChangeLogInfo1 info1; */
-/* IDL: } */
-
-static int
-drsuapi_dissect_element_DsGetNT4ChangeLogInfo_info1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = drsuapi_dissect_struct_DsGetNT4ChangeLogInfo1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetNT4ChangeLogInfo_info1,0);
+ offset = drsuapi_dissect_element_DsGetDCInfo2_netbios_name(tvb, offset, pinfo, tree, di, drep);
- return offset;
-}
+ offset = drsuapi_dissect_element_DsGetDCInfo2_dns_name(tvb, offset, pinfo, tree, di, drep);
-static int
-drsuapi_dissect_DsGetNT4ChangeLogInfo(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
-{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
- guint32 level;
+ offset = drsuapi_dissect_element_DsGetDCInfo2_site_name(tvb, offset, pinfo, tree, di, drep);
- old_offset = offset;
- if (parent_tree) {
- tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsGetNT4ChangeLogInfo, &item, "drsuapi_DsGetNT4ChangeLogInfo");
- }
+ offset = drsuapi_dissect_element_DsGetDCInfo2_site_dn(tvb, offset, pinfo, tree, di, drep);
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
- ALIGN_TO_8_BYTES;
+ offset = drsuapi_dissect_element_DsGetDCInfo2_computer_dn(tvb, offset, pinfo, tree, di, drep);
- switch(level) {
- case 1:
- offset = drsuapi_dissect_element_DsGetNT4ChangeLogInfo_info1(tvb, offset, pinfo, tree, di, drep);
- break;
- }
- proto_item_set_len(item, offset-old_offset);
+ offset = drsuapi_dissect_element_DsGetDCInfo2_server_dn(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetDCInfo2_ntds_dn(tvb, offset, pinfo, tree, di, drep);
- return offset;
-}
+ offset = drsuapi_dissect_element_DsGetDCInfo2_is_pdc(tvb, offset, pinfo, tree, di, drep);
-/* IDL: enum { */
-/* IDL: DRSUAPI_DS_NAME_STATUS_OK=0, */
-/* IDL: DRSUAPI_DS_NAME_STATUS_RESOLVE_ERROR=1, */
-/* IDL: DRSUAPI_DS_NAME_STATUS_NOT_FOUND=2, */
-/* IDL: DRSUAPI_DS_NAME_STATUS_NOT_UNIQUE=3, */
-/* IDL: DRSUAPI_DS_NAME_STATUS_NO_MAPPING=4, */
-/* IDL: DRSUAPI_DS_NAME_STATUS_DOMAIN_ONLY=5, */
-/* IDL: DRSUAPI_DS_NAME_STATUS_NO_SYNTACTICAL_MAPPING=6, */
-/* IDL: DRSUAPI_DS_NAME_STATUS_TRUST_REFERRAL=7, */
-/* IDL: } */
+ offset = drsuapi_dissect_element_DsGetDCInfo2_is_enabled(tvb, offset, pinfo, tree, di, drep);
-int
-drsuapi_dissect_enum_DsNameStatus(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
-{
- guint32 parameter=0;
- if (param) {
- parameter = *param;
- }
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, ¶meter);
- if (param) {
- *param = parameter;
- }
- return offset;
-}
+ offset = drsuapi_dissect_element_DsGetDCInfo2_is_gc(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetDCInfo2_site_guid(tvb, offset, pinfo, tree, di, drep);
-/* IDL: enum { */
-/* IDL: DRSUAPI_DS_NAME_FLAG_NO_FLAGS=0x0, */
-/* IDL: DRSUAPI_DS_NAME_FLAG_SYNTACTICAL_ONLY=0x1, */
-/* IDL: DRSUAPI_DS_NAME_FLAG_EVAL_AT_DC=0x2, */
-/* IDL: DRSUAPI_DS_NAME_FLAG_GCVERIFY=0x4, */
-/* IDL: DRSUAPI_DS_NAME_FLAG_TRUST_REFERRAL=0x8, */
-/* IDL: } */
+ offset = drsuapi_dissect_element_DsGetDCInfo2_computer_guid(tvb, offset, pinfo, tree, di, drep);
-int
-drsuapi_dissect_enum_DsNameFlags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
-{
- guint32 parameter=0;
- if (param) {
- parameter = *param;
- }
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, ¶meter);
- if (param) {
- *param = parameter;
+ offset = drsuapi_dissect_element_DsGetDCInfo2_server_guid(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetDCInfo2_ntds_guid(tvb, offset, pinfo, tree, di, drep);
+
+
+ proto_item_set_len(item, offset-old_offset);
+
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_5_BYTES;
}
+
return offset;
}
-/* IDL: enum { */
-/* IDL: DRSUAPI_DS_NAME_FORMAT_UNKNOWN=0x00000000, */
-/* IDL: DRSUAPI_DS_NAME_FORMAT_FQDN_1779=0x00000001, */
-/* IDL: DRSUAPI_DS_NAME_FORMAT_NT4_ACCOUNT=0x00000002, */
-/* IDL: DRSUAPI_DS_NAME_FORMAT_DISPLAY=0x00000003, */
-/* IDL: DRSUAPI_DS_NAME_FORMAT_GUID=0x00000006, */
-/* IDL: DRSUAPI_DS_NAME_FORMAT_CANONICAL=0x00000007, */
-/* IDL: DRSUAPI_DS_NAME_FORMAT_USER_PRINCIPAL=0x00000008, */
-/* IDL: DRSUAPI_DS_NAME_FORMAT_CANONICAL_EX=0x00000009, */
-/* IDL: DRSUAPI_DS_NAME_FORMAT_SERVICE_PRINCIPAL=0x0000000A, */
-/* IDL: DRSUAPI_DS_NAME_FORMAT_SID_OR_SID_HISTORY=0x0000000B, */
-/* IDL: DRSUAPI_DS_NAME_FORMAT_DNS_DOMAIN=0x0000000C, */
-/* IDL: DRSUAPI_DS_NAME_FORMAT_UPN_AND_ALTSECID=0xFFFFFFEF, */
-/* IDL: DRSUAPI_DS_NAME_FORMAT_NT4_ACCOUNT_NAME_SANS_DOMAIN_EX=0xFFFFFFF0, */
-/* IDL: DRSUAPI_DS_NAME_FORMAT_LIST_GLOBAL_CATALOG_SERVERS=0xFFFFFFF1, */
-/* IDL: DRSUAPI_DS_NAME_FORMAT_UPN_FOR_LOGON=0xFFFFFFF2, */
-/* IDL: DRSUAPI_DS_NAME_FORMAT_LIST_SERVERS_WITH_DCS_IN_SITE=0xFFFFFFF3, */
-/* IDL: DRSUAPI_DS_NAME_FORMAT_STRING_SID_NAME=0xFFFFFFF4, */
-/* IDL: DRSUAPI_DS_NAME_FORMAT_ALT_SECURITY_IDENTITIES_NAME=0xFFFFFFF5, */
-/* IDL: DRSUAPI_DS_NAME_FORMAT_LIST_NCS=0xFFFFFFF6, */
-/* IDL: DRSUAPI_DS_NAME_FORMAT_LIST_DOMAINS=0xFFFFFFF7, */
-/* IDL: DRSUAPI_DS_NAME_FORMAT_MAP_SCHEMA_GUID=0xFFFFFFF8, */
-/* IDL: DRSUAPI_DS_NAME_FORMAT_NT4_ACCOUNT_NAME_SANS_DOMAIN=0xFFFFFFF9, */
-/* IDL: DRSUAPI_DS_NAME_FORMAT_LIST_ROLES=0xFFFFFFFA, */
-/* IDL: DRSUAPI_DS_NAME_FORMAT_LIST_INFO_FOR_SERVER=0xFFFFFFFB, */
-/* IDL: DRSUAPI_DS_NAME_FORMAT_LIST_SERVERS_FOR_DOMAIN_IN_SITE=0xFFFFFFFC, */
-/* IDL: DRSUAPI_DS_NAME_FORMAT_LIST_DOMAINS_IN_SITE=0xFFFFFFFD, */
-/* IDL: DRSUAPI_DS_NAME_FORMAT_LIST_SERVERS_IN_SITE=0xFFFFFFFE, */
-/* IDL: DRSUAPI_DS_NAME_FORMAT_LIST_SITES=0xFFFFFFFF, */
+/* IDL: struct { */
+/* IDL: [range(0,10000)] uint32 count; */
+/* IDL: [size_is(count)] [unique(1)] drsuapi_DsGetDCInfo2 *array; */
/* IDL: } */
-int
-drsuapi_dissect_enum_DsNameFormat(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
+static int
+drsuapi_dissect_element_DsGetDCInfoCtr2_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- guint32 parameter=0;
- if (param) {
- parameter = *param;
- }
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, ¶meter);
- if (param) {
- *param = parameter;
- }
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfoCtr2_count, 0);
+
return offset;
}
+static int
+drsuapi_dissect_element_DsGetDCInfoCtr2_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfoCtr2_array_, NDR_POINTER_UNIQUE, "Pointer to Array (drsuapi_DsGetDCInfo2)",hf_drsuapi_drsuapi_DsGetDCInfoCtr2_array);
-/* IDL: struct { */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *str; */
-/* IDL: } */
+ return offset;
+}
static int
-drsuapi_dissect_element_DsNameString_str(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfoCtr2_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsNameString_str_, NDR_POINTER_UNIQUE, "Pointer to Str (uint16)",hf_drsuapi_drsuapi_DsNameString_str);
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfoCtr2_array__);
return offset;
}
static int
-drsuapi_dissect_element_DsNameString_str_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfoCtr2_array__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- char *data;
-
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsNameString_str, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ offset = drsuapi_dissect_struct_DsGetDCInfo2(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetDCInfoCtr2_array,0);
return offset;
}
int
-drsuapi_dissect_struct_DsNameString(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsGetDCInfoCtr2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsNameString);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetDCInfoCtr2);
}
- offset = drsuapi_dissect_element_DsNameString_str(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetDCInfoCtr2_count(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetDCInfoCtr2_array(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
/* IDL: struct { */
-/* IDL: uint32 codepage; */
-/* IDL: uint32 language; */
-/* IDL: drsuapi_DsNameFlags format_flags; */
-/* IDL: drsuapi_DsNameFormat format_offered; */
-/* IDL: drsuapi_DsNameFormat format_desired; */
-/* IDL: [range(1,10000)] uint32 count; */
-/* IDL: [size_is(count)] [unique(1)] drsuapi_DsNameString *names; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *netbios_name; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *dns_name; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *site_name; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *site_dn; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *computer_dn; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *server_dn; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *ntds_dn; */
+/* IDL: uint32 is_pdc; */
+/* IDL: uint32 is_enabled; */
+/* IDL: uint32 is_gc; */
+/* IDL: uint32 is_rodc; */
+/* IDL: GUID site_guid; */
+/* IDL: GUID computer_guid; */
+/* IDL: GUID server_guid; */
+/* IDL: GUID ntds_guid; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsNameRequest1_codepage(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo3_netbios_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsNameRequest1_codepage, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfo3_netbios_name_, NDR_POINTER_UNIQUE, "Pointer to Netbios Name (uint16)",hf_drsuapi_drsuapi_DsGetDCInfo3_netbios_name);
return offset;
}
static int
-drsuapi_dissect_element_DsNameRequest1_language(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo3_netbios_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsNameRequest1_language, 0);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfo3_netbios_name, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsNameRequest1_format_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo3_dns_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_enum_DsNameFlags(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsNameRequest1_format_flags, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfo3_dns_name_, NDR_POINTER_UNIQUE, "Pointer to Dns Name (uint16)",hf_drsuapi_drsuapi_DsGetDCInfo3_dns_name);
return offset;
}
static int
-drsuapi_dissect_element_DsNameRequest1_format_offered(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo3_dns_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_enum_DsNameFormat(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsNameRequest1_format_offered, 0);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfo3_dns_name, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsNameRequest1_format_desired(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo3_site_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_enum_DsNameFormat(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsNameRequest1_format_desired, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfo3_site_name_, NDR_POINTER_UNIQUE, "Pointer to Site Name (uint16)",hf_drsuapi_drsuapi_DsGetDCInfo3_site_name);
return offset;
}
static int
-drsuapi_dissect_element_DsNameRequest1_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo3_site_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsNameRequest1_count, 0);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfo3_site_name, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsNameRequest1_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo3_site_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsNameRequest1_names_, NDR_POINTER_UNIQUE, "Pointer to Names (drsuapi_DsNameString)",hf_drsuapi_drsuapi_DsNameRequest1_names);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfo3_site_dn_, NDR_POINTER_UNIQUE, "Pointer to Site Dn (uint16)",hf_drsuapi_drsuapi_DsGetDCInfo3_site_dn);
return offset;
}
static int
-drsuapi_dissect_element_DsNameRequest1_names_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo3_site_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsNameRequest1_names__);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfo3_site_dn, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsNameRequest1_names__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo3_computer_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsNameString(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsNameRequest1_names,0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfo3_computer_dn_, NDR_POINTER_UNIQUE, "Pointer to Computer Dn (uint16)",hf_drsuapi_drsuapi_DsGetDCInfo3_computer_dn);
return offset;
}
-int
-drsuapi_dissect_struct_DsNameRequest1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+static int
+drsuapi_dissect_element_DsGetDCInfo3_computer_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
-
- ALIGN_TO_5_BYTES;
-
- old_offset = offset;
-
- if (parent_tree) {
- item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsNameRequest1);
- }
+ char *data;
- offset = drsuapi_dissect_element_DsNameRequest1_codepage(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfo3_computer_dn, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
- offset = drsuapi_dissect_element_DsNameRequest1_language(tvb, offset, pinfo, tree, di, drep);
+ return offset;
+}
- offset = drsuapi_dissect_element_DsNameRequest1_format_flags(tvb, offset, pinfo, tree, di, drep);
+static int
+drsuapi_dissect_element_DsGetDCInfo3_server_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfo3_server_dn_, NDR_POINTER_UNIQUE, "Pointer to Server Dn (uint16)",hf_drsuapi_drsuapi_DsGetDCInfo3_server_dn);
- offset = drsuapi_dissect_element_DsNameRequest1_format_offered(tvb, offset, pinfo, tree, di, drep);
+ return offset;
+}
- offset = drsuapi_dissect_element_DsNameRequest1_format_desired(tvb, offset, pinfo, tree, di, drep);
+static int
+drsuapi_dissect_element_DsGetDCInfo3_server_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ char *data;
- offset = drsuapi_dissect_element_DsNameRequest1_count(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfo3_server_dn, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
- offset = drsuapi_dissect_element_DsNameRequest1_names(tvb, offset, pinfo, tree, di, drep);
+ return offset;
+}
+static int
+drsuapi_dissect_element_DsGetDCInfo3_ntds_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfo3_ntds_dn_, NDR_POINTER_UNIQUE, "Pointer to Ntds Dn (uint16)",hf_drsuapi_drsuapi_DsGetDCInfo3_ntds_dn);
- proto_item_set_len(item, offset-old_offset);
+ return offset;
+}
+static int
+drsuapi_dissect_element_DsGetDCInfo3_ntds_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ char *data;
- if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_5_BYTES;
- }
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfo3_ntds_dn, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
-
-/* IDL: [switch_type(uint32)] union { */
-/* IDL: [case(1)] [case(1)] drsuapi_DsNameRequest1 req1; */
-/* IDL: } */
-
static int
-drsuapi_dissect_element_DsNameRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo3_is_pdc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsNameRequest1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsNameRequest_req1,0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfo3_is_pdc, 0);
return offset;
}
static int
-drsuapi_dissect_DsNameRequest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_element_DsGetDCInfo3_is_enabled(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
- guint32 level;
-
- old_offset = offset;
- if (parent_tree) {
- tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsNameRequest, &item, "drsuapi_DsNameRequest");
- }
-
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
- ALIGN_TO_5_BYTES;
-
- switch(level) {
- case 1:
- offset = drsuapi_dissect_element_DsNameRequest_req1(tvb, offset, pinfo, tree, di, drep);
- break;
- }
- proto_item_set_len(item, offset-old_offset);
-
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfo3_is_enabled, 0);
return offset;
}
-/* IDL: struct { */
-/* IDL: drsuapi_DsNameStatus status; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *dns_domain_name; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *result_name; */
-/* IDL: } */
+static int
+drsuapi_dissect_element_DsGetDCInfo3_is_gc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfo3_is_gc, 0);
+
+ return offset;
+}
static int
-drsuapi_dissect_element_DsNameInfo1_status(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo3_is_rodc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_enum_DsNameStatus(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsNameInfo1_status, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfo3_is_rodc, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsNameInfo1_dns_domain_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo3_site_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsNameInfo1_dns_domain_name_, NDR_POINTER_UNIQUE, "Pointer to Dns Domain Name (uint16)",hf_drsuapi_drsuapi_DsNameInfo1_dns_domain_name);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfo3_site_guid, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsNameInfo1_dns_domain_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo3_computer_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- char *data;
-
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsNameInfo1_dns_domain_name, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfo3_computer_guid, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsNameInfo1_result_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo3_server_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsNameInfo1_result_name_, NDR_POINTER_UNIQUE, "Pointer to Result Name (uint16)",hf_drsuapi_drsuapi_DsNameInfo1_result_name);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfo3_server_guid, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsNameInfo1_result_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfo3_ntds_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- char *data;
-
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsNameInfo1_result_name, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfo3_ntds_guid, NULL);
return offset;
}
int
-drsuapi_dissect_struct_DsNameInfo1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsGetDCInfo3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsNameInfo1);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetDCInfo3);
}
- offset = drsuapi_dissect_element_DsNameInfo1_status(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetDCInfo3_netbios_name(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsNameInfo1_dns_domain_name(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetDCInfo3_dns_name(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsNameInfo1_result_name(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetDCInfo3_site_name(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetDCInfo3_site_dn(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetDCInfo3_computer_dn(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetDCInfo3_server_dn(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetDCInfo3_ntds_dn(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetDCInfo3_is_pdc(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetDCInfo3_is_enabled(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetDCInfo3_is_gc(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetDCInfo3_is_rodc(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetDCInfo3_site_guid(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetDCInfo3_computer_guid(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetDCInfo3_server_guid(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetDCInfo3_ntds_guid(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
/* IDL: struct { */
-/* IDL: uint32 count; */
-/* IDL: [size_is(count)] [unique(1)] drsuapi_DsNameInfo1 *array; */
+/* IDL: [range(0,10000)] uint32 count; */
+/* IDL: [size_is(count)] [unique(1)] drsuapi_DsGetDCInfo3 *array; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsNameCtr1_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfoCtr3_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsNameCtr1_count, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfoCtr3_count, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsNameCtr1_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfoCtr3_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsNameCtr1_array_, NDR_POINTER_UNIQUE, "Pointer to Array (drsuapi_DsNameInfo1)",hf_drsuapi_drsuapi_DsNameCtr1_array);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfoCtr3_array_, NDR_POINTER_UNIQUE, "Pointer to Array (drsuapi_DsGetDCInfo3)",hf_drsuapi_drsuapi_DsGetDCInfoCtr3_array);
return offset;
}
static int
-drsuapi_dissect_element_DsNameCtr1_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfoCtr3_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsNameCtr1_array__);
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfoCtr3_array__);
return offset;
}
static int
-drsuapi_dissect_element_DsNameCtr1_array__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfoCtr3_array__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsNameInfo1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsNameCtr1_array,0);
+ offset = drsuapi_dissect_struct_DsGetDCInfo3(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetDCInfoCtr3_array,0);
return offset;
}
int
-drsuapi_dissect_struct_DsNameCtr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsGetDCInfoCtr3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsNameCtr1);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetDCInfoCtr3);
}
- offset = drsuapi_dissect_element_DsNameCtr1_count(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetDCInfoCtr3_count(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsNameCtr1_array(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetDCInfoCtr3_array(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
}
-/* IDL: [switch_type(uint32)] union { */
-/* IDL: [case(1)] [case(1)] [unique(1)] drsuapi_DsNameCtr1 *ctr1; */
-/* IDL: } */
-
-static int
-drsuapi_dissect_element_DsNameCtr_ctr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsNameCtr_ctr1_, NDR_POINTER_UNIQUE, "Pointer to Ctr1 (drsuapi_DsNameCtr1)",hf_drsuapi_drsuapi_DsNameCtr_ctr1);
-
- return offset;
-}
-
-static int
-drsuapi_dissect_element_DsNameCtr_ctr1_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = drsuapi_dissect_struct_DsNameCtr1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsNameCtr_ctr1,0);
-
- return offset;
-}
-
-static int
-drsuapi_dissect_DsNameCtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
-{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
- guint32 level;
-
- old_offset = offset;
- if (parent_tree) {
- tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsNameCtr, &item, "drsuapi_DsNameCtr");
- }
-
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
- ALIGN_TO_5_BYTES;
-
- switch(level) {
- case 1:
- offset = drsuapi_dissect_element_DsNameCtr_ctr1(tvb, offset, pinfo, tree, di, drep);
- break;
- }
- proto_item_set_len(item, offset-old_offset);
-
-
- return offset;
-}
-
-/* IDL: enum { */
-/* IDL: DRSUAPI_DS_SPN_OPERATION_ADD=0, */
-/* IDL: DRSUAPI_DS_SPN_OPERATION_REPLACE=1, */
-/* IDL: DRSUAPI_DS_SPN_OPERATION_DELETE=2, */
-/* IDL: } */
-
-int
-drsuapi_dissect_enum_DsSpnOperation(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
-{
- guint32 parameter=0;
- if (param) {
- parameter = *param;
- }
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, ¶meter);
- if (param) {
- *param = parameter;
- }
- return offset;
-}
-
-
/* IDL: struct { */
-/* IDL: drsuapi_DsSpnOperation operation; */
-/* IDL: uint32 unknown1; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *object_dn; */
-/* IDL: [range(0,10000)] uint32 count; */
-/* IDL: [size_is(count)] [unique(1)] drsuapi_DsNameString *spn_names; */
+/* IDL: [flag(LIBNDR_FLAG_BIGENDIAN)] ipv4address client_ip_address; */
+/* IDL: uint32 unknown2; */
+/* IDL: uint32 connection_time; */
+/* IDL: uint32 unknown4; */
+/* IDL: uint32 unknown5; */
+/* IDL: uint32 unknown6; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *client_account; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsWriteAccountSpnRequest1_operation(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = drsuapi_dissect_enum_DsSpnOperation(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsWriteAccountSpnRequest1_operation, 0);
-
- return offset;
-}
-
-static int
-drsuapi_dissect_element_DsWriteAccountSpnRequest1_unknown1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsWriteAccountSpnRequest1_unknown1, 0);
-
- return offset;
-}
-
-static int
-drsuapi_dissect_element_DsWriteAccountSpnRequest1_object_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsWriteAccountSpnRequest1_object_dn_, NDR_POINTER_UNIQUE, "Pointer to Object Dn (uint16)",hf_drsuapi_drsuapi_DsWriteAccountSpnRequest1_object_dn);
-
- return offset;
-}
-
-static int
-drsuapi_dissect_element_DsWriteAccountSpnRequest1_object_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- char *data;
-
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsWriteAccountSpnRequest1_object_dn, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
-
- return offset;
-}
-
-static int
-drsuapi_dissect_element_DsWriteAccountSpnRequest1_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCConnection01_client_ip_address(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsWriteAccountSpnRequest1_count, 0);
+ proto_tree_add_item(tree, hf_drsuapi_drsuapi_DsGetDCConnection01_client_ip_address, tvb, offset, 4, ENC_BIG_ENDIAN); offset += 4;
return offset;
}
static int
-drsuapi_dissect_element_DsWriteAccountSpnRequest1_spn_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCConnection01_unknown2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsWriteAccountSpnRequest1_spn_names_, NDR_POINTER_UNIQUE, "Pointer to Spn Names (drsuapi_DsNameString)",hf_drsuapi_drsuapi_DsWriteAccountSpnRequest1_spn_names);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCConnection01_unknown2, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsWriteAccountSpnRequest1_spn_names_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCConnection01_connection_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsWriteAccountSpnRequest1_spn_names__);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCConnection01_connection_time, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsWriteAccountSpnRequest1_spn_names__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = drsuapi_dissect_struct_DsNameString(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsWriteAccountSpnRequest1_spn_names,0);
-
- return offset;
-}
-
-int
-drsuapi_dissect_struct_DsWriteAccountSpnRequest1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_element_DsGetDCConnection01_unknown4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
-
- ALIGN_TO_5_BYTES;
-
- old_offset = offset;
-
- if (parent_tree) {
- item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsWriteAccountSpnRequest1);
- }
-
- offset = drsuapi_dissect_element_DsWriteAccountSpnRequest1_operation(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsWriteAccountSpnRequest1_unknown1(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsWriteAccountSpnRequest1_object_dn(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsWriteAccountSpnRequest1_count(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsWriteAccountSpnRequest1_spn_names(tvb, offset, pinfo, tree, di, drep);
-
-
- proto_item_set_len(item, offset-old_offset);
-
-
- if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_5_BYTES;
- }
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCConnection01_unknown4, 0);
return offset;
}
-
-/* IDL: [switch_type(uint32)] union { */
-/* IDL: [case(1)] [case(1)] drsuapi_DsWriteAccountSpnRequest1 req1; */
-/* IDL: } */
-
static int
-drsuapi_dissect_element_DsWriteAccountSpnRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCConnection01_unknown5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsWriteAccountSpnRequest1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsWriteAccountSpnRequest_req1,0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCConnection01_unknown5, 0);
return offset;
}
static int
-drsuapi_dissect_DsWriteAccountSpnRequest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_element_DsGetDCConnection01_unknown6(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
- guint32 level;
-
- old_offset = offset;
- if (parent_tree) {
- tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsWriteAccountSpnRequest, &item, "drsuapi_DsWriteAccountSpnRequest");
- }
-
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
- ALIGN_TO_5_BYTES;
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCConnection01_unknown6, 0);
- switch(level) {
- case 1:
- offset = drsuapi_dissect_element_DsWriteAccountSpnRequest_req1(tvb, offset, pinfo, tree, di, drep);
- break;
- }
- proto_item_set_len(item, offset-old_offset);
+ return offset;
+}
+static int
+drsuapi_dissect_element_DsGetDCConnection01_client_account(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCConnection01_client_account_, NDR_POINTER_UNIQUE, "Pointer to Client Account (uint16)",hf_drsuapi_drsuapi_DsGetDCConnection01_client_account);
return offset;
}
-/* IDL: struct { */
-/* IDL: WERROR status; */
-/* IDL: } */
-
static int
-drsuapi_dissect_element_DsWriteAccountSpnResult1_status(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCConnection01_client_account_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsWriteAccountSpnResult1_status, 0);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCConnection01_client_account, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
int
-drsuapi_dissect_struct_DsWriteAccountSpnResult1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsGetDCConnection01(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_4_BYTES;
+ ALIGN_TO_5_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsWriteAccountSpnResult1);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetDCConnection01);
}
- offset = drsuapi_dissect_element_DsWriteAccountSpnResult1_status(tvb, offset, pinfo, tree, di, drep);
-
-
- proto_item_set_len(item, offset-old_offset);
-
+ offset = drsuapi_dissect_element_DsGetDCConnection01_client_ip_address(tvb, offset, pinfo, tree, di, drep);
- if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_4_BYTES;
- }
+ offset = drsuapi_dissect_element_DsGetDCConnection01_unknown2(tvb, offset, pinfo, tree, di, drep);
- return offset;
-}
+ offset = drsuapi_dissect_element_DsGetDCConnection01_connection_time(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetDCConnection01_unknown4(tvb, offset, pinfo, tree, di, drep);
-/* IDL: [switch_type(uint32)] union { */
-/* IDL: [case(1)] [case(1)] drsuapi_DsWriteAccountSpnResult1 res1; */
-/* IDL: } */
+ offset = drsuapi_dissect_element_DsGetDCConnection01_unknown5(tvb, offset, pinfo, tree, di, drep);
-static int
-drsuapi_dissect_element_DsWriteAccountSpnResult_res1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = drsuapi_dissect_struct_DsWriteAccountSpnResult1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsWriteAccountSpnResult_res1,0);
+ offset = drsuapi_dissect_element_DsGetDCConnection01_unknown6(tvb, offset, pinfo, tree, di, drep);
- return offset;
-}
+ offset = drsuapi_dissect_element_DsGetDCConnection01_client_account(tvb, offset, pinfo, tree, di, drep);
-static int
-drsuapi_dissect_DsWriteAccountSpnResult(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
-{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
- guint32 level;
- old_offset = offset;
- if (parent_tree) {
- tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsWriteAccountSpnResult, &item, "drsuapi_DsWriteAccountSpnResult");
- }
+ proto_item_set_len(item, offset-old_offset);
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
- ALIGN_TO_4_BYTES;
- switch(level) {
- case 1:
- offset = drsuapi_dissect_element_DsWriteAccountSpnResult_res1(tvb, offset, pinfo, tree, di, drep);
- break;
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_5_BYTES;
}
- proto_item_set_len(item, offset-old_offset);
-
return offset;
}
+
/* IDL: struct { */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *server_dn; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *domain_dn; */
-/* IDL: uint32 commit; */
+/* IDL: [range(0,10000)] uint32 count; */
+/* IDL: [size_is(count)] [unique(1)] drsuapi_DsGetDCConnection01 *array; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsRemoveDSServerRequest1_server_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsRemoveDSServerRequest1_server_dn_, NDR_POINTER_UNIQUE, "Pointer to Server Dn (uint16)",hf_drsuapi_drsuapi_DsRemoveDSServerRequest1_server_dn);
-
- return offset;
-}
-
-static int
-drsuapi_dissect_element_DsRemoveDSServerRequest1_server_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCConnectionCtr01_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- char *data;
-
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsRemoveDSServerRequest1_server_dn, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCConnectionCtr01_count, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsRemoveDSServerRequest1_domain_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCConnectionCtr01_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsRemoveDSServerRequest1_domain_dn_, NDR_POINTER_UNIQUE, "Pointer to Domain Dn (uint16)",hf_drsuapi_drsuapi_DsRemoveDSServerRequest1_domain_dn);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCConnectionCtr01_array_, NDR_POINTER_UNIQUE, "Pointer to Array (drsuapi_DsGetDCConnection01)",hf_drsuapi_drsuapi_DsGetDCConnectionCtr01_array);
return offset;
}
static int
-drsuapi_dissect_element_DsRemoveDSServerRequest1_domain_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCConnectionCtr01_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- char *data;
-
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsRemoveDSServerRequest1_domain_dn, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCConnectionCtr01_array__);
return offset;
}
static int
-drsuapi_dissect_element_DsRemoveDSServerRequest1_commit(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCConnectionCtr01_array__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsRemoveDSServerRequest1_commit, 0);
+ offset = drsuapi_dissect_struct_DsGetDCConnection01(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetDCConnectionCtr01_array,0);
return offset;
}
int
-drsuapi_dissect_struct_DsRemoveDSServerRequest1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsGetDCConnectionCtr01(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsRemoveDSServerRequest1);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetDCConnectionCtr01);
}
- offset = drsuapi_dissect_element_DsRemoveDSServerRequest1_server_dn(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsRemoveDSServerRequest1_domain_dn(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetDCConnectionCtr01_count(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsRemoveDSServerRequest1_commit(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetDCConnectionCtr01_array(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
}
-/* IDL: [switch_type(uint32)] union { */
-/* IDL: [case(1)] [case(1)] drsuapi_DsRemoveDSServerRequest1 req1; */
+/* IDL: [switch_type(drsuapi_DsGetDCInfoCtrLevels)] union { */
+/* IDL: [case(DRSUAPI_DC_INFO_CTR_1)] [case(DRSUAPI_DC_INFO_CTR_1)] drsuapi_DsGetDCInfoCtr1 ctr1; */
+/* IDL: [case(DRSUAPI_DC_INFO_CTR_2)] [case(DRSUAPI_DC_INFO_CTR_2)] drsuapi_DsGetDCInfoCtr2 ctr2; */
+/* IDL: [case(DRSUAPI_DC_INFO_CTR_3)] [case(DRSUAPI_DC_INFO_CTR_3)] drsuapi_DsGetDCInfoCtr3 ctr3; */
+/* IDL: [case(DRSUAPI_DC_CONNECTION_CTR_01)] [case(DRSUAPI_DC_CONNECTION_CTR_01)] drsuapi_DsGetDCConnectionCtr01 ctr01; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsRemoveDSServerRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDCInfoCtr_ctr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsRemoveDSServerRequest1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsRemoveDSServerRequest_req1,0);
+ offset = drsuapi_dissect_struct_DsGetDCInfoCtr1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetDCInfoCtr_ctr1,0);
return offset;
}
static int
-drsuapi_dissect_DsRemoveDSServerRequest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_element_DsGetDCInfoCtr_ctr2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsGetDCInfoCtr2(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetDCInfoCtr_ctr2,0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetDCInfoCtr_ctr3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsGetDCInfoCtr3(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetDCInfoCtr_ctr3,0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetDCInfoCtr_ctr01(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsGetDCConnectionCtr01(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetDCInfoCtr_ctr01,0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_DsGetDCInfoCtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
old_offset = offset;
if (parent_tree) {
- tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsRemoveDSServerRequest, &item, "drsuapi_DsRemoveDSServerRequest");
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsGetDCInfoCtr, &item, "drsuapi_DsGetDCInfoCtr");
}
offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
ALIGN_TO_5_BYTES;
switch(level) {
- case 1:
- offset = drsuapi_dissect_element_DsRemoveDSServerRequest_req1(tvb, offset, pinfo, tree, di, drep);
+ case DRSUAPI_DC_INFO_CTR_1:
+ offset = drsuapi_dissect_element_DsGetDCInfoCtr_ctr1(tvb, offset, pinfo, tree, di, drep);
+ break;
+
+ case DRSUAPI_DC_INFO_CTR_2:
+ offset = drsuapi_dissect_element_DsGetDCInfoCtr_ctr2(tvb, offset, pinfo, tree, di, drep);
+ break;
+
+ case DRSUAPI_DC_INFO_CTR_3:
+ offset = drsuapi_dissect_element_DsGetDCInfoCtr_ctr3(tvb, offset, pinfo, tree, di, drep);
+ break;
+
+ case DRSUAPI_DC_CONNECTION_CTR_01:
+ offset = drsuapi_dissect_element_DsGetDCInfoCtr_ctr01(tvb, offset, pinfo, tree, di, drep);
break;
}
proto_item_set_len(item, offset-old_offset);
}
/* IDL: struct { */
-/* IDL: uint32 last_dc_in_domain; */
+/* IDL: [max_recursion(20000)] [unique(1)] drsuapi_DsReplicaObjectListItem *next_object; */
+/* IDL: drsuapi_DsReplicaObject object; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsRemoveDSServerResult1_last_dc_in_domain(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaObjectListItem_next_object(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsRemoveDSServerResult1_last_dc_in_domain, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaObjectListItem_next_object_, NDR_POINTER_UNIQUE, "Pointer to Next Object (drsuapi_DsReplicaObjectListItem)",hf_drsuapi_drsuapi_DsReplicaObjectListItem_next_object);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaObjectListItem_object(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsReplicaObject(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaObjectListItem_object,0);
return offset;
}
int
-drsuapi_dissect_struct_DsRemoveDSServerResult1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsReplicaObjectListItem(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_4_BYTES;
+ ALIGN_TO_5_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsRemoveDSServerResult1);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaObjectListItem);
}
- offset = drsuapi_dissect_element_DsRemoveDSServerResult1_last_dc_in_domain(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaObjectListItem_next_object(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaObjectListItem_object(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_4_BYTES;
+ ALIGN_TO_5_BYTES;
}
return offset;
}
-/* IDL: [switch_type(uint32)] union { */
-/* IDL: [case(1)] [case(1)] drsuapi_DsRemoveDSServerResult1 res1; */
+/* IDL: enum { */
+/* IDL: DRSUAPI_DIRERR_OK=0, */
+/* IDL: DRSUAPI_DIRERR_ATTRIBUTE=1, */
+/* IDL: DRSUAPI_DIRERR_NAME=2, */
+/* IDL: DRSUAPI_DIRERR_REFERRAL=3, */
+/* IDL: DRSUAPI_DIRERR_SECURITY=4, */
+/* IDL: DRSUAPI_DIRERR_SERVICE=5, */
+/* IDL: DRSUAPI_DIRERR_UPDATE=6, */
+/* IDL: DRSUAPI_DIRERR_SYSTEM=7, */
+/* IDL: } */
+
+int
+drsuapi_dissect_enum_DsAddEntry_DirErr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
+{
+ guint32 parameter=0;
+ if (param) {
+ parameter = *param;
+ }
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, ¶meter);
+ if (param) {
+ *param = parameter;
+ }
+ return offset;
+}
+
+
+/* IDL: struct { */
+/* IDL: drsuapi_DsReplicaObjectListItem first_object; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsRemoveDSServerResult_res1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryRequest2_first_object(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsRemoveDSServerResult1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsRemoveDSServerResult_res1,0);
+ offset = drsuapi_dissect_struct_DsReplicaObjectListItem(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryRequest2_first_object,0);
return offset;
}
-static int
-drsuapi_dissect_DsRemoveDSServerResult(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+int
+drsuapi_dissect_struct_DsAddEntryRequest2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- guint32 level;
+
+ ALIGN_TO_5_BYTES;
old_offset = offset;
+
if (parent_tree) {
- tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsRemoveDSServerResult, &item, "drsuapi_DsRemoveDSServerResult");
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsAddEntryRequest2);
}
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
- ALIGN_TO_4_BYTES;
+ offset = drsuapi_dissect_element_DsAddEntryRequest2_first_object(tvb, offset, pinfo, tree, di, drep);
+
- switch(level) {
- case 1:
- offset = drsuapi_dissect_element_DsRemoveDSServerResult_res1(tvb, offset, pinfo, tree, di, drep);
- break;
- }
proto_item_set_len(item, offset-old_offset);
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_5_BYTES;
+ }
+
return offset;
}
+
/* IDL: enum { */
-/* IDL: DRSUAPI_DC_INFO_CTR_1=1, */
-/* IDL: DRSUAPI_DC_INFO_CTR_2=2, */
-/* IDL: DRSUAPI_DC_INFO_CTR_3=3, */
-/* IDL: DRSUAPI_DC_CONNECTION_CTR_01=0xFFFFFFFF, */
+/* IDL: DRSUAPI_SECBUFFER_EMPTY=0x00000000, */
+/* IDL: DRSUAPI_SECBUFFER_DATA=0x00000001, */
+/* IDL: DRSUAPI_SECBUFFER_TOKEN=0x00000002, */
+/* IDL: DRSUAPI_SECBUFFER_PKG_PARAMS=0x00000003, */
+/* IDL: DRSUAPI_SECBUFFER_MISSING=0x00000004, */
+/* IDL: DRSUAPI_SECBUFFER_EXTRA=0x00000005, */
+/* IDL: DRSUAPI_SECBUFFER_STREAM_TRAILER=0x00000006, */
+/* IDL: DRSUAPI_SECBUFFER_STREAM_HEADER=0x00000007, */
+/* IDL: DRSUAPI_SECBUFFER_READONLY=0x80000000, */
/* IDL: } */
int
-drsuapi_dissect_enum_DsGetDCInfoCtrLevels(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
+drsuapi_dissect_enum_SecBufferType(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
{
guint32 parameter=0;
if (param) {
/* IDL: struct { */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *domain_name; */
-/* IDL: drsuapi_DsGetDCInfoCtrLevels level; */
+/* IDL: [range(0,10000)] uint32 buf_size; */
+/* IDL: drsuapi_SecBufferType buf_type; */
+/* IDL: [size_is(buf_size)] [unique(1)] uint8 *buffer; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsGetDCInfoRequest1_domain_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_SecBuffer_buf_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfoRequest1_domain_name_, NDR_POINTER_UNIQUE, "Pointer to Domain Name (uint16)",hf_drsuapi_drsuapi_DsGetDCInfoRequest1_domain_name);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_SecBuffer_buf_size, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfoRequest1_domain_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_SecBuffer_buf_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- char *data;
+ offset = drsuapi_dissect_enum_SecBufferType(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_SecBuffer_buf_type, 0);
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfoRequest1_domain_name, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_SecBuffer_buffer(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_SecBuffer_buffer_, NDR_POINTER_UNIQUE, "Pointer to Buffer (uint8)",hf_drsuapi_drsuapi_SecBuffer_buffer);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfoRequest1_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_SecBuffer_buffer_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_enum_DsGetDCInfoCtrLevels(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfoRequest1_level, 0);
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_SecBuffer_buffer__);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_SecBuffer_buffer__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_SecBuffer_buffer, 0);
return offset;
}
int
-drsuapi_dissect_struct_DsGetDCInfoRequest1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_SecBuffer(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetDCInfoRequest1);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_SecBuffer);
}
- offset = drsuapi_dissect_element_DsGetDCInfoRequest1_domain_name(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_SecBuffer_buf_size(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetDCInfoRequest1_level(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_SecBuffer_buf_type(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_SecBuffer_buffer(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
}
-/* IDL: [switch_type(uint32)] union { */
-/* IDL: [case(1)] [case(1)] drsuapi_DsGetDCInfoRequest1 req1; */
+/* IDL: struct { */
+/* IDL: [value(0)] uint32 version; */
+/* IDL: [range(0,10000)] uint32 buff_count; */
+/* IDL: [size_is(buff_count)] [unique(1)] drsuapi_SecBuffer *buffers; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsGetDCInfoRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_SecBufferDesc_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsGetDCInfoRequest1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetDCInfoRequest_req1,0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_SecBufferDesc_version, 0);
return offset;
}
static int
-drsuapi_dissect_DsGetDCInfoRequest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_element_SecBufferDesc_buff_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_SecBufferDesc_buff_count, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_SecBufferDesc_buffers(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_SecBufferDesc_buffers_, NDR_POINTER_UNIQUE, "Pointer to Buffers (drsuapi_SecBuffer)",hf_drsuapi_drsuapi_SecBufferDesc_buffers);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_SecBufferDesc_buffers_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_SecBufferDesc_buffers__);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_SecBufferDesc_buffers__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_SecBuffer(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_SecBufferDesc_buffers,0);
+
+ return offset;
+}
+
+int
+drsuapi_dissect_struct_SecBufferDesc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- guint32 level;
+
+ ALIGN_TO_5_BYTES;
old_offset = offset;
+
if (parent_tree) {
- tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsGetDCInfoRequest, &item, "drsuapi_DsGetDCInfoRequest");
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_SecBufferDesc);
}
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
- ALIGN_TO_5_BYTES;
+ offset = drsuapi_dissect_element_SecBufferDesc_version(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_SecBufferDesc_buff_count(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_SecBufferDesc_buffers(tvb, offset, pinfo, tree, di, drep);
+
- switch(level) {
- case 1:
- offset = drsuapi_dissect_element_DsGetDCInfoRequest_req1(tvb, offset, pinfo, tree, di, drep);
- break;
- }
proto_item_set_len(item, offset-old_offset);
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_5_BYTES;
+ }
+
return offset;
}
+
/* IDL: struct { */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *netbios_name; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *dns_name; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *site_name; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *computer_dn; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *server_dn; */
-/* IDL: uint32 is_pdc; */
-/* IDL: uint32 is_enabled; */
+/* IDL: drsuapi_DsReplicaObjectListItem first_object; */
+/* IDL: [unique(1)] drsuapi_SecBufferDesc *client_creds; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsGetDCInfo1_netbios_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryRequest3_first_object(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfo1_netbios_name_, NDR_POINTER_UNIQUE, "Pointer to Netbios Name (uint16)",hf_drsuapi_drsuapi_DsGetDCInfo1_netbios_name);
+ offset = drsuapi_dissect_struct_DsReplicaObjectListItem(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryRequest3_first_object,0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfo1_netbios_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryRequest3_client_creds(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- char *data;
-
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfo1_netbios_name, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAddEntryRequest3_client_creds_, NDR_POINTER_UNIQUE, "Pointer to Client Creds (drsuapi_SecBufferDesc)",hf_drsuapi_drsuapi_DsAddEntryRequest3_client_creds);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfo1_dns_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryRequest3_client_creds_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfo1_dns_name_, NDR_POINTER_UNIQUE, "Pointer to Dns Name (uint16)",hf_drsuapi_drsuapi_DsGetDCInfo1_dns_name);
+ offset = drsuapi_dissect_struct_SecBufferDesc(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryRequest3_client_creds,0);
return offset;
}
-static int
-drsuapi_dissect_element_DsGetDCInfo1_dns_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+int
+drsuapi_dissect_struct_DsAddEntryRequest3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- char *data;
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfo1_dns_name, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ ALIGN_TO_5_BYTES;
- return offset;
-}
+ old_offset = offset;
-static int
-drsuapi_dissect_element_DsGetDCInfo1_site_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfo1_site_name_, NDR_POINTER_UNIQUE, "Pointer to Site Name (uint16)",hf_drsuapi_drsuapi_DsGetDCInfo1_site_name);
+ if (parent_tree) {
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsAddEntryRequest3);
+ }
+
+ offset = drsuapi_dissect_element_DsAddEntryRequest3_first_object(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsAddEntryRequest3_client_creds(tvb, offset, pinfo, tree, di, drep);
+
+
+ proto_item_set_len(item, offset-old_offset);
+
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_5_BYTES;
+ }
return offset;
}
+
+/* IDL: [switch_type(uint32)] union { */
+/* IDL: [case(2)] [case(2)] drsuapi_DsAddEntryRequest2 req2; */
+/* IDL: [case(3)] [case(3)] drsuapi_DsAddEntryRequest3 req3; */
+/* IDL: } */
+
static int
-drsuapi_dissect_element_DsGetDCInfo1_site_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryRequest_req2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- char *data;
-
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfo1_site_name, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ offset = drsuapi_dissect_struct_DsAddEntryRequest2(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryRequest_req2,0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfo1_computer_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryRequest_req3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfo1_computer_dn_, NDR_POINTER_UNIQUE, "Pointer to Computer Dn (uint16)",hf_drsuapi_drsuapi_DsGetDCInfo1_computer_dn);
+ offset = drsuapi_dissect_struct_DsAddEntryRequest3(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryRequest_req3,0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfo1_computer_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsAddEntryRequest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- char *data;
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+ guint32 level;
+
+ old_offset = offset;
+ if (parent_tree) {
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsAddEntryRequest, &item, "drsuapi_DsAddEntryRequest");
+ }
+
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
+ ALIGN_TO_5_BYTES;
+
+ switch(level) {
+ case 2:
+ offset = drsuapi_dissect_element_DsAddEntryRequest_req2(tvb, offset, pinfo, tree, di, drep);
+ break;
+
+ case 3:
+ offset = drsuapi_dissect_element_DsAddEntryRequest_req3(tvb, offset, pinfo, tree, di, drep);
+ break;
+ }
+ proto_item_set_len(item, offset-old_offset);
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfo1_computer_dn, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
return offset;
}
+/* IDL: struct { */
+/* IDL: uint32 dsid; */
+/* IDL: WERROR extended_err; */
+/* IDL: uint32 extended_data; */
+/* IDL: uint16 problem; */
+/* IDL: } */
+
static int
-drsuapi_dissect_element_DsGetDCInfo1_server_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryErrorInfoX_dsid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfo1_server_dn_, NDR_POINTER_UNIQUE, "Pointer to Server Dn (uint16)",hf_drsuapi_drsuapi_DsGetDCInfo1_server_dn);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryErrorInfoX_dsid, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfo1_server_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryErrorInfoX_extended_err(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- char *data;
-
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfo1_server_dn, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryErrorInfoX_extended_err, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfo1_is_pdc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryErrorInfoX_extended_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfo1_is_pdc, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryErrorInfoX_extended_data, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfo1_is_enabled(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryErrorInfoX_problem(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfo1_is_enabled, 0);
+ offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryErrorInfoX_problem, 0);
return offset;
}
int
-drsuapi_dissect_struct_DsGetDCInfo1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsAddEntryErrorInfoX(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_5_BYTES;
+ ALIGN_TO_4_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetDCInfo1);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsAddEntryErrorInfoX);
}
- offset = drsuapi_dissect_element_DsGetDCInfo1_netbios_name(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetDCInfo1_dns_name(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetDCInfo1_site_name(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetDCInfo1_computer_dn(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsAddEntryErrorInfoX_dsid(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetDCInfo1_server_dn(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsAddEntryErrorInfoX_extended_err(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetDCInfo1_is_pdc(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsAddEntryErrorInfoX_extended_data(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetDCInfo1_is_enabled(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsAddEntryErrorInfoX_problem(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_5_BYTES;
+ ALIGN_TO_4_BYTES;
}
return offset;
/* IDL: struct { */
-/* IDL: [range(0,10000)] uint32 count; */
-/* IDL: [size_is(count)] [unique(1)] drsuapi_DsGetDCInfo1 *array; */
+/* IDL: uint32 dsid; */
+/* IDL: WERROR extended_err; */
+/* IDL: uint32 extended_data; */
+/* IDL: uint16 problem; */
+/* IDL: drsuapi_DsAttributeId attid; */
+/* IDL: uint32 is_val_returned; */
+/* IDL: drsuapi_DsAttributeValue attr_val; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsGetDCInfoCtr1_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntry_AttrErr_V1_dsid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfoCtr1_count, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_AttrErr_V1_dsid, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfoCtr1_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntry_AttrErr_V1_extended_err(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfoCtr1_array_, NDR_POINTER_UNIQUE, "Pointer to Array (drsuapi_DsGetDCInfo1)",hf_drsuapi_drsuapi_DsGetDCInfoCtr1_array);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_AttrErr_V1_extended_err, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfoCtr1_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntry_AttrErr_V1_extended_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfoCtr1_array__);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_AttrErr_V1_extended_data, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfoCtr1_array__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntry_AttrErr_V1_problem(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsGetDCInfo1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetDCInfoCtr1_array,0);
+ offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_AttrErr_V1_problem, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsAddEntry_AttrErr_V1_attid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_enum_DsAttributeId(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_AttrErr_V1_attid, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsAddEntry_AttrErr_V1_is_val_returned(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_AttrErr_V1_is_val_returned, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsAddEntry_AttrErr_V1_attr_val(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsAttributeValue(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntry_AttrErr_V1_attr_val,0);
return offset;
}
int
-drsuapi_dissect_struct_DsGetDCInfoCtr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsAddEntry_AttrErr_V1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetDCInfoCtr1);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsAddEntry_AttrErr_V1);
}
- offset = drsuapi_dissect_element_DsGetDCInfoCtr1_count(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsAddEntry_AttrErr_V1_dsid(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetDCInfoCtr1_array(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsAddEntry_AttrErr_V1_extended_err(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsAddEntry_AttrErr_V1_extended_data(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsAddEntry_AttrErr_V1_problem(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsAddEntry_AttrErr_V1_attid(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsAddEntry_AttrErr_V1_is_val_returned(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsAddEntry_AttrErr_V1_attr_val(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
/* IDL: struct { */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *netbios_name; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *dns_name; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *site_name; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *site_dn; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *computer_dn; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *server_dn; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *ntds_dn; */
-/* IDL: uint32 is_pdc; */
-/* IDL: uint32 is_enabled; */
-/* IDL: uint32 is_gc; */
-/* IDL: GUID site_guid; */
-/* IDL: GUID computer_guid; */
-/* IDL: GUID server_guid; */
-/* IDL: GUID ntds_guid; */
+/* IDL: [max_recursion(20000)] [unique(1)] drsuapi_DsAddEntry_AttrErrListItem_V1 *next; */
+/* IDL: drsuapi_DsAddEntry_AttrErr_V1 err_data; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsGetDCInfo2_netbios_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntry_AttrErrListItem_V1_next(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfo2_netbios_name_, NDR_POINTER_UNIQUE, "Pointer to Netbios Name (uint16)",hf_drsuapi_drsuapi_DsGetDCInfo2_netbios_name);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAddEntry_AttrErrListItem_V1_next_, NDR_POINTER_UNIQUE, "Pointer to Next (drsuapi_DsAddEntry_AttrErrListItem_V1)",hf_drsuapi_drsuapi_DsAddEntry_AttrErrListItem_V1_next);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfo2_netbios_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntry_AttrErrListItem_V1_err_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- char *data;
-
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfo2_netbios_name, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ offset = drsuapi_dissect_struct_DsAddEntry_AttrErr_V1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntry_AttrErrListItem_V1_err_data,0);
return offset;
}
-static int
-drsuapi_dissect_element_DsGetDCInfo2_dns_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+int
+drsuapi_dissect_struct_DsAddEntry_AttrErrListItem_V1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfo2_dns_name_, NDR_POINTER_UNIQUE, "Pointer to Dns Name (uint16)",hf_drsuapi_drsuapi_DsGetDCInfo2_dns_name);
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
- return offset;
-}
+ ALIGN_TO_5_BYTES;
-static int
-drsuapi_dissect_element_DsGetDCInfo2_dns_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- char *data;
+ old_offset = offset;
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfo2_dns_name, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ if (parent_tree) {
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsAddEntry_AttrErrListItem_V1);
+ }
- return offset;
-}
+ offset = drsuapi_dissect_element_DsAddEntry_AttrErrListItem_V1_next(tvb, offset, pinfo, tree, di, drep);
-static int
-drsuapi_dissect_element_DsGetDCInfo2_site_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfo2_site_name_, NDR_POINTER_UNIQUE, "Pointer to Site Name (uint16)",hf_drsuapi_drsuapi_DsGetDCInfo2_site_name);
+ offset = drsuapi_dissect_element_DsAddEntry_AttrErrListItem_V1_err_data(tvb, offset, pinfo, tree, di, drep);
- return offset;
-}
-static int
-drsuapi_dissect_element_DsGetDCInfo2_site_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- char *data;
+ proto_item_set_len(item, offset-old_offset);
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfo2_site_name, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_5_BYTES;
+ }
return offset;
}
-static int
-drsuapi_dissect_element_DsGetDCInfo2_site_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfo2_site_dn_, NDR_POINTER_UNIQUE, "Pointer to Site Dn (uint16)",hf_drsuapi_drsuapi_DsGetDCInfo2_site_dn);
- return offset;
-}
+/* IDL: struct { */
+/* IDL: [unique(1)] drsuapi_DsReplicaObjectIdentifier *id; */
+/* IDL: uint32 count; */
+/* IDL: drsuapi_DsAddEntry_AttrErrListItem_V1 first; */
+/* IDL: } */
static int
-drsuapi_dissect_element_DsGetDCInfo2_site_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryErrorInfo_Attr_V1_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- char *data;
-
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfo2_site_dn, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAddEntryErrorInfo_Attr_V1_id_, NDR_POINTER_UNIQUE, "Pointer to Id (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsAddEntryErrorInfo_Attr_V1_id);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfo2_computer_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryErrorInfo_Attr_V1_id_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfo2_computer_dn_, NDR_POINTER_UNIQUE, "Pointer to Computer Dn (uint16)",hf_drsuapi_drsuapi_DsGetDCInfo2_computer_dn);
+ offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryErrorInfo_Attr_V1_id,0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfo2_computer_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryErrorInfo_Attr_V1_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- char *data;
-
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfo2_computer_dn, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryErrorInfo_Attr_V1_count, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfo2_server_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryErrorInfo_Attr_V1_first(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfo2_server_dn_, NDR_POINTER_UNIQUE, "Pointer to Server Dn (uint16)",hf_drsuapi_drsuapi_DsGetDCInfo2_server_dn);
+ offset = drsuapi_dissect_struct_DsAddEntry_AttrErrListItem_V1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryErrorInfo_Attr_V1_first,0);
return offset;
}
-static int
-drsuapi_dissect_element_DsGetDCInfo2_server_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+int
+drsuapi_dissect_struct_DsAddEntryErrorInfo_Attr_V1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- char *data;
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfo2_server_dn, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ ALIGN_TO_5_BYTES;
- return offset;
-}
+ old_offset = offset;
-static int
-drsuapi_dissect_element_DsGetDCInfo2_ntds_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfo2_ntds_dn_, NDR_POINTER_UNIQUE, "Pointer to Ntds Dn (uint16)",hf_drsuapi_drsuapi_DsGetDCInfo2_ntds_dn);
+ if (parent_tree) {
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsAddEntryErrorInfo_Attr_V1);
+ }
+
+ offset = drsuapi_dissect_element_DsAddEntryErrorInfo_Attr_V1_id(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsAddEntryErrorInfo_Attr_V1_count(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsAddEntryErrorInfo_Attr_V1_first(tvb, offset, pinfo, tree, di, drep);
- return offset;
-}
-static int
-drsuapi_dissect_element_DsGetDCInfo2_ntds_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- char *data;
+ proto_item_set_len(item, offset-old_offset);
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfo2_ntds_dn, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_5_BYTES;
+ }
return offset;
}
-static int
-drsuapi_dissect_element_DsGetDCInfo2_is_pdc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfo2_is_pdc, 0);
- return offset;
-}
+/* IDL: struct { */
+/* IDL: uint32 dsid; */
+/* IDL: WERROR extended_err; */
+/* IDL: uint32 extended_data; */
+/* IDL: uint16 problem; */
+/* IDL: [unique(1)] drsuapi_DsReplicaObjectIdentifier *id_matched; */
+/* IDL: } */
static int
-drsuapi_dissect_element_DsGetDCInfo2_is_enabled(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryErrorInfo_Name_V1_dsid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfo2_is_enabled, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryErrorInfo_Name_V1_dsid, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfo2_is_gc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryErrorInfo_Name_V1_extended_err(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfo2_is_gc, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryErrorInfo_Name_V1_extended_err, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfo2_site_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryErrorInfo_Name_V1_extended_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfo2_site_guid, NULL);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryErrorInfo_Name_V1_extended_data, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfo2_computer_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryErrorInfo_Name_V1_problem(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfo2_computer_guid, NULL);
+ offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryErrorInfo_Name_V1_problem, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfo2_server_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryErrorInfo_Name_V1_id_matched(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfo2_server_guid, NULL);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAddEntryErrorInfo_Name_V1_id_matched_, NDR_POINTER_UNIQUE, "Pointer to Id Matched (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsAddEntryErrorInfo_Name_V1_id_matched);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfo2_ntds_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryErrorInfo_Name_V1_id_matched_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfo2_ntds_guid, NULL);
+ offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryErrorInfo_Name_V1_id_matched,0);
return offset;
}
int
-drsuapi_dissect_struct_DsGetDCInfo2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsAddEntryErrorInfo_Name_V1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetDCInfo2);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsAddEntryErrorInfo_Name_V1);
}
- offset = drsuapi_dissect_element_DsGetDCInfo2_netbios_name(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetDCInfo2_dns_name(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetDCInfo2_site_name(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetDCInfo2_site_dn(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetDCInfo2_computer_dn(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetDCInfo2_server_dn(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetDCInfo2_ntds_dn(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetDCInfo2_is_pdc(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetDCInfo2_is_enabled(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetDCInfo2_is_gc(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsAddEntryErrorInfo_Name_V1_dsid(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetDCInfo2_site_guid(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsAddEntryErrorInfo_Name_V1_extended_err(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetDCInfo2_computer_guid(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsAddEntryErrorInfo_Name_V1_extended_data(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetDCInfo2_server_guid(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsAddEntryErrorInfo_Name_V1_problem(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetDCInfo2_ntds_guid(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsAddEntryErrorInfo_Name_V1_id_matched(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
/* IDL: struct { */
-/* IDL: [range(0,10000)] uint32 count; */
-/* IDL: [size_is(count)] [unique(1)] drsuapi_DsGetDCInfo2 *array; */
+/* IDL: [value(83)] uint8 name_res; */
+/* IDL: [value(0)] uint8 unused_pad; */
+/* IDL: [value(0)] uint16 next_rdn; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsGetDCInfoCtr2_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfoCtr2_count, 0);
-
- return offset;
-}
-
-static int
-drsuapi_dissect_element_DsGetDCInfoCtr2_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_NameResOp_V1_name_res(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfoCtr2_array_, NDR_POINTER_UNIQUE, "Pointer to Array (drsuapi_DsGetDCInfo2)",hf_drsuapi_drsuapi_DsGetDCInfoCtr2_array);
+ offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_NameResOp_V1_name_res, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfoCtr2_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_NameResOp_V1_unused_pad(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfoCtr2_array__);
+ offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_NameResOp_V1_unused_pad, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfoCtr2_array__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_NameResOp_V1_next_rdn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsGetDCInfo2(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetDCInfoCtr2_array,0);
+ offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_NameResOp_V1_next_rdn, 0);
return offset;
}
int
-drsuapi_dissect_struct_DsGetDCInfoCtr2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_NameResOp_V1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_5_BYTES;
+ ALIGN_TO_2_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetDCInfoCtr2);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_NameResOp_V1);
}
- offset = drsuapi_dissect_element_DsGetDCInfoCtr2_count(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_NameResOp_V1_name_res(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetDCInfoCtr2_array(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_NameResOp_V1_unused_pad(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_NameResOp_V1_next_rdn(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_5_BYTES;
+ ALIGN_TO_2_BYTES;
}
return offset;
}
-/* IDL: struct { */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *netbios_name; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *dns_name; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *site_name; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *site_dn; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *computer_dn; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *server_dn; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *ntds_dn; */
-/* IDL: uint32 is_pdc; */
-/* IDL: uint32 is_enabled; */
-/* IDL: uint32 is_gc; */
-/* IDL: uint32 is_rodc; */
-/* IDL: GUID site_guid; */
-/* IDL: GUID computer_guid; */
-/* IDL: GUID server_guid; */
-/* IDL: GUID ntds_guid; */
+/* IDL: enum { */
+/* IDL: DRSUAPI_CH_REFTYPE_SUPERIOR=0x0000, */
+/* IDL: DRSUAPI_CH_REFTYPE_SUBORDINATE=0x0001, */
+/* IDL: DRSUAPI_CH_REFTYPE_NSSR=0x0002, */
+/* IDL: DRSUAPI_CH_REFTYPE_CROSS=0x0003, */
/* IDL: } */
-static int
-drsuapi_dissect_element_DsGetDCInfo3_netbios_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+int
+drsuapi_dissect_enum_DsAddEntry_RefType(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint16 *param _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfo3_netbios_name_, NDR_POINTER_UNIQUE, "Pointer to Netbios Name (uint16)",hf_drsuapi_drsuapi_DsGetDCInfo3_netbios_name);
-
+ guint16 parameter=0;
+ if (param) {
+ parameter = *param;
+ }
+ offset = dissect_ndr_uint16(tvb, offset, pinfo, tree, di, drep, hf_index, ¶meter);
+ if (param) {
+ *param = parameter;
+ }
return offset;
}
-static int
-drsuapi_dissect_element_DsGetDCInfo3_netbios_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- char *data;
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfo3_netbios_name, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+/* IDL: enum { */
+/* IDL: DRSUAPI_SE_CHOICE_BASE_ONLY=0x00, */
+/* IDL: DRSUAPI_SE_CHOICE_IMMED_CHLDRN=0x01, */
+/* IDL: DRSUAPI_SE_CHOICE_WHOLE_SUBTREE=0x02, */
+/* IDL: } */
+int
+drsuapi_dissect_enum_DsAddEntry_ChoiceType(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint8 *param _U_)
+{
+ guint8 parameter=0;
+ if (param) {
+ parameter = *param;
+ }
+ offset = dissect_ndr_uint8(tvb, offset, pinfo, tree, di, drep, hf_index, ¶meter);
+ if (param) {
+ *param = parameter;
+ }
return offset;
}
-static int
-drsuapi_dissect_element_DsGetDCInfo3_dns_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfo3_dns_name_, NDR_POINTER_UNIQUE, "Pointer to Dns Name (uint16)",hf_drsuapi_drsuapi_DsGetDCInfo3_dns_name);
- return offset;
-}
+/* IDL: struct { */
+/* IDL: [max_recursion(1024)] [unique(1)] drsuapi_DsaAddressListItem_V1 *next; */
+/* IDL: [unique(1)] lsa_String *address; */
+/* IDL: } */
static int
-drsuapi_dissect_element_DsGetDCInfo3_dns_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsaAddressListItem_V1_next(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- char *data;
-
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfo3_dns_name, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsaAddressListItem_V1_next_, NDR_POINTER_UNIQUE, "Pointer to Next (drsuapi_DsaAddressListItem_V1)",hf_drsuapi_drsuapi_DsaAddressListItem_V1_next);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfo3_site_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsaAddressListItem_V1_address(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfo3_site_name_, NDR_POINTER_UNIQUE, "Pointer to Site Name (uint16)",hf_drsuapi_drsuapi_DsGetDCInfo3_site_name);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsaAddressListItem_V1_address_, NDR_POINTER_UNIQUE, "Pointer to Address (lsa_String)",hf_drsuapi_drsuapi_DsaAddressListItem_V1_address);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfo3_site_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsaAddressListItem_V1_address_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- char *data;
-
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfo3_site_name, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ offset = drsuapi_dissect_struct_lsa_String(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsaAddressListItem_V1_address,0);
return offset;
}
-static int
-drsuapi_dissect_element_DsGetDCInfo3_site_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+int
+drsuapi_dissect_struct_DsaAddressListItem_V1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfo3_site_dn_, NDR_POINTER_UNIQUE, "Pointer to Site Dn (uint16)",hf_drsuapi_drsuapi_DsGetDCInfo3_site_dn);
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
- return offset;
-}
+ ALIGN_TO_5_BYTES;
-static int
-drsuapi_dissect_element_DsGetDCInfo3_site_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- char *data;
+ old_offset = offset;
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfo3_site_dn, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ if (parent_tree) {
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsaAddressListItem_V1);
+ }
- return offset;
-}
+ offset = drsuapi_dissect_element_DsaAddressListItem_V1_next(tvb, offset, pinfo, tree, di, drep);
-static int
-drsuapi_dissect_element_DsGetDCInfo3_computer_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfo3_computer_dn_, NDR_POINTER_UNIQUE, "Pointer to Computer Dn (uint16)",hf_drsuapi_drsuapi_DsGetDCInfo3_computer_dn);
+ offset = drsuapi_dissect_element_DsaAddressListItem_V1_address(tvb, offset, pinfo, tree, di, drep);
- return offset;
-}
-static int
-drsuapi_dissect_element_DsGetDCInfo3_computer_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- char *data;
+ proto_item_set_len(item, offset-old_offset);
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfo3_computer_dn, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_5_BYTES;
+ }
return offset;
}
+
+/* IDL: struct { */
+/* IDL: [unique(1)] drsuapi_DsReplicaObjectIdentifier *id_target; */
+/* IDL: drsuapi_NameResOp_V1 op_state; */
+/* IDL: [value(0)] uint16 rdn_alias; */
+/* IDL: [value(0)] uint16 rdn_internal; */
+/* IDL: drsuapi_DsAddEntry_RefType ref_type; */
+/* IDL: uint16 addr_list_count; */
+/* IDL: [unique(1)] drsuapi_DsaAddressListItem_V1 *addr_list; */
+/* IDL: [max_recursion(20000)] [unique(1)] drsuapi_DsAddEntry_RefErrListItem_V1 *next; */
+/* IDL: uint32 is_choice_set; */
+/* IDL: drsuapi_DsAddEntry_ChoiceType choice; */
+/* IDL: } */
+
static int
-drsuapi_dissect_element_DsGetDCInfo3_server_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_id_target(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfo3_server_dn_, NDR_POINTER_UNIQUE, "Pointer to Server Dn (uint16)",hf_drsuapi_drsuapi_DsGetDCInfo3_server_dn);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_id_target_, NDR_POINTER_UNIQUE, "Pointer to Id Target (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsAddEntry_RefErrListItem_V1_id_target);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfo3_server_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_id_target_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- char *data;
-
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfo3_server_dn, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntry_RefErrListItem_V1_id_target,0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfo3_ntds_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_op_state(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfo3_ntds_dn_, NDR_POINTER_UNIQUE, "Pointer to Ntds Dn (uint16)",hf_drsuapi_drsuapi_DsGetDCInfo3_ntds_dn);
+ offset = drsuapi_dissect_struct_NameResOp_V1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntry_RefErrListItem_V1_op_state,0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfo3_ntds_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_rdn_alias(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- char *data;
-
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCInfo3_ntds_dn, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_RefErrListItem_V1_rdn_alias, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfo3_is_pdc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_rdn_internal(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfo3_is_pdc, 0);
+ offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_RefErrListItem_V1_rdn_internal, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfo3_is_enabled(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_ref_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfo3_is_enabled, 0);
+ offset = drsuapi_dissect_enum_DsAddEntry_RefType(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_RefErrListItem_V1_ref_type, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfo3_is_gc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_addr_list_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfo3_is_gc, 0);
+ offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_RefErrListItem_V1_addr_list_count, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfo3_is_rodc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_addr_list(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfo3_is_rodc, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_addr_list_, NDR_POINTER_UNIQUE, "Pointer to Addr List (drsuapi_DsaAddressListItem_V1)",hf_drsuapi_drsuapi_DsAddEntry_RefErrListItem_V1_addr_list);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfo3_site_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_addr_list_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfo3_site_guid, NULL);
+ offset = drsuapi_dissect_struct_DsaAddressListItem_V1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntry_RefErrListItem_V1_addr_list,0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfo3_computer_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_next(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfo3_computer_guid, NULL);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_next_, NDR_POINTER_UNIQUE, "Pointer to Next (drsuapi_DsAddEntry_RefErrListItem_V1)",hf_drsuapi_drsuapi_DsAddEntry_RefErrListItem_V1_next);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfo3_server_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_is_choice_set(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfo3_server_guid, NULL);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_RefErrListItem_V1_is_choice_set, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfo3_ntds_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_choice(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfo3_ntds_guid, NULL);
+ offset = drsuapi_dissect_enum_DsAddEntry_ChoiceType(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_RefErrListItem_V1_choice, 0);
return offset;
}
int
-drsuapi_dissect_struct_DsGetDCInfo3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsAddEntry_RefErrListItem_V1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetDCInfo3);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsAddEntry_RefErrListItem_V1);
}
- offset = drsuapi_dissect_element_DsGetDCInfo3_netbios_name(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetDCInfo3_dns_name(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetDCInfo3_site_name(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetDCInfo3_site_dn(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetDCInfo3_computer_dn(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetDCInfo3_server_dn(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_id_target(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetDCInfo3_ntds_dn(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_op_state(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetDCInfo3_is_pdc(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_rdn_alias(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetDCInfo3_is_enabled(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_rdn_internal(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetDCInfo3_is_gc(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_ref_type(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetDCInfo3_is_rodc(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_addr_list_count(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetDCInfo3_site_guid(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_addr_list(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetDCInfo3_computer_guid(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_next(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetDCInfo3_server_guid(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_is_choice_set(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetDCInfo3_ntds_guid(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_choice(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
/* IDL: struct { */
-/* IDL: [range(0,10000)] uint32 count; */
-/* IDL: [size_is(count)] [unique(1)] drsuapi_DsGetDCInfo3 *array; */
+/* IDL: uint32 dsid; */
+/* IDL: WERROR extended_err; */
+/* IDL: uint32 extended_data; */
+/* IDL: drsuapi_DsAddEntry_RefErrListItem_V1 refer; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsGetDCInfoCtr3_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryErrorInfo_Referr_V1_dsid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCInfoCtr3_count, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryErrorInfo_Referr_V1_dsid, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfoCtr3_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryErrorInfo_Referr_V1_extended_err(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfoCtr3_array_, NDR_POINTER_UNIQUE, "Pointer to Array (drsuapi_DsGetDCInfo3)",hf_drsuapi_drsuapi_DsGetDCInfoCtr3_array);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryErrorInfo_Referr_V1_extended_err, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfoCtr3_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryErrorInfo_Referr_V1_extended_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCInfoCtr3_array__);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryErrorInfo_Referr_V1_extended_data, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfoCtr3_array__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryErrorInfo_Referr_V1_refer(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsGetDCInfo3(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetDCInfoCtr3_array,0);
+ offset = drsuapi_dissect_struct_DsAddEntry_RefErrListItem_V1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryErrorInfo_Referr_V1_refer,0);
return offset;
}
int
-drsuapi_dissect_struct_DsGetDCInfoCtr3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsAddEntryErrorInfo_Referr_V1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetDCInfoCtr3);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsAddEntryErrorInfo_Referr_V1);
}
- offset = drsuapi_dissect_element_DsGetDCInfoCtr3_count(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsAddEntryErrorInfo_Referr_V1_dsid(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetDCInfoCtr3_array(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsAddEntryErrorInfo_Referr_V1_extended_err(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsAddEntryErrorInfo_Referr_V1_extended_data(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsAddEntryErrorInfo_Referr_V1_refer(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
}
-/* IDL: struct { */
-/* IDL: [flag(LIBNDR_FLAG_BIGENDIAN)] ipv4address client_ip_address; */
-/* IDL: uint32 unknown2; */
-/* IDL: uint32 connection_time; */
-/* IDL: uint32 unknown4; */
-/* IDL: uint32 unknown5; */
-/* IDL: uint32 unknown6; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *client_account; */
+/* IDL: [switch_type(uint32)] union { */
+/* IDL: [case(1)] [case(1)] drsuapi_DsAddEntryErrorInfo_Attr_V1 attr_err; */
+/* IDL: [case(2)] [case(2)] drsuapi_DsAddEntryErrorInfo_Name_V1 name_err; */
+/* IDL: [case(3)] [case(3)] drsuapi_DsAddEntryErrorInfo_Referr_V1 referral_err; */
+/* IDL: [case(4)] [case(4)] drsuapi_DsAddEntryErrorInfoX security_err; */
+/* IDL: [case(5)] [case(5)] drsuapi_DsAddEntryErrorInfoX service_err; */
+/* IDL: [case(6)] [case(6)] drsuapi_DsAddEntryErrorInfoX update_err; */
+/* IDL: [case(7)] [case(7)] drsuapi_DsAddEntryErrorInfoX system_err; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsGetDCConnection01_client_ip_address(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryErrorInfo_attr_err(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- proto_tree_add_item(tree, hf_drsuapi_drsuapi_DsGetDCConnection01_client_ip_address, tvb, offset, 4, ENC_BIG_ENDIAN); offset += 4;
+ offset = drsuapi_dissect_struct_DsAddEntryErrorInfo_Attr_V1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryErrorInfo_attr_err,0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCConnection01_unknown2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryErrorInfo_name_err(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCConnection01_unknown2, 0);
+ offset = drsuapi_dissect_struct_DsAddEntryErrorInfo_Name_V1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryErrorInfo_name_err,0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCConnection01_connection_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryErrorInfo_referral_err(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCConnection01_connection_time, 0);
+ offset = drsuapi_dissect_struct_DsAddEntryErrorInfo_Referr_V1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryErrorInfo_referral_err,0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCConnection01_unknown4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryErrorInfo_security_err(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCConnection01_unknown4, 0);
+ offset = drsuapi_dissect_struct_DsAddEntryErrorInfoX(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryErrorInfo_security_err,0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCConnection01_unknown5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryErrorInfo_service_err(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCConnection01_unknown5, 0);
+ offset = drsuapi_dissect_struct_DsAddEntryErrorInfoX(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryErrorInfo_service_err,0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCConnection01_unknown6(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryErrorInfo_update_err(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCConnection01_unknown6, 0);
+ offset = drsuapi_dissect_struct_DsAddEntryErrorInfoX(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryErrorInfo_update_err,0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCConnection01_client_account(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryErrorInfo_system_err(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCConnection01_client_account_, NDR_POINTER_UNIQUE, "Pointer to Client Account (uint16)",hf_drsuapi_drsuapi_DsGetDCConnection01_client_account);
+ offset = drsuapi_dissect_struct_DsAddEntryErrorInfoX(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryErrorInfo_system_err,0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCConnection01_client_account_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsAddEntryErrorInfo(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- char *data;
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+ guint32 level;
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsGetDCConnection01_client_account, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ old_offset = offset;
+ if (parent_tree) {
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsAddEntryErrorInfo, &item, "drsuapi_DsAddEntryErrorInfo");
+ }
+
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
+ ALIGN_TO_5_BYTES;
+
+ switch(level) {
+ case 1:
+ offset = drsuapi_dissect_element_DsAddEntryErrorInfo_attr_err(tvb, offset, pinfo, tree, di, drep);
+ break;
+
+ case 2:
+ offset = drsuapi_dissect_element_DsAddEntryErrorInfo_name_err(tvb, offset, pinfo, tree, di, drep);
+ break;
+
+ case 3:
+ offset = drsuapi_dissect_element_DsAddEntryErrorInfo_referral_err(tvb, offset, pinfo, tree, di, drep);
+ break;
+
+ case 4:
+ offset = drsuapi_dissect_element_DsAddEntryErrorInfo_security_err(tvb, offset, pinfo, tree, di, drep);
+ break;
+
+ case 5:
+ offset = drsuapi_dissect_element_DsAddEntryErrorInfo_service_err(tvb, offset, pinfo, tree, di, drep);
+ break;
+
+ case 6:
+ offset = drsuapi_dissect_element_DsAddEntryErrorInfo_update_err(tvb, offset, pinfo, tree, di, drep);
+ break;
+
+ case 7:
+ offset = drsuapi_dissect_element_DsAddEntryErrorInfo_system_err(tvb, offset, pinfo, tree, di, drep);
+ break;
+ }
+ proto_item_set_len(item, offset-old_offset);
+
+
+ return offset;
+}
+
+/* IDL: struct { */
+/* IDL: WERROR status; */
+/* IDL: drsuapi_DsAddEntry_DirErr dir_err; */
+/* IDL: [switch_is(dir_err)] [unique(1)] drsuapi_DsAddEntryErrorInfo *info; */
+/* IDL: } */
+
+static int
+drsuapi_dissect_element_DsAddEntry_ErrData_V1_status(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_ErrData_V1_status, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsAddEntry_ErrData_V1_dir_err(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, guint32 *dir_err)
+{
+ offset = drsuapi_dissect_enum_DsAddEntry_DirErr(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_ErrData_V1_dir_err, dir_err);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsAddEntry_ErrData_V1_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, guint32 *dir_err)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAddEntry_ErrData_V1_info_, NDR_POINTER_UNIQUE, "Pointer to Info (drsuapi_DsAddEntryErrorInfo)",hf_drsuapi_drsuapi_DsAddEntry_ErrData_V1_info);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsAddEntry_ErrData_V1_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, guint32 *dir_err)
+{
+ offset = drsuapi_dissect_DsAddEntryErrorInfo(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_ErrData_V1_info, *dir_err);
return offset;
}
int
-drsuapi_dissect_struct_DsGetDCConnection01(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsAddEntry_ErrData_V1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
+ guint32 dir_err = 0;
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetDCConnection01);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsAddEntry_ErrData_V1);
}
- offset = drsuapi_dissect_element_DsGetDCConnection01_client_ip_address(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetDCConnection01_unknown2(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetDCConnection01_connection_time(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetDCConnection01_unknown4(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsGetDCConnection01_unknown5(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsAddEntry_ErrData_V1_status(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetDCConnection01_unknown6(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsAddEntry_ErrData_V1_dir_err(tvb, offset, pinfo, tree, di, drep, &dir_err);
- offset = drsuapi_dissect_element_DsGetDCConnection01_client_account(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsAddEntry_ErrData_V1_info(tvb, offset, pinfo, tree, di, drep, &dir_err);
proto_item_set_len(item, offset-old_offset);
}
-/* IDL: struct { */
-/* IDL: [range(0,10000)] uint32 count; */
-/* IDL: [size_is(count)] [unique(1)] drsuapi_DsGetDCConnection01 *array; */
+/* IDL: [switch_type(uint32)] union { */
+/* IDL: [case(1)] [case(1)] drsuapi_DsAddEntry_ErrData_V1 v1; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsGetDCConnectionCtr01_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntry_ErrData_v1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDCConnectionCtr01_count, 0);
+ offset = drsuapi_dissect_struct_DsAddEntry_ErrData_V1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntry_ErrData_v1,0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCConnectionCtr01_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsAddEntry_ErrData(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCConnectionCtr01_array_, NDR_POINTER_UNIQUE, "Pointer to Array (drsuapi_DsGetDCConnection01)",hf_drsuapi_drsuapi_DsGetDCConnectionCtr01_array);
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+ guint32 level;
+
+ old_offset = offset;
+ if (parent_tree) {
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsAddEntry_ErrData, &item, "drsuapi_DsAddEntry_ErrData");
+ }
+
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
+ ALIGN_TO_5_BYTES;
+
+ switch(level) {
+ case 1:
+ offset = drsuapi_dissect_element_DsAddEntry_ErrData_v1(tvb, offset, pinfo, tree, di, drep);
+ break;
+ }
+ proto_item_set_len(item, offset-old_offset);
+
return offset;
}
+/* IDL: struct { */
+/* IDL: GUID guid; */
+/* IDL: dom_sid28 sid; */
+/* IDL: } */
+
static int
-drsuapi_dissect_element_DsGetDCConnectionCtr01_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaObjectIdentifier2_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDCConnectionCtr01_array__);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjectIdentifier2_guid, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCConnectionCtr01_array__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaObjectIdentifier2_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsGetDCConnection01(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetDCConnectionCtr01_array,0);
+
+ di->hf_index = hf_drsuapi_drsuapi_DsReplicaObjectIdentifier2_sid;
+
+ offset = dissect_ndr_nt_SID28(tvb, offset, pinfo, tree, di, drep);
+
return offset;
}
int
-drsuapi_dissect_struct_DsGetDCConnectionCtr01(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsReplicaObjectIdentifier2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_5_BYTES;
+ ALIGN_TO_4_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetDCConnectionCtr01);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaObjectIdentifier2);
}
- offset = drsuapi_dissect_element_DsGetDCConnectionCtr01_count(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaObjectIdentifier2_guid(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsGetDCConnectionCtr01_array(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaObjectIdentifier2_sid(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_5_BYTES;
+ ALIGN_TO_4_BYTES;
}
return offset;
}
-/* IDL: [switch_type(drsuapi_DsGetDCInfoCtrLevels)] union { */
-/* IDL: [case(DRSUAPI_DC_INFO_CTR_1)] [case(DRSUAPI_DC_INFO_CTR_1)] drsuapi_DsGetDCInfoCtr1 ctr1; */
-/* IDL: [case(DRSUAPI_DC_INFO_CTR_2)] [case(DRSUAPI_DC_INFO_CTR_2)] drsuapi_DsGetDCInfoCtr2 ctr2; */
-/* IDL: [case(DRSUAPI_DC_INFO_CTR_3)] [case(DRSUAPI_DC_INFO_CTR_3)] drsuapi_DsGetDCInfoCtr3 ctr3; */
-/* IDL: [case(DRSUAPI_DC_CONNECTION_CTR_01)] [case(DRSUAPI_DC_CONNECTION_CTR_01)] drsuapi_DsGetDCConnectionCtr01 ctr01; */
+/* IDL: struct { */
+/* IDL: [unique(1)] drsuapi_DsReplicaObjectIdentifier *id; */
+/* IDL: drsuapi_DsAddEntry_DirErr dir_err; */
+/* IDL: uint32 dsid; */
+/* IDL: WERROR extended_err; */
+/* IDL: uint32 extended_data; */
+/* IDL: uint16 problem; */
+/* IDL: [range(0,10000)] uint32 count; */
+/* IDL: [size_is(count)] [unique(1)] drsuapi_DsReplicaObjectIdentifier2 *objects; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsGetDCInfoCtr_ctr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryCtr2_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsGetDCInfoCtr1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetDCInfoCtr_ctr1,0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAddEntryCtr2_id_, NDR_POINTER_UNIQUE, "Pointer to Id (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsAddEntryCtr2_id);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfoCtr_ctr2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryCtr2_id_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsGetDCInfoCtr2(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetDCInfoCtr_ctr2,0);
+ offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryCtr2_id,0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfoCtr_ctr3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryCtr2_dir_err(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsGetDCInfoCtr3(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetDCInfoCtr_ctr3,0);
+ offset = drsuapi_dissect_enum_DsAddEntry_DirErr(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryCtr2_dir_err, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDCInfoCtr_ctr01(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryCtr2_dsid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsGetDCConnectionCtr01(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetDCInfoCtr_ctr01,0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryCtr2_dsid, 0);
return offset;
}
static int
-drsuapi_dissect_DsGetDCInfoCtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_element_DsAddEntryCtr2_extended_err(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
- guint32 level;
-
- old_offset = offset;
- if (parent_tree) {
- tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsGetDCInfoCtr, &item, "drsuapi_DsGetDCInfoCtr");
- }
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryCtr2_extended_err, 0);
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
- ALIGN_TO_5_BYTES;
+ return offset;
+}
- switch(level) {
- case DRSUAPI_DC_INFO_CTR_1:
- offset = drsuapi_dissect_element_DsGetDCInfoCtr_ctr1(tvb, offset, pinfo, tree, di, drep);
- break;
+static int
+drsuapi_dissect_element_DsAddEntryCtr2_extended_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryCtr2_extended_data, 0);
- case DRSUAPI_DC_INFO_CTR_2:
- offset = drsuapi_dissect_element_DsGetDCInfoCtr_ctr2(tvb, offset, pinfo, tree, di, drep);
- break;
+ return offset;
+}
- case DRSUAPI_DC_INFO_CTR_3:
- offset = drsuapi_dissect_element_DsGetDCInfoCtr_ctr3(tvb, offset, pinfo, tree, di, drep);
- break;
+static int
+drsuapi_dissect_element_DsAddEntryCtr2_problem(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryCtr2_problem, 0);
- case DRSUAPI_DC_CONNECTION_CTR_01:
- offset = drsuapi_dissect_element_DsGetDCInfoCtr_ctr01(tvb, offset, pinfo, tree, di, drep);
- break;
- }
- proto_item_set_len(item, offset-old_offset);
+ return offset;
+}
+static int
+drsuapi_dissect_element_DsAddEntryCtr2_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryCtr2_count, 0);
return offset;
}
-/* IDL: struct { */
-/* IDL: [max_recursion(20000)] [unique(1)] drsuapi_DsReplicaObjectListItem *next_object; */
-/* IDL: drsuapi_DsReplicaObject object; */
-/* IDL: } */
+static int
+drsuapi_dissect_element_DsAddEntryCtr2_objects(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAddEntryCtr2_objects_, NDR_POINTER_UNIQUE, "Pointer to Objects (drsuapi_DsReplicaObjectIdentifier2)",hf_drsuapi_drsuapi_DsAddEntryCtr2_objects);
+
+ return offset;
+}
static int
-drsuapi_dissect_element_DsReplicaObjectListItem_next_object(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryCtr2_objects_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaObjectListItem_next_object_, NDR_POINTER_UNIQUE, "Pointer to Next Object (drsuapi_DsReplicaObjectListItem)",hf_drsuapi_drsuapi_DsReplicaObjectListItem_next_object);
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAddEntryCtr2_objects__);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObjectListItem_object(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryCtr2_objects__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaObject(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaObjectListItem_object,0);
+ offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier2(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryCtr2_objects,0);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaObjectListItem(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsAddEntryCtr2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaObjectListItem);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsAddEntryCtr2);
}
- offset = drsuapi_dissect_element_DsReplicaObjectListItem_next_object(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaObjectListItem_object(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsAddEntryCtr2_id(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsAddEntryCtr2_dir_err(tvb, offset, pinfo, tree, di, drep);
- proto_item_set_len(item, offset-old_offset);
+ offset = drsuapi_dissect_element_DsAddEntryCtr2_dsid(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsAddEntryCtr2_extended_err(tvb, offset, pinfo, tree, di, drep);
- if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_5_BYTES;
- }
+ offset = drsuapi_dissect_element_DsAddEntryCtr2_extended_data(tvb, offset, pinfo, tree, di, drep);
- return offset;
-}
+ offset = drsuapi_dissect_element_DsAddEntryCtr2_problem(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsAddEntryCtr2_count(tvb, offset, pinfo, tree, di, drep);
-/* IDL: enum { */
-/* IDL: DRSUAPI_DIRERR_OK=0, */
-/* IDL: DRSUAPI_DIRERR_ATTRIBUTE=1, */
-/* IDL: DRSUAPI_DIRERR_NAME=2, */
-/* IDL: DRSUAPI_DIRERR_REFERRAL=3, */
-/* IDL: DRSUAPI_DIRERR_SECURITY=4, */
-/* IDL: DRSUAPI_DIRERR_SERVICE=5, */
-/* IDL: DRSUAPI_DIRERR_UPDATE=6, */
-/* IDL: DRSUAPI_DIRERR_SYSTEM=7, */
-/* IDL: } */
+ offset = drsuapi_dissect_element_DsAddEntryCtr2_objects(tvb, offset, pinfo, tree, di, drep);
-int
-drsuapi_dissect_enum_DsAddEntry_DirErr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
-{
- guint32 parameter=0;
- if (param) {
- parameter = *param;
- }
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, ¶meter);
- if (param) {
- *param = parameter;
- }
- return offset;
-}
+ proto_item_set_len(item, offset-old_offset);
-/* IDL: struct { */
-/* IDL: drsuapi_DsReplicaObjectListItem first_object; */
-/* IDL: } */
-static int
-drsuapi_dissect_element_DsAddEntryRequest2_first_object(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = drsuapi_dissect_struct_DsReplicaObjectListItem(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryRequest2_first_object,0);
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_5_BYTES;
+ }
return offset;
}
-int
-drsuapi_dissect_struct_DsAddEntryRequest2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
-{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
-
- ALIGN_TO_5_BYTES;
-
- old_offset = offset;
-
- if (parent_tree) {
- item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsAddEntryRequest2);
- }
-
- offset = drsuapi_dissect_element_DsAddEntryRequest2_first_object(tvb, offset, pinfo, tree, di, drep);
-
-
- proto_item_set_len(item, offset-old_offset);
+/* IDL: struct { */
+/* IDL: [unique(1)] drsuapi_DsReplicaObjectIdentifier *id; */
+/* IDL: uint32 err_ver; */
+/* IDL: [switch_is(err_ver)] [unique(1)] drsuapi_DsAddEntry_ErrData *err_data; */
+/* IDL: [range(0,10000)] uint32 count; */
+/* IDL: [size_is(count)] [unique(1)] drsuapi_DsReplicaObjectIdentifier2 *objects; */
+/* IDL: } */
- if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_5_BYTES;
- }
+static int
+drsuapi_dissect_element_DsAddEntryCtr3_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAddEntryCtr3_id_, NDR_POINTER_UNIQUE, "Pointer to Id (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsAddEntryCtr3_id);
return offset;
}
+static int
+drsuapi_dissect_element_DsAddEntryCtr3_id_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryCtr3_id,0);
-/* IDL: enum { */
-/* IDL: DRSUAPI_SECBUFFER_EMPTY=0x00000000, */
-/* IDL: DRSUAPI_SECBUFFER_DATA=0x00000001, */
-/* IDL: DRSUAPI_SECBUFFER_TOKEN=0x00000002, */
-/* IDL: DRSUAPI_SECBUFFER_PKG_PARAMS=0x00000003, */
-/* IDL: DRSUAPI_SECBUFFER_MISSING=0x00000004, */
-/* IDL: DRSUAPI_SECBUFFER_EXTRA=0x00000005, */
-/* IDL: DRSUAPI_SECBUFFER_STREAM_TRAILER=0x00000006, */
-/* IDL: DRSUAPI_SECBUFFER_STREAM_HEADER=0x00000007, */
-/* IDL: DRSUAPI_SECBUFFER_READONLY=0x80000000, */
-/* IDL: } */
+ return offset;
+}
-int
-drsuapi_dissect_enum_SecBufferType(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
+static int
+drsuapi_dissect_element_DsAddEntryCtr3_err_ver(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, guint32 *err_ver)
{
- guint32 parameter=0;
- if (param) {
- parameter = *param;
- }
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, ¶meter);
- if (param) {
- *param = parameter;
- }
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryCtr3_err_ver, *err_ver);
+
return offset;
}
+static int
+drsuapi_dissect_element_DsAddEntryCtr3_err_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, guint32 *err_ver)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAddEntryCtr3_err_data_, NDR_POINTER_UNIQUE, "Pointer to Err Data (drsuapi_DsAddEntry_ErrData)",hf_drsuapi_drsuapi_DsAddEntryCtr3_err_data);
-/* IDL: struct { */
-/* IDL: [range(0,10000)] uint32 buf_size; */
-/* IDL: drsuapi_SecBufferType buf_type; */
-/* IDL: [size_is(buf_size)] [unique(1)] uint8 *buffer; */
-/* IDL: } */
+ return offset;
+}
static int
-drsuapi_dissect_element_SecBuffer_buf_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryCtr3_err_data_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, guint32 *err_ver)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_SecBuffer_buf_size, 0);
+ offset = drsuapi_dissect_DsAddEntry_ErrData(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryCtr3_err_data, *err_ver);
return offset;
}
static int
-drsuapi_dissect_element_SecBuffer_buf_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryCtr3_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_enum_SecBufferType(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_SecBuffer_buf_type, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryCtr3_count, 0);
return offset;
}
static int
-drsuapi_dissect_element_SecBuffer_buffer(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryCtr3_objects(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_SecBuffer_buffer_, NDR_POINTER_UNIQUE, "Pointer to Buffer (uint8)",hf_drsuapi_drsuapi_SecBuffer_buffer);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAddEntryCtr3_objects_, NDR_POINTER_UNIQUE, "Pointer to Objects (drsuapi_DsReplicaObjectIdentifier2)",hf_drsuapi_drsuapi_DsAddEntryCtr3_objects);
return offset;
}
static int
-drsuapi_dissect_element_SecBuffer_buffer_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryCtr3_objects_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_SecBuffer_buffer__);
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAddEntryCtr3_objects__);
return offset;
}
static int
-drsuapi_dissect_element_SecBuffer_buffer__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryCtr3_objects__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_SecBuffer_buffer, 0);
+ offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier2(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryCtr3_objects,0);
return offset;
}
int
-drsuapi_dissect_struct_SecBuffer(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsAddEntryCtr3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
+ guint32 err_ver = 0;
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_SecBuffer);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsAddEntryCtr3);
}
- offset = drsuapi_dissect_element_SecBuffer_buf_size(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsAddEntryCtr3_id(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_SecBuffer_buf_type(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsAddEntryCtr3_err_ver(tvb, offset, pinfo, tree, di, drep, &err_ver);
- offset = drsuapi_dissect_element_SecBuffer_buffer(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsAddEntryCtr3_err_data(tvb, offset, pinfo, tree, di, drep, &err_ver);
+
+ offset = drsuapi_dissect_element_DsAddEntryCtr3_count(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsAddEntryCtr3_objects(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
}
-/* IDL: struct { */
-/* IDL: [value(0)] uint32 version; */
-/* IDL: [range(0,10000)] uint32 buff_count; */
-/* IDL: [size_is(buff_count)] [unique(1)] drsuapi_SecBuffer *buffers; */
+/* IDL: [switch_type(uint32)] union { */
+/* IDL: [case(2)] [case(2)] drsuapi_DsAddEntryCtr2 ctr2; */
+/* IDL: [case(3)] [case(3)] drsuapi_DsAddEntryCtr3 ctr3; */
/* IDL: } */
static int
-drsuapi_dissect_element_SecBufferDesc_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryCtr_ctr2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_SecBufferDesc_version, 0);
+ offset = drsuapi_dissect_struct_DsAddEntryCtr2(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryCtr_ctr2,0);
return offset;
}
static int
-drsuapi_dissect_element_SecBufferDesc_buff_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntryCtr_ctr3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_SecBufferDesc_buff_count, 0);
+ offset = drsuapi_dissect_struct_DsAddEntryCtr3(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryCtr_ctr3,0);
return offset;
}
static int
-drsuapi_dissect_element_SecBufferDesc_buffers(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsAddEntryCtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_SecBufferDesc_buffers_, NDR_POINTER_UNIQUE, "Pointer to Buffers (drsuapi_SecBuffer)",hf_drsuapi_drsuapi_SecBufferDesc_buffers);
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+ guint32 level;
+
+ old_offset = offset;
+ if (parent_tree) {
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsAddEntryCtr, &item, "drsuapi_DsAddEntryCtr");
+ }
+
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
+ ALIGN_TO_5_BYTES;
+
+ switch(level) {
+ case 2:
+ offset = drsuapi_dissect_element_DsAddEntryCtr_ctr2(tvb, offset, pinfo, tree, di, drep);
+ break;
+
+ case 3:
+ offset = drsuapi_dissect_element_DsAddEntryCtr_ctr3(tvb, offset, pinfo, tree, di, drep);
+ break;
+ }
+ proto_item_set_len(item, offset-old_offset);
+
+
+ return offset;
+}
+
+/* IDL: bitmap { */
+/* IDL: DRSUAPI_DS_EXECUTE_KCC_ASYNCHRONOUS_OPERATION = 0x00000001 , */
+/* IDL: DRSUAPI_DS_EXECUTE_KCC_DAMPED = 0x00000002 , */
+/* IDL: } */
+
+int
+drsuapi_dissect_bitmap_DsExecuteKCCFlags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+{
+ proto_item *item;
+ static int * const drsuapi_drsuapi_DsExecuteKCCFlags_fields[] = {
+ &hf_drsuapi_drsuapi_DsExecuteKCCFlags_DRSUAPI_DS_EXECUTE_KCC_ASYNCHRONOUS_OPERATION,
+ &hf_drsuapi_drsuapi_DsExecuteKCCFlags_DRSUAPI_DS_EXECUTE_KCC_DAMPED,
+ NULL
+ };
+ guint32 flags;
+ ALIGN_TO_4_BYTES;
+
+ item = proto_tree_add_bitmask_with_flags(parent_tree, tvb, offset, hf_index,
+ ett_drsuapi_drsuapi_DsExecuteKCCFlags, drsuapi_drsuapi_DsExecuteKCCFlags_fields, DREP_ENC_INTEGER(drep), BMT_NO_FALSE);
+
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, parent_tree, di, drep, -1, &flags);
+
+ if (!flags)
+ proto_item_append_text(item, ": (No values set)");
+
+ if (flags & (~0x00000003)) {
+ flags &= (~0x00000003);
+ proto_item_append_text(item, "Unknown bitmap value 0x%x", flags);
+ }
return offset;
}
+
+/* IDL: struct { */
+/* IDL: uint32 taskID; */
+/* IDL: drsuapi_DsExecuteKCCFlags flags; */
+/* IDL: } */
+
static int
-drsuapi_dissect_element_SecBufferDesc_buffers_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsExecuteKCC1_taskID(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_SecBufferDesc_buffers__);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsExecuteKCC1_taskID, 0);
return offset;
}
static int
-drsuapi_dissect_element_SecBufferDesc_buffers__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsExecuteKCC1_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_SecBuffer(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_SecBufferDesc_buffers,0);
+ offset = drsuapi_dissect_bitmap_DsExecuteKCCFlags(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsExecuteKCC1_flags, 0);
return offset;
}
int
-drsuapi_dissect_struct_SecBufferDesc(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsExecuteKCC1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_5_BYTES;
+ ALIGN_TO_4_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_SecBufferDesc);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsExecuteKCC1);
}
- offset = drsuapi_dissect_element_SecBufferDesc_version(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_SecBufferDesc_buff_count(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsExecuteKCC1_taskID(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_SecBufferDesc_buffers(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsExecuteKCC1_flags(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_5_BYTES;
+ ALIGN_TO_4_BYTES;
}
return offset;
}
-/* IDL: struct { */
-/* IDL: drsuapi_DsReplicaObjectListItem first_object; */
-/* IDL: [unique(1)] drsuapi_SecBufferDesc *client_creds; */
+/* IDL: [switch_type(uint32)] union { */
+/* IDL: [case(1)] [case(1)] drsuapi_DsExecuteKCC1 ctr1; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsAddEntryRequest3_first_object(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = drsuapi_dissect_struct_DsReplicaObjectListItem(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryRequest3_first_object,0);
-
- return offset;
-}
-
-static int
-drsuapi_dissect_element_DsAddEntryRequest3_client_creds(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsExecuteKCCRequest_ctr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAddEntryRequest3_client_creds_, NDR_POINTER_UNIQUE, "Pointer to Client Creds (drsuapi_SecBufferDesc)",hf_drsuapi_drsuapi_DsAddEntryRequest3_client_creds);
+ offset = drsuapi_dissect_struct_DsExecuteKCC1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsExecuteKCCRequest_ctr1,0);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntryRequest3_client_creds_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = drsuapi_dissect_struct_SecBufferDesc(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryRequest3_client_creds,0);
-
- return offset;
-}
-
-int
-drsuapi_dissect_struct_DsAddEntryRequest3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_DsExecuteKCCRequest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
-
- ALIGN_TO_5_BYTES;
+ guint32 level;
old_offset = offset;
-
if (parent_tree) {
- item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsAddEntryRequest3);
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsExecuteKCCRequest, &item, "drsuapi_DsExecuteKCCRequest");
}
- offset = drsuapi_dissect_element_DsAddEntryRequest3_first_object(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsAddEntryRequest3_client_creds(tvb, offset, pinfo, tree, di, drep);
-
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
+ ALIGN_TO_4_BYTES;
+ switch(level) {
+ case 1:
+ offset = drsuapi_dissect_element_DsExecuteKCCRequest_ctr1(tvb, offset, pinfo, tree, di, drep);
+ break;
+ }
proto_item_set_len(item, offset-old_offset);
- if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_5_BYTES;
- }
-
return offset;
}
-
-/* IDL: [switch_type(uint32)] union { */
-/* IDL: [case(2)] [case(2)] drsuapi_DsAddEntryRequest2 req2; */
-/* IDL: [case(3)] [case(3)] drsuapi_DsAddEntryRequest3 req3; */
+/* IDL: enum { */
+/* IDL: DRSUAPI_DS_REPLICA_GET_INFO=1, */
+/* IDL: DRSUAPI_DS_REPLICA_GET_INFO2=2, */
/* IDL: } */
-static int
-drsuapi_dissect_element_DsAddEntryRequest_req2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+int
+drsuapi_dissect_enum_DsReplicaGetInfoLevel(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
{
- offset = drsuapi_dissect_struct_DsAddEntryRequest2(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryRequest_req2,0);
-
+ guint32 parameter=0;
+ if (param) {
+ parameter = *param;
+ }
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, ¶meter);
+ if (param) {
+ *param = parameter;
+ }
return offset;
}
-static int
-drsuapi_dissect_element_DsAddEntryRequest_req3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = drsuapi_dissect_struct_DsAddEntryRequest3(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryRequest_req3,0);
- return offset;
-}
+/* IDL: enum { */
+/* IDL: DRSUAPI_DS_REPLICA_INFO_NEIGHBORS=0, */
+/* IDL: DRSUAPI_DS_REPLICA_INFO_CURSORS=1, */
+/* IDL: DRSUAPI_DS_REPLICA_INFO_OBJ_METADATA=2, */
+/* IDL: DRSUAPI_DS_REPLICA_INFO_KCC_DSA_CONNECT_FAILURES=3, */
+/* IDL: DRSUAPI_DS_REPLICA_INFO_KCC_DSA_LINK_FAILURES=4, */
+/* IDL: DRSUAPI_DS_REPLICA_INFO_PENDING_OPS=5, */
+/* IDL: DRSUAPI_DS_REPLICA_INFO_ATTRIBUTE_VALUE_METADATA=6, */
+/* IDL: DRSUAPI_DS_REPLICA_INFO_CURSORS2=7, */
+/* IDL: DRSUAPI_DS_REPLICA_INFO_CURSORS3=8, */
+/* IDL: DRSUAPI_DS_REPLICA_INFO_OBJ_METADATA2=9, */
+/* IDL: DRSUAPI_DS_REPLICA_INFO_ATTRIBUTE_VALUE_METADATA2=10, */
+/* IDL: DRSUAPI_DS_REPLICA_INFO_REPSTO=-2, */
+/* IDL: DRSUAPI_DS_REPLICA_INFO_CLIENT_CONTEXTS=-4, */
+/* IDL: DRSUAPI_DS_REPLICA_INFO_UPTODATE_VECTOR_V1=-5, */
+/* IDL: DRSUAPI_DS_REPLICA_INFO_SERVER_OUTGOING_CALLS=-6, */
+/* IDL: } */
-static int
-drsuapi_dissect_DsAddEntryRequest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+int
+drsuapi_dissect_enum_DsReplicaInfoType(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
- guint32 level;
-
- old_offset = offset;
- if (parent_tree) {
- tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsAddEntryRequest, &item, "drsuapi_DsAddEntryRequest");
+ guint32 parameter=0;
+ if (param) {
+ parameter = *param;
}
-
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
- ALIGN_TO_5_BYTES;
-
- switch(level) {
- case 2:
- offset = drsuapi_dissect_element_DsAddEntryRequest_req2(tvb, offset, pinfo, tree, di, drep);
- break;
-
- case 3:
- offset = drsuapi_dissect_element_DsAddEntryRequest_req3(tvb, offset, pinfo, tree, di, drep);
- break;
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, ¶meter);
+ if (param) {
+ *param = parameter;
}
- proto_item_set_len(item, offset-old_offset);
-
-
return offset;
}
+
/* IDL: struct { */
-/* IDL: uint32 dsid; */
-/* IDL: WERROR extended_err; */
-/* IDL: uint32 extended_data; */
-/* IDL: uint16 problem; */
+/* IDL: drsuapi_DsReplicaInfoType info_type; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *object_dn; */
+/* IDL: GUID source_dsa_guid; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsAddEntryErrorInfoX_dsid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaGetInfoRequest1_info_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryErrorInfoX_dsid, 0);
+ offset = drsuapi_dissect_enum_DsReplicaInfoType(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaGetInfoRequest1_info_type, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntryErrorInfoX_extended_err(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaGetInfoRequest1_object_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryErrorInfoX_extended_err, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaGetInfoRequest1_object_dn_, NDR_POINTER_UNIQUE, "Pointer to Object Dn (uint16)",hf_drsuapi_drsuapi_DsReplicaGetInfoRequest1_object_dn);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntryErrorInfoX_extended_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaGetInfoRequest1_object_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryErrorInfoX_extended_data, 0);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaGetInfoRequest1_object_dn, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntryErrorInfoX_problem(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaGetInfoRequest1_source_dsa_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryErrorInfoX_problem, 0);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaGetInfoRequest1_source_dsa_guid, NULL);
return offset;
}
int
-drsuapi_dissect_struct_DsAddEntryErrorInfoX(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsReplicaGetInfoRequest1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_4_BYTES;
+ ALIGN_TO_5_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsAddEntryErrorInfoX);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaGetInfoRequest1);
}
- offset = drsuapi_dissect_element_DsAddEntryErrorInfoX_dsid(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsAddEntryErrorInfoX_extended_err(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaGetInfoRequest1_info_type(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsAddEntryErrorInfoX_extended_data(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaGetInfoRequest1_object_dn(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsAddEntryErrorInfoX_problem(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaGetInfoRequest1_source_dsa_guid(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_4_BYTES;
+ ALIGN_TO_5_BYTES;
}
return offset;
/* IDL: struct { */
-/* IDL: uint32 dsid; */
-/* IDL: WERROR extended_err; */
-/* IDL: uint32 extended_data; */
-/* IDL: uint16 problem; */
-/* IDL: drsuapi_DsAttributeId attid; */
-/* IDL: uint32 is_val_returned; */
-/* IDL: drsuapi_DsAttributeValue attr_val; */
+/* IDL: drsuapi_DsReplicaInfoType info_type; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *object_dn; */
+/* IDL: GUID source_dsa_guid; */
+/* IDL: uint32 flags; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *attribute_name; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *value_dn_str; */
+/* IDL: uint32 enumeration_context; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsAddEntry_AttrErr_V1_dsid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaGetInfoRequest2_info_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_AttrErr_V1_dsid, 0);
+ offset = drsuapi_dissect_enum_DsReplicaInfoType(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaGetInfoRequest2_info_type, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntry_AttrErr_V1_extended_err(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaGetInfoRequest2_object_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_AttrErr_V1_extended_err, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaGetInfoRequest2_object_dn_, NDR_POINTER_UNIQUE, "Pointer to Object Dn (uint16)",hf_drsuapi_drsuapi_DsReplicaGetInfoRequest2_object_dn);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntry_AttrErr_V1_extended_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaGetInfoRequest2_object_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_AttrErr_V1_extended_data, 0);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaGetInfoRequest2_object_dn, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntry_AttrErr_V1_problem(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaGetInfoRequest2_source_dsa_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_AttrErr_V1_problem, 0);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaGetInfoRequest2_source_dsa_guid, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntry_AttrErr_V1_attid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaGetInfoRequest2_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_enum_DsAttributeId(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_AttrErr_V1_attid, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaGetInfoRequest2_flags, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntry_AttrErr_V1_is_val_returned(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaGetInfoRequest2_attribute_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_AttrErr_V1_is_val_returned, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaGetInfoRequest2_attribute_name_, NDR_POINTER_UNIQUE, "Pointer to Attribute Name (uint16)",hf_drsuapi_drsuapi_DsReplicaGetInfoRequest2_attribute_name);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntry_AttrErr_V1_attr_val(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaGetInfoRequest2_attribute_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsAttributeValue(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntry_AttrErr_V1_attr_val,0);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaGetInfoRequest2_attribute_name, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaGetInfoRequest2_value_dn_str(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaGetInfoRequest2_value_dn_str_, NDR_POINTER_UNIQUE, "Pointer to Value Dn Str (uint16)",hf_drsuapi_drsuapi_DsReplicaGetInfoRequest2_value_dn_str);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaGetInfoRequest2_value_dn_str_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaGetInfoRequest2_value_dn_str, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaGetInfoRequest2_enumeration_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaGetInfoRequest2_enumeration_context, 0);
return offset;
}
int
-drsuapi_dissect_struct_DsAddEntry_AttrErr_V1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsReplicaGetInfoRequest2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsAddEntry_AttrErr_V1);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaGetInfoRequest2);
}
- offset = drsuapi_dissect_element_DsAddEntry_AttrErr_V1_dsid(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaGetInfoRequest2_info_type(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsAddEntry_AttrErr_V1_extended_err(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaGetInfoRequest2_object_dn(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsAddEntry_AttrErr_V1_extended_data(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaGetInfoRequest2_source_dsa_guid(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsAddEntry_AttrErr_V1_problem(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaGetInfoRequest2_flags(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsAddEntry_AttrErr_V1_attid(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaGetInfoRequest2_attribute_name(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsAddEntry_AttrErr_V1_is_val_returned(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaGetInfoRequest2_value_dn_str(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsAddEntry_AttrErr_V1_attr_val(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaGetInfoRequest2_enumeration_context(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
}
-/* IDL: struct { */
-/* IDL: [max_recursion(20000)] [unique(1)] drsuapi_DsAddEntry_AttrErrListItem_V1 *next; */
-/* IDL: drsuapi_DsAddEntry_AttrErr_V1 err_data; */
+/* IDL: [switch_type(drsuapi_DsReplicaGetInfoLevel)] union { */
+/* IDL: [case(DRSUAPI_DS_REPLICA_GET_INFO)] [case(DRSUAPI_DS_REPLICA_GET_INFO)] drsuapi_DsReplicaGetInfoRequest1 req1; */
+/* IDL: [case(DRSUAPI_DS_REPLICA_GET_INFO2)] [case(DRSUAPI_DS_REPLICA_GET_INFO2)] drsuapi_DsReplicaGetInfoRequest2 req2; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsAddEntry_AttrErrListItem_V1_next(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaGetInfoRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAddEntry_AttrErrListItem_V1_next_, NDR_POINTER_UNIQUE, "Pointer to Next (drsuapi_DsAddEntry_AttrErrListItem_V1)",hf_drsuapi_drsuapi_DsAddEntry_AttrErrListItem_V1_next);
+ offset = drsuapi_dissect_struct_DsReplicaGetInfoRequest1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaGetInfoRequest_req1,0);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntry_AttrErrListItem_V1_err_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaGetInfoRequest_req2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsAddEntry_AttrErr_V1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntry_AttrErrListItem_V1_err_data,0);
+ offset = drsuapi_dissect_struct_DsReplicaGetInfoRequest2(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaGetInfoRequest_req2,0);
return offset;
}
-int
-drsuapi_dissect_struct_DsAddEntry_AttrErrListItem_V1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+static int
+drsuapi_dissect_DsReplicaGetInfoRequest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
-
- ALIGN_TO_5_BYTES;
+ guint32 level;
old_offset = offset;
-
if (parent_tree) {
- item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsAddEntry_AttrErrListItem_V1);
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsReplicaGetInfoRequest, &item, "drsuapi_DsReplicaGetInfoRequest");
}
- offset = drsuapi_dissect_element_DsAddEntry_AttrErrListItem_V1_next(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsAddEntry_AttrErrListItem_V1_err_data(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
+ ALIGN_TO_5_BYTES;
+ switch(level) {
+ case DRSUAPI_DS_REPLICA_GET_INFO:
+ offset = drsuapi_dissect_element_DsReplicaGetInfoRequest_req1(tvb, offset, pinfo, tree, di, drep);
+ break;
+ case DRSUAPI_DS_REPLICA_GET_INFO2:
+ offset = drsuapi_dissect_element_DsReplicaGetInfoRequest_req2(tvb, offset, pinfo, tree, di, drep);
+ break;
+ }
proto_item_set_len(item, offset-old_offset);
- if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_5_BYTES;
- }
-
return offset;
}
-
/* IDL: struct { */
-/* IDL: [unique(1)] drsuapi_DsReplicaObjectIdentifier *id; */
-/* IDL: uint32 count; */
-/* IDL: drsuapi_DsAddEntry_AttrErrListItem_V1 first; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *naming_context_dn; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *source_dsa_obj_dn; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *source_dsa_address; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *transport_obj_dn; */
+/* IDL: drsuapi_DrsOptions replica_flags; */
+/* IDL: uint32 reserved; */
+/* IDL: GUID naming_context_obj_guid; */
+/* IDL: GUID source_dsa_obj_guid; */
+/* IDL: GUID source_dsa_invocation_id; */
+/* IDL: GUID transport_obj_guid; */
+/* IDL: hyper tmp_highest_usn; */
+/* IDL: hyper highest_usn; */
+/* IDL: NTTIME last_success; */
+/* IDL: NTTIME last_attempt; */
+/* IDL: WERROR result_last_attempt; */
+/* IDL: uint32 consecutive_sync_failures; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsAddEntryErrorInfo_Attr_V1_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaNeighbour_naming_context_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAddEntryErrorInfo_Attr_V1_id_, NDR_POINTER_UNIQUE, "Pointer to Id (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsAddEntryErrorInfo_Attr_V1_id);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaNeighbour_naming_context_dn_, NDR_POINTER_UNIQUE, "Pointer to Naming Context Dn (uint16)",hf_drsuapi_drsuapi_DsReplicaNeighbour_naming_context_dn);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntryErrorInfo_Attr_V1_id_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaNeighbour_naming_context_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryErrorInfo_Attr_V1_id,0);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaNeighbour_naming_context_dn, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntryErrorInfo_Attr_V1_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaNeighbour_source_dsa_obj_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryErrorInfo_Attr_V1_count, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaNeighbour_source_dsa_obj_dn_, NDR_POINTER_UNIQUE, "Pointer to Source Dsa Obj Dn (uint16)",hf_drsuapi_drsuapi_DsReplicaNeighbour_source_dsa_obj_dn);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntryErrorInfo_Attr_V1_first(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaNeighbour_source_dsa_obj_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsAddEntry_AttrErrListItem_V1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryErrorInfo_Attr_V1_first,0);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaNeighbour_source_dsa_obj_dn, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
-int
-drsuapi_dissect_struct_DsAddEntryErrorInfo_Attr_V1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+static int
+drsuapi_dissect_element_DsReplicaNeighbour_source_dsa_address(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
-
- ALIGN_TO_5_BYTES;
-
- old_offset = offset;
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaNeighbour_source_dsa_address_, NDR_POINTER_UNIQUE, "Pointer to Source Dsa Address (uint16)",hf_drsuapi_drsuapi_DsReplicaNeighbour_source_dsa_address);
- if (parent_tree) {
- item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsAddEntryErrorInfo_Attr_V1);
- }
+ return offset;
+}
- offset = drsuapi_dissect_element_DsAddEntryErrorInfo_Attr_V1_id(tvb, offset, pinfo, tree, di, drep);
+static int
+drsuapi_dissect_element_DsReplicaNeighbour_source_dsa_address_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ char *data;
- offset = drsuapi_dissect_element_DsAddEntryErrorInfo_Attr_V1_count(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaNeighbour_source_dsa_address, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
- offset = drsuapi_dissect_element_DsAddEntryErrorInfo_Attr_V1_first(tvb, offset, pinfo, tree, di, drep);
+ return offset;
+}
+static int
+drsuapi_dissect_element_DsReplicaNeighbour_transport_obj_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaNeighbour_transport_obj_dn_, NDR_POINTER_UNIQUE, "Pointer to Transport Obj Dn (uint16)",hf_drsuapi_drsuapi_DsReplicaNeighbour_transport_obj_dn);
- proto_item_set_len(item, offset-old_offset);
+ return offset;
+}
+static int
+drsuapi_dissect_element_DsReplicaNeighbour_transport_obj_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ char *data;
- if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_5_BYTES;
- }
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaNeighbour_transport_obj_dn, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
-
-/* IDL: struct { */
-/* IDL: uint32 dsid; */
-/* IDL: WERROR extended_err; */
-/* IDL: uint32 extended_data; */
-/* IDL: uint16 problem; */
-/* IDL: [unique(1)] drsuapi_DsReplicaObjectIdentifier *id_matched; */
-/* IDL: } */
-
static int
-drsuapi_dissect_element_DsAddEntryErrorInfo_Name_V1_dsid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaNeighbour_replica_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryErrorInfo_Name_V1_dsid, 0);
+ offset = drsuapi_dissect_bitmap_DrsOptions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaNeighbour_replica_flags, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntryErrorInfo_Name_V1_extended_err(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaNeighbour_reserved(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryErrorInfo_Name_V1_extended_err, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaNeighbour_reserved, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntryErrorInfo_Name_V1_extended_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaNeighbour_naming_context_obj_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryErrorInfo_Name_V1_extended_data, 0);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaNeighbour_naming_context_obj_guid, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntryErrorInfo_Name_V1_problem(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaNeighbour_source_dsa_obj_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryErrorInfo_Name_V1_problem, 0);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaNeighbour_source_dsa_obj_guid, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntryErrorInfo_Name_V1_id_matched(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaNeighbour_source_dsa_invocation_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAddEntryErrorInfo_Name_V1_id_matched_, NDR_POINTER_UNIQUE, "Pointer to Id Matched (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsAddEntryErrorInfo_Name_V1_id_matched);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaNeighbour_source_dsa_invocation_id, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntryErrorInfo_Name_V1_id_matched_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaNeighbour_transport_obj_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryErrorInfo_Name_V1_id_matched,0);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaNeighbour_transport_obj_guid, NULL);
return offset;
}
-int
-drsuapi_dissect_struct_DsAddEntryErrorInfo_Name_V1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+static int
+drsuapi_dissect_element_DsReplicaNeighbour_tmp_highest_usn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
-
- ALIGN_TO_5_BYTES;
-
- old_offset = offset;
-
- if (parent_tree) {
- item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsAddEntryErrorInfo_Name_V1);
- }
-
- offset = drsuapi_dissect_element_DsAddEntryErrorInfo_Name_V1_dsid(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsAddEntryErrorInfo_Name_V1_extended_err(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsAddEntryErrorInfo_Name_V1_extended_data(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsAddEntryErrorInfo_Name_V1_problem(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsAddEntryErrorInfo_Name_V1_id_matched(tvb, offset, pinfo, tree, di, drep);
-
-
- proto_item_set_len(item, offset-old_offset);
+ offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaNeighbour_tmp_highest_usn, NULL);
+ return offset;
+}
- if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_5_BYTES;
- }
+static int
+drsuapi_dissect_element_DsReplicaNeighbour_highest_usn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaNeighbour_highest_usn, NULL);
return offset;
}
+static int
+drsuapi_dissect_element_DsReplicaNeighbour_last_success(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaNeighbour_last_success);
-/* IDL: struct { */
-/* IDL: [value(83)] uint8 name_res; */
-/* IDL: [value(0)] uint8 unused_pad; */
-/* IDL: [value(0)] uint16 next_rdn; */
-/* IDL: } */
+ return offset;
+}
static int
-drsuapi_dissect_element_NameResOp_V1_name_res(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaNeighbour_last_attempt(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_NameResOp_V1_name_res, 0);
+ offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaNeighbour_last_attempt);
return offset;
}
static int
-drsuapi_dissect_element_NameResOp_V1_unused_pad(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaNeighbour_result_last_attempt(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_NameResOp_V1_unused_pad, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaNeighbour_result_last_attempt, 0);
return offset;
}
static int
-drsuapi_dissect_element_NameResOp_V1_next_rdn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaNeighbour_consecutive_sync_failures(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_NameResOp_V1_next_rdn, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaNeighbour_consecutive_sync_failures, 0);
return offset;
}
int
-drsuapi_dissect_struct_NameResOp_V1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsReplicaNeighbour(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_2_BYTES;
+ ALIGN_TO_8_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_NameResOp_V1);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaNeighbour);
}
- offset = drsuapi_dissect_element_NameResOp_V1_name_res(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaNeighbour_naming_context_dn(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_NameResOp_V1_unused_pad(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaNeighbour_source_dsa_obj_dn(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_NameResOp_V1_next_rdn(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaNeighbour_source_dsa_address(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaNeighbour_transport_obj_dn(tvb, offset, pinfo, tree, di, drep);
- proto_item_set_len(item, offset-old_offset);
+ offset = drsuapi_dissect_element_DsReplicaNeighbour_replica_flags(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaNeighbour_reserved(tvb, offset, pinfo, tree, di, drep);
- if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_2_BYTES;
- }
+ offset = drsuapi_dissect_element_DsReplicaNeighbour_naming_context_obj_guid(tvb, offset, pinfo, tree, di, drep);
- return offset;
-}
+ offset = drsuapi_dissect_element_DsReplicaNeighbour_source_dsa_obj_guid(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaNeighbour_source_dsa_invocation_id(tvb, offset, pinfo, tree, di, drep);
-/* IDL: enum { */
-/* IDL: DRSUAPI_CH_REFTYPE_SUPERIOR=0x0000, */
-/* IDL: DRSUAPI_CH_REFTYPE_SUBORDINATE=0x0001, */
-/* IDL: DRSUAPI_CH_REFTYPE_NSSR=0x0002, */
-/* IDL: DRSUAPI_CH_REFTYPE_CROSS=0x0003, */
-/* IDL: } */
+ offset = drsuapi_dissect_element_DsReplicaNeighbour_transport_obj_guid(tvb, offset, pinfo, tree, di, drep);
-int
-drsuapi_dissect_enum_DsAddEntry_RefType(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint16 *param _U_)
-{
- guint16 parameter=0;
- if (param) {
- parameter = *param;
- }
- offset = dissect_ndr_uint16(tvb, offset, pinfo, tree, di, drep, hf_index, ¶meter);
- if (param) {
- *param = parameter;
- }
- return offset;
-}
+ offset = drsuapi_dissect_element_DsReplicaNeighbour_tmp_highest_usn(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaNeighbour_highest_usn(tvb, offset, pinfo, tree, di, drep);
-/* IDL: enum { */
-/* IDL: DRSUAPI_SE_CHOICE_BASE_ONLY=0x00, */
-/* IDL: DRSUAPI_SE_CHOICE_IMMED_CHLDRN=0x01, */
-/* IDL: DRSUAPI_SE_CHOICE_WHOLE_SUBTREE=0x02, */
-/* IDL: } */
+ offset = drsuapi_dissect_element_DsReplicaNeighbour_last_success(tvb, offset, pinfo, tree, di, drep);
-int
-drsuapi_dissect_enum_DsAddEntry_ChoiceType(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint8 *param _U_)
-{
- guint8 parameter=0;
- if (param) {
- parameter = *param;
- }
- offset = dissect_ndr_uint8(tvb, offset, pinfo, tree, di, drep, hf_index, ¶meter);
- if (param) {
- *param = parameter;
+ offset = drsuapi_dissect_element_DsReplicaNeighbour_last_attempt(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaNeighbour_result_last_attempt(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaNeighbour_consecutive_sync_failures(tvb, offset, pinfo, tree, di, drep);
+
+
+ proto_item_set_len(item, offset-old_offset);
+
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_8_BYTES;
}
+
return offset;
}
/* IDL: struct { */
-/* IDL: [max_recursion(1024)] [unique(1)] drsuapi_DsaAddressListItem_V1 *next; */
-/* IDL: [unique(1)] lsa_String *address; */
+/* IDL: uint32 count; */
+/* IDL: uint32 reserved; */
+/* IDL: [size_is(count)] drsuapi_DsReplicaNeighbour array[*]; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsaAddressListItem_V1_next(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaNeighbourCtr_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsaAddressListItem_V1_next_, NDR_POINTER_UNIQUE, "Pointer to Next (drsuapi_DsaAddressListItem_V1)",hf_drsuapi_drsuapi_DsaAddressListItem_V1_next);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaNeighbourCtr_count, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaNeighbourCtr_reserved(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaNeighbourCtr_reserved, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsaAddressListItem_V1_address(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaNeighbourCtr_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsaAddressListItem_V1_address_, NDR_POINTER_UNIQUE, "Pointer to Address (lsa_String)",hf_drsuapi_drsuapi_DsaAddressListItem_V1_address);
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaNeighbourCtr_array_);
return offset;
}
static int
-drsuapi_dissect_element_DsaAddressListItem_V1_address_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaNeighbourCtr_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_lsa_String(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsaAddressListItem_V1_address,0);
+ offset = drsuapi_dissect_struct_DsReplicaNeighbour(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaNeighbourCtr_array,0);
return offset;
}
int
-drsuapi_dissect_struct_DsaAddressListItem_V1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsReplicaNeighbourCtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_5_BYTES;
+ ALIGN_TO_8_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsaAddressListItem_V1);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaNeighbourCtr);
}
- offset = drsuapi_dissect_element_DsaAddressListItem_V1_next(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaNeighbourCtr_count(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsaAddressListItem_V1_address(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaNeighbourCtr_reserved(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaNeighbourCtr_array(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_5_BYTES;
+ ALIGN_TO_8_BYTES;
}
return offset;
/* IDL: struct { */
-/* IDL: [unique(1)] drsuapi_DsReplicaObjectIdentifier *id_target; */
-/* IDL: drsuapi_NameResOp_V1 op_state; */
-/* IDL: [value(0)] uint16 rdn_alias; */
-/* IDL: [value(0)] uint16 rdn_internal; */
-/* IDL: drsuapi_DsAddEntry_RefType ref_type; */
-/* IDL: uint16 addr_list_count; */
-/* IDL: [unique(1)] drsuapi_DsaAddressListItem_V1 *addr_list; */
-/* IDL: [max_recursion(20000)] [unique(1)] drsuapi_DsAddEntry_RefErrListItem_V1 *next; */
-/* IDL: uint32 is_choice_set; */
-/* IDL: drsuapi_DsAddEntry_ChoiceType choice; */
+/* IDL: uint32 count; */
+/* IDL: uint32 reserved; */
+/* IDL: [size_is(count)] drsuapi_DsReplicaCursor array[*]; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_id_target(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaCursorCtr_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_id_target_, NDR_POINTER_UNIQUE, "Pointer to Id Target (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsAddEntry_RefErrListItem_V1_id_target);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursorCtr_count, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_id_target_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaCursorCtr_reserved(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntry_RefErrListItem_V1_id_target,0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursorCtr_reserved, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_op_state(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaCursorCtr_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_NameResOp_V1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntry_RefErrListItem_V1_op_state,0);
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaCursorCtr_array_);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_rdn_alias(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaCursorCtr_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_RefErrListItem_V1_rdn_alias, 0);
+ offset = drsuapi_dissect_struct_DsReplicaCursor(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaCursorCtr_array,0);
return offset;
}
-static int
-drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_rdn_internal(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+int
+drsuapi_dissect_struct_DsReplicaCursorCtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_RefErrListItem_V1_rdn_internal, 0);
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+
+ ALIGN_TO_8_BYTES;
+
+ old_offset = offset;
+
+ if (parent_tree) {
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaCursorCtr);
+ }
+
+ offset = drsuapi_dissect_element_DsReplicaCursorCtr_count(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaCursorCtr_reserved(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaCursorCtr_array(tvb, offset, pinfo, tree, di, drep);
+
+
+ proto_item_set_len(item, offset-old_offset);
+
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_8_BYTES;
+ }
return offset;
}
+
+/* IDL: struct { */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *attribute_name; */
+/* IDL: uint32 version; */
+/* IDL: NTTIME originating_change_time; */
+/* IDL: GUID originating_invocation_id; */
+/* IDL: hyper originating_usn; */
+/* IDL: hyper local_usn; */
+/* IDL: } */
+
static int
-drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_ref_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaObjMetaData_attribute_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_enum_DsAddEntry_RefType(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_RefErrListItem_V1_ref_type, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaObjMetaData_attribute_name_, NDR_POINTER_UNIQUE, "Pointer to Attribute Name (uint16)",hf_drsuapi_drsuapi_DsReplicaObjMetaData_attribute_name);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_addr_list_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaObjMetaData_attribute_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_RefErrListItem_V1_addr_list_count, 0);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaObjMetaData_attribute_name, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_addr_list(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaObjMetaData_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_addr_list_, NDR_POINTER_UNIQUE, "Pointer to Addr List (drsuapi_DsaAddressListItem_V1)",hf_drsuapi_drsuapi_DsAddEntry_RefErrListItem_V1_addr_list);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjMetaData_version, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_addr_list_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaObjMetaData_originating_change_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsaAddressListItem_V1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntry_RefErrListItem_V1_addr_list,0);
+ offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjMetaData_originating_change_time);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_next(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaObjMetaData_originating_invocation_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_next_, NDR_POINTER_UNIQUE, "Pointer to Next (drsuapi_DsAddEntry_RefErrListItem_V1)",hf_drsuapi_drsuapi_DsAddEntry_RefErrListItem_V1_next);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjMetaData_originating_invocation_id, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_is_choice_set(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaObjMetaData_originating_usn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_RefErrListItem_V1_is_choice_set, 0);
+ offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjMetaData_originating_usn, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_choice(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaObjMetaData_local_usn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_enum_DsAddEntry_ChoiceType(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_RefErrListItem_V1_choice, 0);
+ offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjMetaData_local_usn, NULL);
return offset;
}
int
-drsuapi_dissect_struct_DsAddEntry_RefErrListItem_V1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsReplicaObjMetaData(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_5_BYTES;
+ ALIGN_TO_8_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsAddEntry_RefErrListItem_V1);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaObjMetaData);
}
- offset = drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_id_target(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_op_state(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_rdn_alias(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_rdn_internal(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_ref_type(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaObjMetaData_attribute_name(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_addr_list_count(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaObjMetaData_version(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_addr_list(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaObjMetaData_originating_change_time(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_next(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaObjMetaData_originating_invocation_id(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_is_choice_set(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaObjMetaData_originating_usn(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsAddEntry_RefErrListItem_V1_choice(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaObjMetaData_local_usn(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_5_BYTES;
+ ALIGN_TO_8_BYTES;
}
return offset;
/* IDL: struct { */
-/* IDL: uint32 dsid; */
-/* IDL: WERROR extended_err; */
-/* IDL: uint32 extended_data; */
-/* IDL: drsuapi_DsAddEntry_RefErrListItem_V1 refer; */
+/* IDL: uint32 count; */
+/* IDL: uint32 reserved; */
+/* IDL: [size_is(count)] drsuapi_DsReplicaObjMetaData array[*]; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsAddEntryErrorInfo_Referr_V1_dsid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaObjMetaDataCtr_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryErrorInfo_Referr_V1_dsid, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjMetaDataCtr_count, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntryErrorInfo_Referr_V1_extended_err(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaObjMetaDataCtr_reserved(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryErrorInfo_Referr_V1_extended_err, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjMetaDataCtr_reserved, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntryErrorInfo_Referr_V1_extended_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaObjMetaDataCtr_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryErrorInfo_Referr_V1_extended_data, 0);
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaObjMetaDataCtr_array_);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntryErrorInfo_Referr_V1_refer(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaObjMetaDataCtr_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsAddEntry_RefErrListItem_V1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryErrorInfo_Referr_V1_refer,0);
+ offset = drsuapi_dissect_struct_DsReplicaObjMetaData(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaObjMetaDataCtr_array,0);
return offset;
}
int
-drsuapi_dissect_struct_DsAddEntryErrorInfo_Referr_V1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsReplicaObjMetaDataCtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_5_BYTES;
+ ALIGN_TO_8_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsAddEntryErrorInfo_Referr_V1);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaObjMetaDataCtr);
}
- offset = drsuapi_dissect_element_DsAddEntryErrorInfo_Referr_V1_dsid(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsAddEntryErrorInfo_Referr_V1_extended_err(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaObjMetaDataCtr_count(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsAddEntryErrorInfo_Referr_V1_extended_data(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaObjMetaDataCtr_reserved(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsAddEntryErrorInfo_Referr_V1_refer(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaObjMetaDataCtr_array(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_5_BYTES;
+ ALIGN_TO_8_BYTES;
}
return offset;
}
-/* IDL: [switch_type(uint32)] union { */
-/* IDL: [case(1)] [case(1)] drsuapi_DsAddEntryErrorInfo_Attr_V1 attr_err; */
-/* IDL: [case(2)] [case(2)] drsuapi_DsAddEntryErrorInfo_Name_V1 name_err; */
-/* IDL: [case(3)] [case(3)] drsuapi_DsAddEntryErrorInfo_Referr_V1 referral_err; */
-/* IDL: [case(4)] [case(4)] drsuapi_DsAddEntryErrorInfoX security_err; */
-/* IDL: [case(5)] [case(5)] drsuapi_DsAddEntryErrorInfoX service_err; */
-/* IDL: [case(6)] [case(6)] drsuapi_DsAddEntryErrorInfoX update_err; */
-/* IDL: [case(7)] [case(7)] drsuapi_DsAddEntryErrorInfoX system_err; */
+/* IDL: struct { */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *dsa_obj_dn; */
+/* IDL: GUID dsa_obj_guid; */
+/* IDL: NTTIME first_failure; */
+/* IDL: uint32 num_failures; */
+/* IDL: WERROR last_result; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsAddEntryErrorInfo_attr_err(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaKccDsaFailure_dsa_obj_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsAddEntryErrorInfo_Attr_V1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryErrorInfo_attr_err,0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaKccDsaFailure_dsa_obj_dn_, NDR_POINTER_UNIQUE, "Pointer to Dsa Obj Dn (uint16)",hf_drsuapi_drsuapi_DsReplicaKccDsaFailure_dsa_obj_dn);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntryErrorInfo_name_err(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaKccDsaFailure_dsa_obj_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsAddEntryErrorInfo_Name_V1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryErrorInfo_name_err,0);
-
- return offset;
-}
+ char *data;
-static int
-drsuapi_dissect_element_DsAddEntryErrorInfo_referral_err(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = drsuapi_dissect_struct_DsAddEntryErrorInfo_Referr_V1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryErrorInfo_referral_err,0);
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaKccDsaFailure_dsa_obj_dn, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntryErrorInfo_security_err(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaKccDsaFailure_dsa_obj_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsAddEntryErrorInfoX(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryErrorInfo_security_err,0);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaKccDsaFailure_dsa_obj_guid, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntryErrorInfo_service_err(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaKccDsaFailure_first_failure(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsAddEntryErrorInfoX(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryErrorInfo_service_err,0);
+ offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaKccDsaFailure_first_failure);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntryErrorInfo_update_err(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaKccDsaFailure_num_failures(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsAddEntryErrorInfoX(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryErrorInfo_update_err,0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaKccDsaFailure_num_failures, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntryErrorInfo_system_err(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaKccDsaFailure_last_result(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsAddEntryErrorInfoX(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryErrorInfo_system_err,0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaKccDsaFailure_last_result, 0);
return offset;
}
-static int
-drsuapi_dissect_DsAddEntryErrorInfo(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+int
+drsuapi_dissect_struct_DsReplicaKccDsaFailure(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- guint32 level;
+
+ ALIGN_TO_5_BYTES;
old_offset = offset;
+
if (parent_tree) {
- tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsAddEntryErrorInfo, &item, "drsuapi_DsAddEntryErrorInfo");
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaKccDsaFailure);
}
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
- ALIGN_TO_5_BYTES;
-
- switch(level) {
- case 1:
- offset = drsuapi_dissect_element_DsAddEntryErrorInfo_attr_err(tvb, offset, pinfo, tree, di, drep);
- break;
+ offset = drsuapi_dissect_element_DsReplicaKccDsaFailure_dsa_obj_dn(tvb, offset, pinfo, tree, di, drep);
- case 2:
- offset = drsuapi_dissect_element_DsAddEntryErrorInfo_name_err(tvb, offset, pinfo, tree, di, drep);
- break;
+ offset = drsuapi_dissect_element_DsReplicaKccDsaFailure_dsa_obj_guid(tvb, offset, pinfo, tree, di, drep);
- case 3:
- offset = drsuapi_dissect_element_DsAddEntryErrorInfo_referral_err(tvb, offset, pinfo, tree, di, drep);
- break;
+ offset = drsuapi_dissect_element_DsReplicaKccDsaFailure_first_failure(tvb, offset, pinfo, tree, di, drep);
- case 4:
- offset = drsuapi_dissect_element_DsAddEntryErrorInfo_security_err(tvb, offset, pinfo, tree, di, drep);
- break;
+ offset = drsuapi_dissect_element_DsReplicaKccDsaFailure_num_failures(tvb, offset, pinfo, tree, di, drep);
- case 5:
- offset = drsuapi_dissect_element_DsAddEntryErrorInfo_service_err(tvb, offset, pinfo, tree, di, drep);
- break;
+ offset = drsuapi_dissect_element_DsReplicaKccDsaFailure_last_result(tvb, offset, pinfo, tree, di, drep);
- case 6:
- offset = drsuapi_dissect_element_DsAddEntryErrorInfo_update_err(tvb, offset, pinfo, tree, di, drep);
- break;
- case 7:
- offset = drsuapi_dissect_element_DsAddEntryErrorInfo_system_err(tvb, offset, pinfo, tree, di, drep);
- break;
- }
proto_item_set_len(item, offset-old_offset);
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_5_BYTES;
+ }
+
return offset;
}
+
/* IDL: struct { */
-/* IDL: WERROR status; */
-/* IDL: drsuapi_DsAddEntry_DirErr dir_err; */
-/* IDL: [switch_is(dir_err)] [unique(1)] drsuapi_DsAddEntryErrorInfo *info; */
+/* IDL: uint32 count; */
+/* IDL: uint32 reserved; */
+/* IDL: [size_is(count)] drsuapi_DsReplicaKccDsaFailure array[*]; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsAddEntry_ErrData_V1_status(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaKccDsaFailuresCtr_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_ErrData_V1_status, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaKccDsaFailuresCtr_count, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntry_ErrData_V1_dir_err(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, guint32 *dir_err)
+drsuapi_dissect_element_DsReplicaKccDsaFailuresCtr_reserved(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_enum_DsAddEntry_DirErr(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_ErrData_V1_dir_err, dir_err);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaKccDsaFailuresCtr_reserved, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntry_ErrData_V1_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, guint32 *dir_err)
+drsuapi_dissect_element_DsReplicaKccDsaFailuresCtr_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAddEntry_ErrData_V1_info_, NDR_POINTER_UNIQUE, "Pointer to Info (drsuapi_DsAddEntryErrorInfo)",hf_drsuapi_drsuapi_DsAddEntry_ErrData_V1_info);
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaKccDsaFailuresCtr_array_);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntry_ErrData_V1_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, guint32 *dir_err)
+drsuapi_dissect_element_DsReplicaKccDsaFailuresCtr_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_DsAddEntryErrorInfo(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_ErrData_V1_info, *dir_err);
+ offset = drsuapi_dissect_struct_DsReplicaKccDsaFailure(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaKccDsaFailuresCtr_array,0);
return offset;
}
int
-drsuapi_dissect_struct_DsAddEntry_ErrData_V1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsReplicaKccDsaFailuresCtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- guint32 dir_err = 0;
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsAddEntry_ErrData_V1);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaKccDsaFailuresCtr);
}
- offset = drsuapi_dissect_element_DsAddEntry_ErrData_V1_status(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaKccDsaFailuresCtr_count(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsAddEntry_ErrData_V1_dir_err(tvb, offset, pinfo, tree, di, drep, &dir_err);
+ offset = drsuapi_dissect_element_DsReplicaKccDsaFailuresCtr_reserved(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsAddEntry_ErrData_V1_info(tvb, offset, pinfo, tree, di, drep, &dir_err);
+ offset = drsuapi_dissect_element_DsReplicaKccDsaFailuresCtr_array(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
}
-/* IDL: [switch_type(uint32)] union { */
-/* IDL: [case(1)] [case(1)] drsuapi_DsAddEntry_ErrData_V1 v1; */
+/* IDL: enum { */
+/* IDL: DRSUAPI_DS_REPLICA_OP_TYPE_SYNC=0, */
+/* IDL: DRSUAPI_DS_REPLICA_OP_TYPE_ADD=1, */
+/* IDL: DRSUAPI_DS_REPLICA_OP_TYPE_DELETE=2, */
+/* IDL: DRSUAPI_DS_REPLICA_OP_TYPE_MODIFY=3, */
+/* IDL: DRSUAPI_DS_REPLICA_OP_TYPE_UPDATE_REFS=4, */
/* IDL: } */
-static int
-drsuapi_dissect_element_DsAddEntry_ErrData_v1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = drsuapi_dissect_struct_DsAddEntry_ErrData_V1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntry_ErrData_v1,0);
-
- return offset;
-}
-
-static int
-drsuapi_dissect_DsAddEntry_ErrData(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+int
+drsuapi_dissect_enum_DsReplicaOpType(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint1632 *param _U_)
{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
- guint32 level;
-
- old_offset = offset;
- if (parent_tree) {
- tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsAddEntry_ErrData, &item, "drsuapi_DsAddEntry_ErrData");
+ guint1632 parameter=0;
+ if (param) {
+ parameter = *param;
}
-
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
- ALIGN_TO_5_BYTES;
-
- switch(level) {
- case 1:
- offset = drsuapi_dissect_element_DsAddEntry_ErrData_v1(tvb, offset, pinfo, tree, di, drep);
- break;
+ offset = dissect_ndr_uint1632(tvb, offset, pinfo, tree, di, drep, hf_index, ¶meter);
+ if (param) {
+ *param = parameter;
}
- proto_item_set_len(item, offset-old_offset);
-
-
return offset;
}
+
/* IDL: struct { */
-/* IDL: GUID guid; */
-/* IDL: dom_sid28 sid; */
+/* IDL: NTTIME operation_start; */
+/* IDL: uint32 serial_num; */
+/* IDL: uint32 priority; */
+/* IDL: drsuapi_DsReplicaOpType operation_type; */
+/* IDL: drsuapi_DrsOptions options; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *nc_dn; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *remote_dsa_obj_dn; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *remote_dsa_address; */
+/* IDL: GUID nc_obj_guid; */
+/* IDL: GUID remote_dsa_obj_guid; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaObjectIdentifier2_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaOp_operation_start(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjectIdentifier2_guid, NULL);
+ offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaOp_operation_start);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObjectIdentifier2_sid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaOp_serial_num(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
-
- di->hf_index = hf_drsuapi_drsuapi_DsReplicaObjectIdentifier2_sid;
-
- offset = dissect_ndr_nt_SID28(tvb, offset, pinfo, tree, di, drep);
-
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaOp_serial_num, 0);
return offset;
}
-int
-drsuapi_dissect_struct_DsReplicaObjectIdentifier2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+static int
+drsuapi_dissect_element_DsReplicaOp_priority(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaOp_priority, 0);
- ALIGN_TO_4_BYTES;
+ return offset;
+}
- old_offset = offset;
+static int
+drsuapi_dissect_element_DsReplicaOp_operation_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_enum_DsReplicaOpType(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaOp_operation_type, 0);
- if (parent_tree) {
- item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaObjectIdentifier2);
- }
+ return offset;
+}
- offset = drsuapi_dissect_element_DsReplicaObjectIdentifier2_guid(tvb, offset, pinfo, tree, di, drep);
+static int
+drsuapi_dissect_element_DsReplicaOp_options(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_bitmap_DrsOptions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaOp_options, 0);
- offset = drsuapi_dissect_element_DsReplicaObjectIdentifier2_sid(tvb, offset, pinfo, tree, di, drep);
+ return offset;
+}
+static int
+drsuapi_dissect_element_DsReplicaOp_nc_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaOp_nc_dn_, NDR_POINTER_UNIQUE, "Pointer to Nc Dn (uint16)",hf_drsuapi_drsuapi_DsReplicaOp_nc_dn);
- proto_item_set_len(item, offset-old_offset);
+ return offset;
+}
+static int
+drsuapi_dissect_element_DsReplicaOp_nc_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ char *data;
- if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_4_BYTES;
- }
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaOp_nc_dn, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
+static int
+drsuapi_dissect_element_DsReplicaOp_remote_dsa_obj_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaOp_remote_dsa_obj_dn_, NDR_POINTER_UNIQUE, "Pointer to Remote Dsa Obj Dn (uint16)",hf_drsuapi_drsuapi_DsReplicaOp_remote_dsa_obj_dn);
-/* IDL: struct { */
-/* IDL: [unique(1)] drsuapi_DsReplicaObjectIdentifier *id; */
-/* IDL: drsuapi_DsAddEntry_DirErr dir_err; */
-/* IDL: uint32 dsid; */
-/* IDL: WERROR extended_err; */
-/* IDL: uint32 extended_data; */
-/* IDL: uint16 problem; */
-/* IDL: [range(0,10000)] uint32 count; */
-/* IDL: [size_is(count)] [unique(1)] drsuapi_DsReplicaObjectIdentifier2 *objects; */
-/* IDL: } */
+ return offset;
+}
static int
-drsuapi_dissect_element_DsAddEntryCtr2_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaOp_remote_dsa_obj_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAddEntryCtr2_id_, NDR_POINTER_UNIQUE, "Pointer to Id (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsAddEntryCtr2_id);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaOp_remote_dsa_obj_dn, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntryCtr2_id_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaOp_remote_dsa_address(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryCtr2_id,0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaOp_remote_dsa_address_, NDR_POINTER_UNIQUE, "Pointer to Remote Dsa Address (uint16)",hf_drsuapi_drsuapi_DsReplicaOp_remote_dsa_address);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntryCtr2_dir_err(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaOp_remote_dsa_address_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_enum_DsAddEntry_DirErr(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryCtr2_dir_err, 0);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaOp_remote_dsa_address, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntryCtr2_dsid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaOp_nc_obj_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryCtr2_dsid, 0);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaOp_nc_obj_guid, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntryCtr2_extended_err(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaOp_remote_dsa_obj_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryCtr2_extended_err, 0);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaOp_remote_dsa_obj_guid, NULL);
return offset;
}
-static int
-drsuapi_dissect_element_DsAddEntryCtr2_extended_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+int
+drsuapi_dissect_struct_DsReplicaOp(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryCtr2_extended_data, 0);
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+
+ ALIGN_TO_5_BYTES;
+
+ old_offset = offset;
+
+ if (parent_tree) {
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaOp);
+ }
+
+ offset = drsuapi_dissect_element_DsReplicaOp_operation_start(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaOp_serial_num(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaOp_priority(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaOp_operation_type(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaOp_options(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaOp_nc_dn(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaOp_remote_dsa_obj_dn(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaOp_remote_dsa_address(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaOp_nc_obj_guid(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaOp_remote_dsa_obj_guid(tvb, offset, pinfo, tree, di, drep);
+
+
+ proto_item_set_len(item, offset-old_offset);
- return offset;
-}
-static int
-drsuapi_dissect_element_DsAddEntryCtr2_problem(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryCtr2_problem, 0);
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_5_BYTES;
+ }
return offset;
}
+
+/* IDL: struct { */
+/* IDL: NTTIME time; */
+/* IDL: uint32 count; */
+/* IDL: [size_is(count)] drsuapi_DsReplicaOp array[*]; */
+/* IDL: } */
+
static int
-drsuapi_dissect_element_DsAddEntryCtr2_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaOpCtr_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryCtr2_count, 0);
+ offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaOpCtr_time);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntryCtr2_objects(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaOpCtr_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAddEntryCtr2_objects_, NDR_POINTER_UNIQUE, "Pointer to Objects (drsuapi_DsReplicaObjectIdentifier2)",hf_drsuapi_drsuapi_DsAddEntryCtr2_objects);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaOpCtr_count, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntryCtr2_objects_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaOpCtr_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAddEntryCtr2_objects__);
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaOpCtr_array_);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntryCtr2_objects__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaOpCtr_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier2(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryCtr2_objects,0);
+ offset = drsuapi_dissect_struct_DsReplicaOp(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaOpCtr_array,0);
return offset;
}
int
-drsuapi_dissect_struct_DsAddEntryCtr2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsReplicaOpCtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsAddEntryCtr2);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaOpCtr);
}
- offset = drsuapi_dissect_element_DsAddEntryCtr2_id(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsAddEntryCtr2_dir_err(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsAddEntryCtr2_dsid(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsAddEntryCtr2_extended_err(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsAddEntryCtr2_extended_data(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsAddEntryCtr2_problem(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaOpCtr_time(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsAddEntryCtr2_count(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaOpCtr_count(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsAddEntryCtr2_objects(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaOpCtr_array(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
/* IDL: struct { */
-/* IDL: [unique(1)] drsuapi_DsReplicaObjectIdentifier *id; */
-/* IDL: uint32 err_ver; */
-/* IDL: [switch_is(err_ver)] [unique(1)] drsuapi_DsAddEntry_ErrData *err_data; */
-/* IDL: [range(0,10000)] uint32 count; */
-/* IDL: [size_is(count)] [unique(1)] drsuapi_DsReplicaObjectIdentifier2 *objects; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *attribute_name; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *object_dn; */
+/* IDL: [value(ndr_size_DATA_BLOB(0,binary,0))] uint32 __ndr_size_binary; */
+/* IDL: [unique(1)] DATA_BLOB *binary; */
+/* IDL: NTTIME deleted; */
+/* IDL: NTTIME created; */
+/* IDL: uint32 version; */
+/* IDL: NTTIME originating_change_time; */
+/* IDL: GUID originating_invocation_id; */
+/* IDL: hyper originating_usn; */
+/* IDL: hyper local_usn; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsAddEntryCtr3_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAttrValMetaData_attribute_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAddEntryCtr3_id_, NDR_POINTER_UNIQUE, "Pointer to Id (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_DsAddEntryCtr3_id);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAttrValMetaData_attribute_name_, NDR_POINTER_UNIQUE, "Pointer to Attribute Name (uint16)",hf_drsuapi_drsuapi_DsReplicaAttrValMetaData_attribute_name);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntryCtr3_id_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAttrValMetaData_attribute_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryCtr3_id,0);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaAttrValMetaData_attribute_name, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntryCtr3_err_ver(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, guint32 *err_ver)
+drsuapi_dissect_element_DsReplicaAttrValMetaData_object_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryCtr3_err_ver, *err_ver);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAttrValMetaData_object_dn_, NDR_POINTER_UNIQUE, "Pointer to Object Dn (uint16)",hf_drsuapi_drsuapi_DsReplicaAttrValMetaData_object_dn);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntryCtr3_err_data(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, guint32 *err_ver)
+drsuapi_dissect_element_DsReplicaAttrValMetaData_object_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAddEntryCtr3_err_data_, NDR_POINTER_UNIQUE, "Pointer to Err Data (drsuapi_DsAddEntry_ErrData)",hf_drsuapi_drsuapi_DsAddEntryCtr3_err_data);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaAttrValMetaData_object_dn, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntryCtr3_err_data_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, guint32 *err_ver)
+drsuapi_dissect_element_DsReplicaAttrValMetaData___ndr_size_binary(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_DsAddEntry_ErrData(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryCtr3_err_data, *err_ver);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData___ndr_size_binary, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntryCtr3_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAttrValMetaData_binary(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntryCtr3_count, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAttrValMetaData_binary_, NDR_POINTER_UNIQUE, "Pointer to Binary (DATA_BLOB)",hf_drsuapi_drsuapi_DsReplicaAttrValMetaData_binary);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntryCtr3_objects(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAttrValMetaData_binary_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAddEntryCtr3_objects_, NDR_POINTER_UNIQUE, "Pointer to Objects (drsuapi_DsReplicaObjectIdentifier2)",hf_drsuapi_drsuapi_DsAddEntryCtr3_objects);
+ offset = dissect_ndr_datablob(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData_binary, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntryCtr3_objects_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAttrValMetaData_deleted(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAddEntryCtr3_objects__);
+ offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData_deleted);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntryCtr3_objects__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAttrValMetaData_created(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier2(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryCtr3_objects,0);
+ offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData_created);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaAttrValMetaData_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData_version, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaAttrValMetaData_originating_change_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData_originating_change_time);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaAttrValMetaData_originating_invocation_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData_originating_invocation_id, NULL);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaAttrValMetaData_originating_usn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData_originating_usn, NULL);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaAttrValMetaData_local_usn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData_local_usn, NULL);
return offset;
}
int
-drsuapi_dissect_struct_DsAddEntryCtr3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsReplicaAttrValMetaData(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- guint32 err_ver = 0;
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_5_BYTES;
+ ALIGN_TO_8_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsAddEntryCtr3);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaAttrValMetaData);
}
- offset = drsuapi_dissect_element_DsAddEntryCtr3_id(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaAttrValMetaData_attribute_name(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsAddEntryCtr3_err_ver(tvb, offset, pinfo, tree, di, drep, &err_ver);
+ offset = drsuapi_dissect_element_DsReplicaAttrValMetaData_object_dn(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsAddEntryCtr3_err_data(tvb, offset, pinfo, tree, di, drep, &err_ver);
+ offset = drsuapi_dissect_element_DsReplicaAttrValMetaData___ndr_size_binary(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsAddEntryCtr3_count(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaAttrValMetaData_binary(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsAddEntryCtr3_objects(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaAttrValMetaData_deleted(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaAttrValMetaData_created(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaAttrValMetaData_version(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaAttrValMetaData_originating_change_time(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaAttrValMetaData_originating_invocation_id(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaAttrValMetaData_originating_usn(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaAttrValMetaData_local_usn(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_5_BYTES;
+ ALIGN_TO_8_BYTES;
}
return offset;
}
-/* IDL: [switch_type(uint32)] union { */
-/* IDL: [case(2)] [case(2)] drsuapi_DsAddEntryCtr2 ctr2; */
-/* IDL: [case(3)] [case(3)] drsuapi_DsAddEntryCtr3 ctr3; */
+/* IDL: struct { */
+/* IDL: uint32 count; */
+/* IDL: uint32 enumeration_context; */
+/* IDL: [size_is(count)] drsuapi_DsReplicaAttrValMetaData array[*]; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsAddEntryCtr_ctr2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAttrValMetaDataCtr_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsAddEntryCtr2(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryCtr_ctr2,0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaDataCtr_count, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntryCtr_ctr3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAttrValMetaDataCtr_enumeration_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsAddEntryCtr3(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsAddEntryCtr_ctr3,0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaDataCtr_enumeration_context, 0);
return offset;
}
static int
-drsuapi_dissect_DsAddEntryCtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_element_DsReplicaAttrValMetaDataCtr_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
- guint32 level;
-
- old_offset = offset;
- if (parent_tree) {
- tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsAddEntryCtr, &item, "drsuapi_DsAddEntryCtr");
- }
-
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
- ALIGN_TO_5_BYTES;
-
- switch(level) {
- case 2:
- offset = drsuapi_dissect_element_DsAddEntryCtr_ctr2(tvb, offset, pinfo, tree, di, drep);
- break;
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAttrValMetaDataCtr_array_);
- case 3:
- offset = drsuapi_dissect_element_DsAddEntryCtr_ctr3(tvb, offset, pinfo, tree, di, drep);
- break;
- }
- proto_item_set_len(item, offset-old_offset);
+ return offset;
+}
+static int
+drsuapi_dissect_element_DsReplicaAttrValMetaDataCtr_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsReplicaAttrValMetaData(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaAttrValMetaDataCtr_array,0);
return offset;
}
-/* IDL: bitmap { */
-/* IDL: DRSUAPI_DS_EXECUTE_KCC_ASYNCHRONOUS_OPERATION = 0x00000001 , */
-/* IDL: DRSUAPI_DS_EXECUTE_KCC_DAMPED = 0x00000002 , */
-/* IDL: } */
-
int
-drsuapi_dissect_bitmap_DsExecuteKCCFlags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsReplicaAttrValMetaDataCtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- proto_item *item;
- static int * const drsuapi_drsuapi_DsExecuteKCCFlags_fields[] = {
- &hf_drsuapi_drsuapi_DsExecuteKCCFlags_DRSUAPI_DS_EXECUTE_KCC_ASYNCHRONOUS_OPERATION,
- &hf_drsuapi_drsuapi_DsExecuteKCCFlags_DRSUAPI_DS_EXECUTE_KCC_DAMPED,
- NULL
- };
- guint32 flags;
- ALIGN_TO_4_BYTES;
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+
+ ALIGN_TO_8_BYTES;
+
+ old_offset = offset;
+
+ if (parent_tree) {
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaAttrValMetaDataCtr);
+ }
+
+ offset = drsuapi_dissect_element_DsReplicaAttrValMetaDataCtr_count(tvb, offset, pinfo, tree, di, drep);
- item = proto_tree_add_bitmask_with_flags(parent_tree, tvb, offset, hf_index,
- ett_drsuapi_drsuapi_DsExecuteKCCFlags, drsuapi_drsuapi_DsExecuteKCCFlags_fields, DREP_ENC_INTEGER(drep), BMT_NO_FALSE);
+ offset = drsuapi_dissect_element_DsReplicaAttrValMetaDataCtr_enumeration_context(tvb, offset, pinfo, tree, di, drep);
- offset = dissect_ndr_uint32(tvb, offset, pinfo, parent_tree, di, drep, -1, &flags);
+ offset = drsuapi_dissect_element_DsReplicaAttrValMetaDataCtr_array(tvb, offset, pinfo, tree, di, drep);
- if (!flags)
- proto_item_append_text(item, ": (No values set)");
- if (flags & (~0x00000003)) {
- flags &= (~0x00000003);
- proto_item_append_text(item, "Unknown bitmap value 0x%x", flags);
+ proto_item_set_len(item, offset-old_offset);
+
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_8_BYTES;
}
return offset;
/* IDL: struct { */
-/* IDL: uint32 taskID; */
-/* IDL: drsuapi_DsExecuteKCCFlags flags; */
+/* IDL: uint32 count; */
+/* IDL: uint32 enumeration_context; */
+/* IDL: [size_is(count)] drsuapi_DsReplicaCursor2 array[*]; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsExecuteKCC1_taskID(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaCursor2Ctr_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsExecuteKCC1_taskID, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursor2Ctr_count, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsExecuteKCC1_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaCursor2Ctr_enumeration_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_bitmap_DsExecuteKCCFlags(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsExecuteKCC1_flags, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursor2Ctr_enumeration_context, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaCursor2Ctr_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaCursor2Ctr_array_);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaCursor2Ctr_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsReplicaCursor2(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaCursor2Ctr_array,0);
return offset;
}
int
-drsuapi_dissect_struct_DsExecuteKCC1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsReplicaCursor2Ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_4_BYTES;
+ ALIGN_TO_8_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsExecuteKCC1);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaCursor2Ctr);
}
- offset = drsuapi_dissect_element_DsExecuteKCC1_taskID(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaCursor2Ctr_count(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsExecuteKCC1_flags(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaCursor2Ctr_enumeration_context(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaCursor2Ctr_array(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_4_BYTES;
+ ALIGN_TO_8_BYTES;
}
return offset;
}
-/* IDL: [switch_type(uint32)] union { */
-/* IDL: [case(1)] [case(1)] drsuapi_DsExecuteKCC1 ctr1; */
+/* IDL: struct { */
+/* IDL: GUID source_dsa_invocation_id; */
+/* IDL: hyper highest_usn; */
+/* IDL: NTTIME last_sync_success; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *source_dsa_obj_dn; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsExecuteKCCRequest_ctr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaCursor3_source_dsa_invocation_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsExecuteKCC1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsExecuteKCCRequest_ctr1,0);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursor3_source_dsa_invocation_id, NULL);
return offset;
}
static int
-drsuapi_dissect_DsExecuteKCCRequest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_element_DsReplicaCursor3_highest_usn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
- guint32 level;
-
- old_offset = offset;
- if (parent_tree) {
- tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsExecuteKCCRequest, &item, "drsuapi_DsExecuteKCCRequest");
- }
-
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
- ALIGN_TO_4_BYTES;
+ offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursor3_highest_usn, NULL);
- switch(level) {
- case 1:
- offset = drsuapi_dissect_element_DsExecuteKCCRequest_ctr1(tvb, offset, pinfo, tree, di, drep);
- break;
- }
- proto_item_set_len(item, offset-old_offset);
+ return offset;
+}
+static int
+drsuapi_dissect_element_DsReplicaCursor3_last_sync_success(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursor3_last_sync_success);
return offset;
}
-/* IDL: enum { */
-/* IDL: DRSUAPI_DS_REPLICA_GET_INFO=1, */
-/* IDL: DRSUAPI_DS_REPLICA_GET_INFO2=2, */
-/* IDL: } */
-
-int
-drsuapi_dissect_enum_DsReplicaGetInfoLevel(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
+static int
+drsuapi_dissect_element_DsReplicaCursor3_source_dsa_obj_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- guint32 parameter=0;
- if (param) {
- parameter = *param;
- }
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, ¶meter);
- if (param) {
- *param = parameter;
- }
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaCursor3_source_dsa_obj_dn_, NDR_POINTER_UNIQUE, "Pointer to Source Dsa Obj Dn (uint16)",hf_drsuapi_drsuapi_DsReplicaCursor3_source_dsa_obj_dn);
+
return offset;
}
+static int
+drsuapi_dissect_element_DsReplicaCursor3_source_dsa_obj_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ char *data;
-/* IDL: enum { */
-/* IDL: DRSUAPI_DS_REPLICA_INFO_NEIGHBORS=0, */
-/* IDL: DRSUAPI_DS_REPLICA_INFO_CURSORS=1, */
-/* IDL: DRSUAPI_DS_REPLICA_INFO_OBJ_METADATA=2, */
-/* IDL: DRSUAPI_DS_REPLICA_INFO_KCC_DSA_CONNECT_FAILURES=3, */
-/* IDL: DRSUAPI_DS_REPLICA_INFO_KCC_DSA_LINK_FAILURES=4, */
-/* IDL: DRSUAPI_DS_REPLICA_INFO_PENDING_OPS=5, */
-/* IDL: DRSUAPI_DS_REPLICA_INFO_ATTRIBUTE_VALUE_METADATA=6, */
-/* IDL: DRSUAPI_DS_REPLICA_INFO_CURSORS2=7, */
-/* IDL: DRSUAPI_DS_REPLICA_INFO_CURSORS3=8, */
-/* IDL: DRSUAPI_DS_REPLICA_INFO_OBJ_METADATA2=9, */
-/* IDL: DRSUAPI_DS_REPLICA_INFO_ATTRIBUTE_VALUE_METADATA2=10, */
-/* IDL: DRSUAPI_DS_REPLICA_INFO_REPSTO=-2, */
-/* IDL: DRSUAPI_DS_REPLICA_INFO_CLIENT_CONTEXTS=-4, */
-/* IDL: DRSUAPI_DS_REPLICA_INFO_UPTODATE_VECTOR_V1=-5, */
-/* IDL: DRSUAPI_DS_REPLICA_INFO_SERVER_OUTGOING_CALLS=-6, */
-/* IDL: } */
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaCursor3_source_dsa_obj_dn, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
+
+ return offset;
+}
int
-drsuapi_dissect_enum_DsReplicaInfoType(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
+drsuapi_dissect_struct_DsReplicaCursor3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- guint32 parameter=0;
- if (param) {
- parameter = *param;
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+
+ ALIGN_TO_8_BYTES;
+
+ old_offset = offset;
+
+ if (parent_tree) {
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaCursor3);
}
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, ¶meter);
- if (param) {
- *param = parameter;
+
+ offset = drsuapi_dissect_element_DsReplicaCursor3_source_dsa_invocation_id(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaCursor3_highest_usn(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaCursor3_last_sync_success(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaCursor3_source_dsa_obj_dn(tvb, offset, pinfo, tree, di, drep);
+
+
+ proto_item_set_len(item, offset-old_offset);
+
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_8_BYTES;
}
+
return offset;
}
/* IDL: struct { */
-/* IDL: drsuapi_DsReplicaInfoType info_type; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *object_dn; */
-/* IDL: GUID source_dsa_guid; */
+/* IDL: uint32 count; */
+/* IDL: uint32 enumeration_context; */
+/* IDL: [size_is(count)] drsuapi_DsReplicaCursor3 array[*]; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaGetInfoRequest1_info_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaCursor3Ctr_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_enum_DsReplicaInfoType(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaGetInfoRequest1_info_type, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursor3Ctr_count, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaGetInfoRequest1_object_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaCursor3Ctr_enumeration_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaGetInfoRequest1_object_dn_, NDR_POINTER_UNIQUE, "Pointer to Object Dn (uint16)",hf_drsuapi_drsuapi_DsReplicaGetInfoRequest1_object_dn);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursor3Ctr_enumeration_context, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaGetInfoRequest1_object_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaCursor3Ctr_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- char *data;
-
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaGetInfoRequest1_object_dn, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaCursor3Ctr_array_);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaGetInfoRequest1_source_dsa_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaCursor3Ctr_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaGetInfoRequest1_source_dsa_guid, NULL);
+ offset = drsuapi_dissect_struct_DsReplicaCursor3(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaCursor3Ctr_array,0);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaGetInfoRequest1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsReplicaCursor3Ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_5_BYTES;
+ ALIGN_TO_8_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaGetInfoRequest1);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaCursor3Ctr);
}
- offset = drsuapi_dissect_element_DsReplicaGetInfoRequest1_info_type(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaCursor3Ctr_count(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaGetInfoRequest1_object_dn(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaCursor3Ctr_enumeration_context(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaGetInfoRequest1_source_dsa_guid(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaCursor3Ctr_array(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_5_BYTES;
+ ALIGN_TO_8_BYTES;
}
return offset;
/* IDL: struct { */
-/* IDL: drsuapi_DsReplicaInfoType info_type; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *object_dn; */
-/* IDL: GUID source_dsa_guid; */
-/* IDL: uint32 flags; */
/* IDL: [charset(UTF16)] [unique(1)] uint16 *attribute_name; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *value_dn_str; */
-/* IDL: uint32 enumeration_context; */
+/* IDL: uint32 version; */
+/* IDL: NTTIME originating_change_time; */
+/* IDL: GUID originating_invocation_id; */
+/* IDL: hyper originating_usn; */
+/* IDL: hyper local_usn; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *originating_dsa_dn; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaGetInfoRequest2_info_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = drsuapi_dissect_enum_DsReplicaInfoType(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaGetInfoRequest2_info_type, 0);
-
- return offset;
-}
-
-static int
-drsuapi_dissect_element_DsReplicaGetInfoRequest2_object_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaObjMetaData2_attribute_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaGetInfoRequest2_object_dn_, NDR_POINTER_UNIQUE, "Pointer to Object Dn (uint16)",hf_drsuapi_drsuapi_DsReplicaGetInfoRequest2_object_dn);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaObjMetaData2_attribute_name_, NDR_POINTER_UNIQUE, "Pointer to Attribute Name (uint16)",hf_drsuapi_drsuapi_DsReplicaObjMetaData2_attribute_name);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaGetInfoRequest2_object_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaObjMetaData2_attribute_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
char *data;
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaGetInfoRequest2_object_dn, FALSE, &data);
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaObjMetaData2_attribute_name, FALSE, &data);
proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaGetInfoRequest2_source_dsa_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaObjMetaData2_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaGetInfoRequest2_source_dsa_guid, NULL);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjMetaData2_version, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaGetInfoRequest2_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaObjMetaData2_originating_change_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaGetInfoRequest2_flags, 0);
+ offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjMetaData2_originating_change_time);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaGetInfoRequest2_attribute_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaObjMetaData2_originating_invocation_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaGetInfoRequest2_attribute_name_, NDR_POINTER_UNIQUE, "Pointer to Attribute Name (uint16)",hf_drsuapi_drsuapi_DsReplicaGetInfoRequest2_attribute_name);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjMetaData2_originating_invocation_id, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaGetInfoRequest2_attribute_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaObjMetaData2_originating_usn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- char *data;
-
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaGetInfoRequest2_attribute_name, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjMetaData2_originating_usn, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaGetInfoRequest2_value_dn_str(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaObjMetaData2_local_usn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaGetInfoRequest2_value_dn_str_, NDR_POINTER_UNIQUE, "Pointer to Value Dn Str (uint16)",hf_drsuapi_drsuapi_DsReplicaGetInfoRequest2_value_dn_str);
+ offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjMetaData2_local_usn, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaGetInfoRequest2_value_dn_str_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaObjMetaData2_originating_dsa_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- char *data;
-
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaGetInfoRequest2_value_dn_str, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaObjMetaData2_originating_dsa_dn_, NDR_POINTER_UNIQUE, "Pointer to Originating Dsa Dn (uint16)",hf_drsuapi_drsuapi_DsReplicaObjMetaData2_originating_dsa_dn);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaGetInfoRequest2_enumeration_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaObjMetaData2_originating_dsa_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaGetInfoRequest2_enumeration_context, 0);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaObjMetaData2_originating_dsa_dn, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaGetInfoRequest2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsReplicaObjMetaData2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_5_BYTES;
+ ALIGN_TO_8_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaGetInfoRequest2);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaObjMetaData2);
}
- offset = drsuapi_dissect_element_DsReplicaGetInfoRequest2_info_type(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaObjMetaData2_attribute_name(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaGetInfoRequest2_object_dn(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaObjMetaData2_version(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaGetInfoRequest2_source_dsa_guid(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaObjMetaData2_originating_change_time(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaGetInfoRequest2_flags(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaObjMetaData2_originating_invocation_id(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaGetInfoRequest2_attribute_name(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaObjMetaData2_originating_usn(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaGetInfoRequest2_value_dn_str(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaObjMetaData2_local_usn(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaGetInfoRequest2_enumeration_context(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaObjMetaData2_originating_dsa_dn(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_5_BYTES;
+ ALIGN_TO_8_BYTES;
}
return offset;
}
-/* IDL: [switch_type(drsuapi_DsReplicaGetInfoLevel)] union { */
-/* IDL: [case(DRSUAPI_DS_REPLICA_GET_INFO)] [case(DRSUAPI_DS_REPLICA_GET_INFO)] drsuapi_DsReplicaGetInfoRequest1 req1; */
-/* IDL: [case(DRSUAPI_DS_REPLICA_GET_INFO2)] [case(DRSUAPI_DS_REPLICA_GET_INFO2)] drsuapi_DsReplicaGetInfoRequest2 req2; */
+/* IDL: struct { */
+/* IDL: uint32 count; */
+/* IDL: uint32 enumeration_context; */
+/* IDL: [size_is(count)] drsuapi_DsReplicaObjMetaData2 array[*]; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaGetInfoRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaObjMetaData2Ctr_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaGetInfoRequest1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaGetInfoRequest_req1,0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjMetaData2Ctr_count, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaGetInfoRequest_req2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaObjMetaData2Ctr_enumeration_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaGetInfoRequest2(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaGetInfoRequest_req2,0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjMetaData2Ctr_enumeration_context, 0);
return offset;
}
static int
-drsuapi_dissect_DsReplicaGetInfoRequest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_element_DsReplicaObjMetaData2Ctr_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaObjMetaData2Ctr_array_);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaObjMetaData2Ctr_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsReplicaObjMetaData2(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaObjMetaData2Ctr_array,0);
+
+ return offset;
+}
+
+int
+drsuapi_dissect_struct_DsReplicaObjMetaData2Ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- guint32 level;
+
+ ALIGN_TO_8_BYTES;
old_offset = offset;
+
if (parent_tree) {
- tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsReplicaGetInfoRequest, &item, "drsuapi_DsReplicaGetInfoRequest");
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaObjMetaData2Ctr);
}
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
- ALIGN_TO_5_BYTES;
+ offset = drsuapi_dissect_element_DsReplicaObjMetaData2Ctr_count(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaObjMetaData2Ctr_enumeration_context(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaObjMetaData2Ctr_array(tvb, offset, pinfo, tree, di, drep);
- switch(level) {
- case DRSUAPI_DS_REPLICA_GET_INFO:
- offset = drsuapi_dissect_element_DsReplicaGetInfoRequest_req1(tvb, offset, pinfo, tree, di, drep);
- break;
- case DRSUAPI_DS_REPLICA_GET_INFO2:
- offset = drsuapi_dissect_element_DsReplicaGetInfoRequest_req2(tvb, offset, pinfo, tree, di, drep);
- break;
- }
proto_item_set_len(item, offset-old_offset);
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_8_BYTES;
+ }
+
return offset;
}
+
/* IDL: struct { */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *naming_context_dn; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *source_dsa_obj_dn; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *source_dsa_address; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *transport_obj_dn; */
-/* IDL: drsuapi_DrsOptions replica_flags; */
-/* IDL: uint32 reserved; */
-/* IDL: GUID naming_context_obj_guid; */
-/* IDL: GUID source_dsa_obj_guid; */
-/* IDL: GUID source_dsa_invocation_id; */
-/* IDL: GUID transport_obj_guid; */
-/* IDL: hyper tmp_highest_usn; */
-/* IDL: hyper highest_usn; */
-/* IDL: NTTIME last_success; */
-/* IDL: NTTIME last_attempt; */
-/* IDL: WERROR result_last_attempt; */
-/* IDL: uint32 consecutive_sync_failures; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *attribute_name; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *object_dn; */
+/* IDL: [value(ndr_size_DATA_BLOB(0,binary,0))] uint32 __ndr_size_binary; */
+/* IDL: [unique(1)] DATA_BLOB *binary; */
+/* IDL: NTTIME deleted; */
+/* IDL: NTTIME created; */
+/* IDL: uint32 version; */
+/* IDL: NTTIME originating_change_time; */
+/* IDL: GUID originating_invocation_id; */
+/* IDL: hyper originating_usn; */
+/* IDL: hyper local_usn; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *originating_dsa_dn; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaNeighbour_naming_context_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAttrValMetaData2_attribute_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaNeighbour_naming_context_dn_, NDR_POINTER_UNIQUE, "Pointer to Naming Context Dn (uint16)",hf_drsuapi_drsuapi_DsReplicaNeighbour_naming_context_dn);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAttrValMetaData2_attribute_name_, NDR_POINTER_UNIQUE, "Pointer to Attribute Name (uint16)",hf_drsuapi_drsuapi_DsReplicaAttrValMetaData2_attribute_name);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaNeighbour_naming_context_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAttrValMetaData2_attribute_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
char *data;
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaNeighbour_naming_context_dn, FALSE, &data);
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaAttrValMetaData2_attribute_name, FALSE, &data);
proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaNeighbour_source_dsa_obj_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAttrValMetaData2_object_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaNeighbour_source_dsa_obj_dn_, NDR_POINTER_UNIQUE, "Pointer to Source Dsa Obj Dn (uint16)",hf_drsuapi_drsuapi_DsReplicaNeighbour_source_dsa_obj_dn);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAttrValMetaData2_object_dn_, NDR_POINTER_UNIQUE, "Pointer to Object Dn (uint16)",hf_drsuapi_drsuapi_DsReplicaAttrValMetaData2_object_dn);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaNeighbour_source_dsa_obj_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAttrValMetaData2_object_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
char *data;
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaNeighbour_source_dsa_obj_dn, FALSE, &data);
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaAttrValMetaData2_object_dn, FALSE, &data);
proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaNeighbour_source_dsa_address(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAttrValMetaData2___ndr_size_binary(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaNeighbour_source_dsa_address_, NDR_POINTER_UNIQUE, "Pointer to Source Dsa Address (uint16)",hf_drsuapi_drsuapi_DsReplicaNeighbour_source_dsa_address);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData2___ndr_size_binary, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaNeighbour_source_dsa_address_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAttrValMetaData2_binary(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- char *data;
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAttrValMetaData2_binary_, NDR_POINTER_UNIQUE, "Pointer to Binary (DATA_BLOB)",hf_drsuapi_drsuapi_DsReplicaAttrValMetaData2_binary);
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaNeighbour_source_dsa_address, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaAttrValMetaData2_binary_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_datablob(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData2_binary, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaNeighbour_transport_obj_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAttrValMetaData2_deleted(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaNeighbour_transport_obj_dn_, NDR_POINTER_UNIQUE, "Pointer to Transport Obj Dn (uint16)",hf_drsuapi_drsuapi_DsReplicaNeighbour_transport_obj_dn);
+ offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData2_deleted);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaNeighbour_transport_obj_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAttrValMetaData2_created(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- char *data;
+ offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData2_created);
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaNeighbour_transport_obj_dn, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaAttrValMetaData2_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData2_version, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaNeighbour_replica_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAttrValMetaData2_originating_change_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_bitmap_DrsOptions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaNeighbour_replica_flags, 0);
+ offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData2_originating_change_time);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaNeighbour_reserved(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAttrValMetaData2_originating_invocation_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaNeighbour_reserved, 0);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData2_originating_invocation_id, NULL);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaAttrValMetaData2_originating_usn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData2_originating_usn, NULL);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaAttrValMetaData2_local_usn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData2_local_usn, NULL);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaAttrValMetaData2_originating_dsa_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAttrValMetaData2_originating_dsa_dn_, NDR_POINTER_UNIQUE, "Pointer to Originating Dsa Dn (uint16)",hf_drsuapi_drsuapi_DsReplicaAttrValMetaData2_originating_dsa_dn);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaAttrValMetaData2_originating_dsa_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaAttrValMetaData2_originating_dsa_dn, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
+
+ return offset;
+}
+
+int
+drsuapi_dissect_struct_DsReplicaAttrValMetaData2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+{
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+
+ ALIGN_TO_8_BYTES;
+
+ old_offset = offset;
+
+ if (parent_tree) {
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaAttrValMetaData2);
+ }
+
+ offset = drsuapi_dissect_element_DsReplicaAttrValMetaData2_attribute_name(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaAttrValMetaData2_object_dn(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaAttrValMetaData2___ndr_size_binary(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaAttrValMetaData2_binary(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaAttrValMetaData2_deleted(tvb, offset, pinfo, tree, di, drep);
- return offset;
-}
+ offset = drsuapi_dissect_element_DsReplicaAttrValMetaData2_created(tvb, offset, pinfo, tree, di, drep);
-static int
-drsuapi_dissect_element_DsReplicaNeighbour_naming_context_obj_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaNeighbour_naming_context_obj_guid, NULL);
+ offset = drsuapi_dissect_element_DsReplicaAttrValMetaData2_version(tvb, offset, pinfo, tree, di, drep);
- return offset;
-}
+ offset = drsuapi_dissect_element_DsReplicaAttrValMetaData2_originating_change_time(tvb, offset, pinfo, tree, di, drep);
-static int
-drsuapi_dissect_element_DsReplicaNeighbour_source_dsa_obj_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaNeighbour_source_dsa_obj_guid, NULL);
+ offset = drsuapi_dissect_element_DsReplicaAttrValMetaData2_originating_invocation_id(tvb, offset, pinfo, tree, di, drep);
- return offset;
-}
+ offset = drsuapi_dissect_element_DsReplicaAttrValMetaData2_originating_usn(tvb, offset, pinfo, tree, di, drep);
-static int
-drsuapi_dissect_element_DsReplicaNeighbour_source_dsa_invocation_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaNeighbour_source_dsa_invocation_id, NULL);
+ offset = drsuapi_dissect_element_DsReplicaAttrValMetaData2_local_usn(tvb, offset, pinfo, tree, di, drep);
- return offset;
-}
+ offset = drsuapi_dissect_element_DsReplicaAttrValMetaData2_originating_dsa_dn(tvb, offset, pinfo, tree, di, drep);
-static int
-drsuapi_dissect_element_DsReplicaNeighbour_transport_obj_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaNeighbour_transport_obj_guid, NULL);
- return offset;
-}
+ proto_item_set_len(item, offset-old_offset);
-static int
-drsuapi_dissect_element_DsReplicaNeighbour_tmp_highest_usn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaNeighbour_tmp_highest_usn, NULL);
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_8_BYTES;
+ }
return offset;
}
-static int
-drsuapi_dissect_element_DsReplicaNeighbour_highest_usn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaNeighbour_highest_usn, NULL);
- return offset;
-}
+/* IDL: struct { */
+/* IDL: uint32 count; */
+/* IDL: uint32 enumeration_context; */
+/* IDL: [size_is(count)] drsuapi_DsReplicaAttrValMetaData2 array[*]; */
+/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaNeighbour_last_success(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAttrValMetaData2Ctr_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaNeighbour_last_success);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData2Ctr_count, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaNeighbour_last_attempt(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAttrValMetaData2Ctr_enumeration_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaNeighbour_last_attempt);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData2Ctr_enumeration_context, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaNeighbour_result_last_attempt(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAttrValMetaData2Ctr_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaNeighbour_result_last_attempt, 0);
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAttrValMetaData2Ctr_array_);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaNeighbour_consecutive_sync_failures(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAttrValMetaData2Ctr_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaNeighbour_consecutive_sync_failures, 0);
+ offset = drsuapi_dissect_struct_DsReplicaAttrValMetaData2(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaAttrValMetaData2Ctr_array,0);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaNeighbour(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsReplicaAttrValMetaData2Ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaNeighbour);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaAttrValMetaData2Ctr);
}
- offset = drsuapi_dissect_element_DsReplicaNeighbour_naming_context_dn(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaNeighbour_source_dsa_obj_dn(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaNeighbour_source_dsa_address(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaNeighbour_transport_obj_dn(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaNeighbour_replica_flags(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaNeighbour_reserved(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaNeighbour_naming_context_obj_guid(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaNeighbour_source_dsa_obj_guid(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaNeighbour_source_dsa_invocation_id(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaNeighbour_transport_obj_guid(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaNeighbour_tmp_highest_usn(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaNeighbour_highest_usn(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaNeighbour_last_success(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaNeighbour_last_attempt(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaAttrValMetaData2Ctr_count(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaNeighbour_result_last_attempt(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaAttrValMetaData2Ctr_enumeration_context(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaNeighbour_consecutive_sync_failures(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaAttrValMetaData2Ctr_array(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
/* IDL: struct { */
-/* IDL: uint32 count; */
-/* IDL: uint32 reserved; */
-/* IDL: [size_is(count)] drsuapi_DsReplicaNeighbour array[*]; */
+/* IDL: hyper u1; */
+/* IDL: uint32 u2; */
+/* IDL: uint32 u3; */
+/* IDL: GUID bind_guid; */
+/* IDL: NTTIME_1sec bind_time; */
+/* IDL: [flag(LIBNDR_FLAG_BIGENDIAN)] ipv4address client_ip_address; */
+/* IDL: uint32 u5; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaNeighbourCtr_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaConnection04_u1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaNeighbourCtr_count, 0);
+ offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaConnection04_u1, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaNeighbourCtr_reserved(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaConnection04_u2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaNeighbourCtr_reserved, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaConnection04_u2, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaNeighbourCtr_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaConnection04_u3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaNeighbourCtr_array_);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaConnection04_u3, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaNeighbourCtr_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaConnection04_bind_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaNeighbour(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaNeighbourCtr_array,0);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaConnection04_bind_guid, NULL);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaConnection04_bind_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaConnection04_bind_time);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaConnection04_client_ip_address(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ proto_tree_add_item(tree, hf_drsuapi_drsuapi_DsReplicaConnection04_client_ip_address, tvb, offset, 4, ENC_BIG_ENDIAN); offset += 4;
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaConnection04_u5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaConnection04_u5, 0);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaNeighbourCtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsReplicaConnection04(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaNeighbourCtr);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaConnection04);
}
- offset = drsuapi_dissect_element_DsReplicaNeighbourCtr_count(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaConnection04_u1(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaNeighbourCtr_reserved(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaConnection04_u2(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaNeighbourCtr_array(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaConnection04_u3(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaConnection04_bind_guid(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaConnection04_bind_time(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaConnection04_client_ip_address(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplicaConnection04_u5(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
/* IDL: struct { */
-/* IDL: uint32 count; */
+/* IDL: [range(0,10000)] uint32 count; */
/* IDL: uint32 reserved; */
-/* IDL: [size_is(count)] drsuapi_DsReplicaCursor array[*]; */
+/* IDL: [size_is(count)] drsuapi_DsReplicaConnection04 array[*]; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaCursorCtr_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaConnection04Ctr_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursorCtr_count, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaConnection04Ctr_count, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaCursorCtr_reserved(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaConnection04Ctr_reserved(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursorCtr_reserved, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaConnection04Ctr_reserved, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaCursorCtr_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaConnection04Ctr_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaCursorCtr_array_);
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaConnection04Ctr_array_);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaCursorCtr_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaConnection04Ctr_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaCursor(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaCursorCtr_array,0);
+ offset = drsuapi_dissect_struct_DsReplicaConnection04(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaConnection04Ctr_array,0);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaCursorCtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsReplicaConnection04Ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaCursorCtr);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaConnection04Ctr);
}
- offset = drsuapi_dissect_element_DsReplicaCursorCtr_count(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaConnection04Ctr_count(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaCursorCtr_reserved(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaConnection04Ctr_reserved(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaCursorCtr_array(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaConnection04Ctr_array(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
/* IDL: struct { */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *attribute_name; */
-/* IDL: uint32 version; */
-/* IDL: NTTIME originating_change_time; */
-/* IDL: GUID originating_invocation_id; */
-/* IDL: hyper originating_usn; */
-/* IDL: hyper local_usn; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *str1; */
+/* IDL: uint32 u1; */
+/* IDL: uint32 u2; */
+/* IDL: uint32 u3; */
+/* IDL: uint32 u4; */
+/* IDL: uint32 u5; */
+/* IDL: hyper u6; */
+/* IDL: uint32 u7; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaObjMetaData_attribute_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplica06_str1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaObjMetaData_attribute_name_, NDR_POINTER_UNIQUE, "Pointer to Attribute Name (uint16)",hf_drsuapi_drsuapi_DsReplicaObjMetaData_attribute_name);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplica06_str1_, NDR_POINTER_UNIQUE, "Pointer to Str1 (uint16)",hf_drsuapi_drsuapi_DsReplica06_str1);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObjMetaData_attribute_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplica06_str1_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
char *data;
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaObjMetaData_attribute_name, FALSE, &data);
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplica06_str1, FALSE, &data);
proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObjMetaData_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplica06_u1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjMetaData_version, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplica06_u1, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObjMetaData_originating_change_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplica06_u2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjMetaData_originating_change_time);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplica06_u2, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObjMetaData_originating_invocation_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplica06_u3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjMetaData_originating_invocation_id, NULL);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplica06_u3, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObjMetaData_originating_usn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplica06_u4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplica06_u4, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplica06_u5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplica06_u5, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplica06_u6(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjMetaData_originating_usn, NULL);
+ offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplica06_u6, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObjMetaData_local_usn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplica06_u7(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjMetaData_local_usn, NULL);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplica06_u7, 0);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaObjMetaData(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsReplica06(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaObjMetaData);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplica06);
}
- offset = drsuapi_dissect_element_DsReplicaObjMetaData_attribute_name(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplica06_str1(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaObjMetaData_version(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplica06_u1(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaObjMetaData_originating_change_time(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplica06_u2(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaObjMetaData_originating_invocation_id(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplica06_u3(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaObjMetaData_originating_usn(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplica06_u4(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaObjMetaData_local_usn(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplica06_u5(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplica06_u6(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_DsReplica06_u7(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
/* IDL: struct { */
-/* IDL: uint32 count; */
+/* IDL: [range(0,256)] uint32 count; */
/* IDL: uint32 reserved; */
-/* IDL: [size_is(count)] drsuapi_DsReplicaObjMetaData array[*]; */
+/* IDL: [size_is(count)] drsuapi_DsReplica06 array[*]; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaObjMetaDataCtr_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplica06Ctr_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjMetaDataCtr_count, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplica06Ctr_count, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObjMetaDataCtr_reserved(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplica06Ctr_reserved(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjMetaDataCtr_reserved, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplica06Ctr_reserved, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObjMetaDataCtr_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplica06Ctr_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaObjMetaDataCtr_array_);
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplica06Ctr_array_);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObjMetaDataCtr_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplica06Ctr_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaObjMetaData(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaObjMetaDataCtr_array,0);
+ offset = drsuapi_dissect_struct_DsReplica06(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplica06Ctr_array,0);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaObjMetaDataCtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsReplica06Ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaObjMetaDataCtr);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplica06Ctr);
}
- offset = drsuapi_dissect_element_DsReplicaObjMetaDataCtr_count(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplica06Ctr_count(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaObjMetaDataCtr_reserved(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplica06Ctr_reserved(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaObjMetaDataCtr_array(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsReplica06Ctr_array(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
}
-/* IDL: struct { */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *dsa_obj_dn; */
-/* IDL: GUID dsa_obj_guid; */
-/* IDL: NTTIME first_failure; */
-/* IDL: uint32 num_failures; */
-/* IDL: WERROR last_result; */
+/* IDL: [switch_type(drsuapi_DsReplicaInfoType)] union { */
+/* IDL: [case(DRSUAPI_DS_REPLICA_INFO_NEIGHBORS)] [case(DRSUAPI_DS_REPLICA_INFO_NEIGHBORS)] [unique(1)] drsuapi_DsReplicaNeighbourCtr *neighbours; */
+/* IDL: [case(DRSUAPI_DS_REPLICA_INFO_CURSORS)] [case(DRSUAPI_DS_REPLICA_INFO_CURSORS)] [unique(1)] drsuapi_DsReplicaCursorCtr *cursors; */
+/* IDL: [case(DRSUAPI_DS_REPLICA_INFO_OBJ_METADATA)] [case(DRSUAPI_DS_REPLICA_INFO_OBJ_METADATA)] [unique(1)] drsuapi_DsReplicaObjMetaDataCtr *objmetadata; */
+/* IDL: [case(DRSUAPI_DS_REPLICA_INFO_KCC_DSA_CONNECT_FAILURES)] [case(DRSUAPI_DS_REPLICA_INFO_KCC_DSA_CONNECT_FAILURES)] [unique(1)] drsuapi_DsReplicaKccDsaFailuresCtr *connectfailures; */
+/* IDL: [case(DRSUAPI_DS_REPLICA_INFO_KCC_DSA_LINK_FAILURES)] [case(DRSUAPI_DS_REPLICA_INFO_KCC_DSA_LINK_FAILURES)] [unique(1)] drsuapi_DsReplicaKccDsaFailuresCtr *linkfailures; */
+/* IDL: [case(DRSUAPI_DS_REPLICA_INFO_PENDING_OPS)] [case(DRSUAPI_DS_REPLICA_INFO_PENDING_OPS)] [unique(1)] drsuapi_DsReplicaOpCtr *pendingops; */
+/* IDL: [case(DRSUAPI_DS_REPLICA_INFO_ATTRIBUTE_VALUE_METADATA)] [case(DRSUAPI_DS_REPLICA_INFO_ATTRIBUTE_VALUE_METADATA)] [unique(1)] drsuapi_DsReplicaAttrValMetaDataCtr *attrvalmetadata; */
+/* IDL: [case(DRSUAPI_DS_REPLICA_INFO_CURSORS2)] [case(DRSUAPI_DS_REPLICA_INFO_CURSORS2)] [unique(1)] drsuapi_DsReplicaCursor2Ctr *cursors2; */
+/* IDL: [case(DRSUAPI_DS_REPLICA_INFO_CURSORS3)] [case(DRSUAPI_DS_REPLICA_INFO_CURSORS3)] [unique(1)] drsuapi_DsReplicaCursor3Ctr *cursors3; */
+/* IDL: [case(DRSUAPI_DS_REPLICA_INFO_OBJ_METADATA2)] [case(DRSUAPI_DS_REPLICA_INFO_OBJ_METADATA2)] [unique(1)] drsuapi_DsReplicaObjMetaData2Ctr *objmetadata2; */
+/* IDL: [case(DRSUAPI_DS_REPLICA_INFO_ATTRIBUTE_VALUE_METADATA2)] [case(DRSUAPI_DS_REPLICA_INFO_ATTRIBUTE_VALUE_METADATA2)] [unique(1)] drsuapi_DsReplicaAttrValMetaData2Ctr *attrvalmetadata2; */
+/* IDL: [case(DRSUAPI_DS_REPLICA_INFO_REPSTO)] [case(DRSUAPI_DS_REPLICA_INFO_REPSTO)] [unique(1)] drsuapi_DsReplicaNeighbourCtr *repsto; */
+/* IDL: [case(DRSUAPI_DS_REPLICA_INFO_CLIENT_CONTEXTS)] [case(DRSUAPI_DS_REPLICA_INFO_CLIENT_CONTEXTS)] [unique(1)] drsuapi_DsReplicaConnection04Ctr *clientctx; */
+/* IDL: [case(DRSUAPI_DS_REPLICA_INFO_UPTODATE_VECTOR_V1)] [case(DRSUAPI_DS_REPLICA_INFO_UPTODATE_VECTOR_V1)] [unique(1)] drsuapi_DsReplicaCursorCtrEx *udv1; */
+/* IDL: [case(DRSUAPI_DS_REPLICA_INFO_SERVER_OUTGOING_CALLS)] [case(DRSUAPI_DS_REPLICA_INFO_SERVER_OUTGOING_CALLS)] [unique(1)] drsuapi_DsReplica06Ctr *srvoutgoingcalls; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaKccDsaFailure_dsa_obj_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaInfo_neighbours(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaKccDsaFailure_dsa_obj_dn_, NDR_POINTER_UNIQUE, "Pointer to Dsa Obj Dn (uint16)",hf_drsuapi_drsuapi_DsReplicaKccDsaFailure_dsa_obj_dn);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaInfo_neighbours_, NDR_POINTER_UNIQUE, "Pointer to Neighbours (drsuapi_DsReplicaNeighbourCtr)",hf_drsuapi_drsuapi_DsReplicaInfo_neighbours);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaKccDsaFailure_dsa_obj_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaInfo_neighbours_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- char *data;
-
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaKccDsaFailure_dsa_obj_dn, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ offset = drsuapi_dissect_struct_DsReplicaNeighbourCtr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaInfo_neighbours,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaKccDsaFailure_dsa_obj_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaInfo_cursors(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaKccDsaFailure_dsa_obj_guid, NULL);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaInfo_cursors_, NDR_POINTER_UNIQUE, "Pointer to Cursors (drsuapi_DsReplicaCursorCtr)",hf_drsuapi_drsuapi_DsReplicaInfo_cursors);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaKccDsaFailure_first_failure(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaInfo_cursors_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaKccDsaFailure_first_failure);
+ offset = drsuapi_dissect_struct_DsReplicaCursorCtr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaInfo_cursors,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaKccDsaFailure_num_failures(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaInfo_objmetadata(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaKccDsaFailure_num_failures, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaInfo_objmetadata_, NDR_POINTER_UNIQUE, "Pointer to Objmetadata (drsuapi_DsReplicaObjMetaDataCtr)",hf_drsuapi_drsuapi_DsReplicaInfo_objmetadata);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaKccDsaFailure_last_result(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaInfo_objmetadata_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaKccDsaFailure_last_result, 0);
+ offset = drsuapi_dissect_struct_DsReplicaObjMetaDataCtr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaInfo_objmetadata,0);
return offset;
}
-int
-drsuapi_dissect_struct_DsReplicaKccDsaFailure(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+static int
+drsuapi_dissect_element_DsReplicaInfo_connectfailures(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
-
- ALIGN_TO_5_BYTES;
-
- old_offset = offset;
-
- if (parent_tree) {
- item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaKccDsaFailure);
- }
-
- offset = drsuapi_dissect_element_DsReplicaKccDsaFailure_dsa_obj_dn(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaKccDsaFailure_dsa_obj_guid(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaKccDsaFailure_first_failure(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaKccDsaFailure_num_failures(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaKccDsaFailure_last_result(tvb, offset, pinfo, tree, di, drep);
-
-
- proto_item_set_len(item, offset-old_offset);
-
-
- if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_5_BYTES;
- }
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaInfo_connectfailures_, NDR_POINTER_UNIQUE, "Pointer to Connectfailures (drsuapi_DsReplicaKccDsaFailuresCtr)",hf_drsuapi_drsuapi_DsReplicaInfo_connectfailures);
return offset;
}
-
-/* IDL: struct { */
-/* IDL: uint32 count; */
-/* IDL: uint32 reserved; */
-/* IDL: [size_is(count)] drsuapi_DsReplicaKccDsaFailure array[*]; */
-/* IDL: } */
-
static int
-drsuapi_dissect_element_DsReplicaKccDsaFailuresCtr_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaInfo_connectfailures_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaKccDsaFailuresCtr_count, 0);
+ offset = drsuapi_dissect_struct_DsReplicaKccDsaFailuresCtr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaInfo_connectfailures,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaKccDsaFailuresCtr_reserved(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaInfo_linkfailures(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaKccDsaFailuresCtr_reserved, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaInfo_linkfailures_, NDR_POINTER_UNIQUE, "Pointer to Linkfailures (drsuapi_DsReplicaKccDsaFailuresCtr)",hf_drsuapi_drsuapi_DsReplicaInfo_linkfailures);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaKccDsaFailuresCtr_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaInfo_linkfailures_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaKccDsaFailuresCtr_array_);
+ offset = drsuapi_dissect_struct_DsReplicaKccDsaFailuresCtr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaInfo_linkfailures,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaKccDsaFailuresCtr_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaInfo_pendingops(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaKccDsaFailure(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaKccDsaFailuresCtr_array,0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaInfo_pendingops_, NDR_POINTER_UNIQUE, "Pointer to Pendingops (drsuapi_DsReplicaOpCtr)",hf_drsuapi_drsuapi_DsReplicaInfo_pendingops);
return offset;
}
-int
-drsuapi_dissect_struct_DsReplicaKccDsaFailuresCtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+static int
+drsuapi_dissect_element_DsReplicaInfo_pendingops_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
-
- ALIGN_TO_5_BYTES;
-
- old_offset = offset;
-
- if (parent_tree) {
- item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaKccDsaFailuresCtr);
- }
-
- offset = drsuapi_dissect_element_DsReplicaKccDsaFailuresCtr_count(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaKccDsaFailuresCtr_reserved(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaKccDsaFailuresCtr_array(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_struct_DsReplicaOpCtr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaInfo_pendingops,0);
+ return offset;
+}
- proto_item_set_len(item, offset-old_offset);
+static int
+drsuapi_dissect_element_DsReplicaInfo_attrvalmetadata(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaInfo_attrvalmetadata_, NDR_POINTER_UNIQUE, "Pointer to Attrvalmetadata (drsuapi_DsReplicaAttrValMetaDataCtr)",hf_drsuapi_drsuapi_DsReplicaInfo_attrvalmetadata);
+ return offset;
+}
- if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_5_BYTES;
- }
+static int
+drsuapi_dissect_element_DsReplicaInfo_attrvalmetadata_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsReplicaAttrValMetaDataCtr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaInfo_attrvalmetadata,0);
return offset;
}
+static int
+drsuapi_dissect_element_DsReplicaInfo_cursors2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaInfo_cursors2_, NDR_POINTER_UNIQUE, "Pointer to Cursors2 (drsuapi_DsReplicaCursor2Ctr)",hf_drsuapi_drsuapi_DsReplicaInfo_cursors2);
-/* IDL: enum { */
-/* IDL: DRSUAPI_DS_REPLICA_OP_TYPE_SYNC=0, */
-/* IDL: DRSUAPI_DS_REPLICA_OP_TYPE_ADD=1, */
-/* IDL: DRSUAPI_DS_REPLICA_OP_TYPE_DELETE=2, */
-/* IDL: DRSUAPI_DS_REPLICA_OP_TYPE_MODIFY=3, */
-/* IDL: DRSUAPI_DS_REPLICA_OP_TYPE_UPDATE_REFS=4, */
-/* IDL: } */
+ return offset;
+}
-int
-drsuapi_dissect_enum_DsReplicaOpType(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint1632 *param _U_)
+static int
+drsuapi_dissect_element_DsReplicaInfo_cursors2_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- guint1632 parameter=0;
- if (param) {
- parameter = *param;
- }
- offset = dissect_ndr_uint1632(tvb, offset, pinfo, tree, di, drep, hf_index, ¶meter);
- if (param) {
- *param = parameter;
- }
+ offset = drsuapi_dissect_struct_DsReplicaCursor2Ctr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaInfo_cursors2,0);
+
return offset;
}
+static int
+drsuapi_dissect_element_DsReplicaInfo_cursors3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaInfo_cursors3_, NDR_POINTER_UNIQUE, "Pointer to Cursors3 (drsuapi_DsReplicaCursor3Ctr)",hf_drsuapi_drsuapi_DsReplicaInfo_cursors3);
-/* IDL: struct { */
-/* IDL: NTTIME operation_start; */
-/* IDL: uint32 serial_num; */
-/* IDL: uint32 priority; */
-/* IDL: drsuapi_DsReplicaOpType operation_type; */
-/* IDL: drsuapi_DrsOptions options; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *nc_dn; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *remote_dsa_obj_dn; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *remote_dsa_address; */
-/* IDL: GUID nc_obj_guid; */
-/* IDL: GUID remote_dsa_obj_guid; */
-/* IDL: } */
+ return offset;
+}
static int
-drsuapi_dissect_element_DsReplicaOp_operation_start(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaInfo_cursors3_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaOp_operation_start);
+ offset = drsuapi_dissect_struct_DsReplicaCursor3Ctr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaInfo_cursors3,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaOp_serial_num(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaInfo_objmetadata2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaOp_serial_num, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaInfo_objmetadata2_, NDR_POINTER_UNIQUE, "Pointer to Objmetadata2 (drsuapi_DsReplicaObjMetaData2Ctr)",hf_drsuapi_drsuapi_DsReplicaInfo_objmetadata2);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaOp_priority(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaInfo_objmetadata2_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaOp_priority, 0);
+ offset = drsuapi_dissect_struct_DsReplicaObjMetaData2Ctr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaInfo_objmetadata2,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaOp_operation_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaInfo_attrvalmetadata2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_enum_DsReplicaOpType(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaOp_operation_type, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaInfo_attrvalmetadata2_, NDR_POINTER_UNIQUE, "Pointer to Attrvalmetadata2 (drsuapi_DsReplicaAttrValMetaData2Ctr)",hf_drsuapi_drsuapi_DsReplicaInfo_attrvalmetadata2);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaOp_options(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaInfo_attrvalmetadata2_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_bitmap_DrsOptions(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaOp_options, 0);
+ offset = drsuapi_dissect_struct_DsReplicaAttrValMetaData2Ctr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaInfo_attrvalmetadata2,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaOp_nc_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaInfo_repsto(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaOp_nc_dn_, NDR_POINTER_UNIQUE, "Pointer to Nc Dn (uint16)",hf_drsuapi_drsuapi_DsReplicaOp_nc_dn);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaInfo_repsto_, NDR_POINTER_UNIQUE, "Pointer to Repsto (drsuapi_DsReplicaNeighbourCtr)",hf_drsuapi_drsuapi_DsReplicaInfo_repsto);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaOp_nc_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaInfo_repsto_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- char *data;
-
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaOp_nc_dn, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ offset = drsuapi_dissect_struct_DsReplicaNeighbourCtr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaInfo_repsto,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaOp_remote_dsa_obj_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaInfo_clientctx(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaOp_remote_dsa_obj_dn_, NDR_POINTER_UNIQUE, "Pointer to Remote Dsa Obj Dn (uint16)",hf_drsuapi_drsuapi_DsReplicaOp_remote_dsa_obj_dn);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaInfo_clientctx_, NDR_POINTER_UNIQUE, "Pointer to Clientctx (drsuapi_DsReplicaConnection04Ctr)",hf_drsuapi_drsuapi_DsReplicaInfo_clientctx);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaOp_remote_dsa_obj_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaInfo_clientctx_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- char *data;
-
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaOp_remote_dsa_obj_dn, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ offset = drsuapi_dissect_struct_DsReplicaConnection04Ctr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaInfo_clientctx,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaOp_remote_dsa_address(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaInfo_udv1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaOp_remote_dsa_address_, NDR_POINTER_UNIQUE, "Pointer to Remote Dsa Address (uint16)",hf_drsuapi_drsuapi_DsReplicaOp_remote_dsa_address);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaInfo_udv1_, NDR_POINTER_UNIQUE, "Pointer to Udv1 (drsuapi_DsReplicaCursorCtrEx)",hf_drsuapi_drsuapi_DsReplicaInfo_udv1);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaOp_remote_dsa_address_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaInfo_udv1_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- char *data;
-
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaOp_remote_dsa_address, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ offset = drsuapi_dissect_struct_DsReplicaCursorCtrEx(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaInfo_udv1,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaOp_nc_obj_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaInfo_srvoutgoingcalls(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaOp_nc_obj_guid, NULL);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaInfo_srvoutgoingcalls_, NDR_POINTER_UNIQUE, "Pointer to Srvoutgoingcalls (drsuapi_DsReplica06Ctr)",hf_drsuapi_drsuapi_DsReplicaInfo_srvoutgoingcalls);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaOp_remote_dsa_obj_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaInfo_srvoutgoingcalls_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaOp_remote_dsa_obj_guid, NULL);
+ offset = drsuapi_dissect_struct_DsReplica06Ctr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaInfo_srvoutgoingcalls,0);
return offset;
}
-int
-drsuapi_dissect_struct_DsReplicaOp(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+static int
+drsuapi_dissect_DsReplicaInfo(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
-
- ALIGN_TO_5_BYTES;
+ guint32 level;
old_offset = offset;
-
if (parent_tree) {
- item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaOp);
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsReplicaInfo, &item, "drsuapi_DsReplicaInfo");
}
- offset = drsuapi_dissect_element_DsReplicaOp_operation_start(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
+ ALIGN_TO_5_BYTES;
- offset = drsuapi_dissect_element_DsReplicaOp_serial_num(tvb, offset, pinfo, tree, di, drep);
+ switch(level) {
+ case DRSUAPI_DS_REPLICA_INFO_NEIGHBORS:
+ offset = drsuapi_dissect_element_DsReplicaInfo_neighbours(tvb, offset, pinfo, tree, di, drep);
+ break;
- offset = drsuapi_dissect_element_DsReplicaOp_priority(tvb, offset, pinfo, tree, di, drep);
+ case DRSUAPI_DS_REPLICA_INFO_CURSORS:
+ offset = drsuapi_dissect_element_DsReplicaInfo_cursors(tvb, offset, pinfo, tree, di, drep);
+ break;
- offset = drsuapi_dissect_element_DsReplicaOp_operation_type(tvb, offset, pinfo, tree, di, drep);
+ case DRSUAPI_DS_REPLICA_INFO_OBJ_METADATA:
+ offset = drsuapi_dissect_element_DsReplicaInfo_objmetadata(tvb, offset, pinfo, tree, di, drep);
+ break;
- offset = drsuapi_dissect_element_DsReplicaOp_options(tvb, offset, pinfo, tree, di, drep);
+ case DRSUAPI_DS_REPLICA_INFO_KCC_DSA_CONNECT_FAILURES:
+ offset = drsuapi_dissect_element_DsReplicaInfo_connectfailures(tvb, offset, pinfo, tree, di, drep);
+ break;
- offset = drsuapi_dissect_element_DsReplicaOp_nc_dn(tvb, offset, pinfo, tree, di, drep);
+ case DRSUAPI_DS_REPLICA_INFO_KCC_DSA_LINK_FAILURES:
+ offset = drsuapi_dissect_element_DsReplicaInfo_linkfailures(tvb, offset, pinfo, tree, di, drep);
+ break;
- offset = drsuapi_dissect_element_DsReplicaOp_remote_dsa_obj_dn(tvb, offset, pinfo, tree, di, drep);
+ case DRSUAPI_DS_REPLICA_INFO_PENDING_OPS:
+ offset = drsuapi_dissect_element_DsReplicaInfo_pendingops(tvb, offset, pinfo, tree, di, drep);
+ break;
- offset = drsuapi_dissect_element_DsReplicaOp_remote_dsa_address(tvb, offset, pinfo, tree, di, drep);
+ case DRSUAPI_DS_REPLICA_INFO_ATTRIBUTE_VALUE_METADATA:
+ offset = drsuapi_dissect_element_DsReplicaInfo_attrvalmetadata(tvb, offset, pinfo, tree, di, drep);
+ break;
- offset = drsuapi_dissect_element_DsReplicaOp_nc_obj_guid(tvb, offset, pinfo, tree, di, drep);
+ case DRSUAPI_DS_REPLICA_INFO_CURSORS2:
+ offset = drsuapi_dissect_element_DsReplicaInfo_cursors2(tvb, offset, pinfo, tree, di, drep);
+ break;
- offset = drsuapi_dissect_element_DsReplicaOp_remote_dsa_obj_guid(tvb, offset, pinfo, tree, di, drep);
+ case DRSUAPI_DS_REPLICA_INFO_CURSORS3:
+ offset = drsuapi_dissect_element_DsReplicaInfo_cursors3(tvb, offset, pinfo, tree, di, drep);
+ break;
+
+ case DRSUAPI_DS_REPLICA_INFO_OBJ_METADATA2:
+ offset = drsuapi_dissect_element_DsReplicaInfo_objmetadata2(tvb, offset, pinfo, tree, di, drep);
+ break;
+ case DRSUAPI_DS_REPLICA_INFO_ATTRIBUTE_VALUE_METADATA2:
+ offset = drsuapi_dissect_element_DsReplicaInfo_attrvalmetadata2(tvb, offset, pinfo, tree, di, drep);
+ break;
- proto_item_set_len(item, offset-old_offset);
+ case DRSUAPI_DS_REPLICA_INFO_REPSTO:
+ offset = drsuapi_dissect_element_DsReplicaInfo_repsto(tvb, offset, pinfo, tree, di, drep);
+ break;
+ case DRSUAPI_DS_REPLICA_INFO_CLIENT_CONTEXTS:
+ offset = drsuapi_dissect_element_DsReplicaInfo_clientctx(tvb, offset, pinfo, tree, di, drep);
+ break;
- if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_5_BYTES;
+ case DRSUAPI_DS_REPLICA_INFO_UPTODATE_VECTOR_V1:
+ offset = drsuapi_dissect_element_DsReplicaInfo_udv1(tvb, offset, pinfo, tree, di, drep);
+ break;
+
+ case DRSUAPI_DS_REPLICA_INFO_SERVER_OUTGOING_CALLS:
+ offset = drsuapi_dissect_element_DsReplicaInfo_srvoutgoingcalls(tvb, offset, pinfo, tree, di, drep);
+ break;
}
+ proto_item_set_len(item, offset-old_offset);
+
return offset;
}
-
/* IDL: struct { */
-/* IDL: NTTIME time; */
-/* IDL: uint32 count; */
-/* IDL: [size_is(count)] drsuapi_DsReplicaOp array[*]; */
+/* IDL: [range(0,10000)] uint32 num_entries; */
+/* IDL: [size_is(num_entries)] [unique(1)] drsuapi_DsGetMembershipsCtr1 **ctrl_array; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaOpCtr_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMemberships2Ctr1_num_entries(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaOpCtr_time);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetMemberships2Ctr1_num_entries, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaOpCtr_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMemberships2Ctr1_ctrl_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaOpCtr_count, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMemberships2Ctr1_ctrl_array_, NDR_POINTER_UNIQUE, "Pointer to Ctrl Array (drsuapi_DsGetMembershipsCtr1)",hf_drsuapi_drsuapi_DsGetMemberships2Ctr1_ctrl_array);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaOpCtr_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMemberships2Ctr1_ctrl_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaOpCtr_array_);
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMemberships2Ctr1_ctrl_array__);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaOpCtr_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMemberships2Ctr1_ctrl_array__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaOp(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaOpCtr_array,0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMemberships2Ctr1_ctrl_array___, NDR_POINTER_UNIQUE, "Pointer to Ctrl Array (drsuapi_DsGetMembershipsCtr1)",hf_drsuapi_drsuapi_DsGetMemberships2Ctr1_ctrl_array);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsGetMemberships2Ctr1_ctrl_array___(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_DsGetMembershipsCtr1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetMemberships2Ctr1_ctrl_array,0);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaOpCtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsGetMemberships2Ctr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaOpCtr);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetMemberships2Ctr1);
}
- offset = drsuapi_dissect_element_DsReplicaOpCtr_time(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaOpCtr_count(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetMemberships2Ctr1_num_entries(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaOpCtr_array(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetMemberships2Ctr1_ctrl_array(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
}
-/* IDL: struct { */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *attribute_name; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *object_dn; */
-/* IDL: [value(ndr_size_DATA_BLOB(0,binary,0))] uint32 __ndr_size_binary; */
-/* IDL: [unique(1)] DATA_BLOB *binary; */
-/* IDL: NTTIME deleted; */
-/* IDL: NTTIME created; */
-/* IDL: uint32 version; */
-/* IDL: NTTIME originating_change_time; */
-/* IDL: GUID originating_invocation_id; */
-/* IDL: hyper originating_usn; */
-/* IDL: hyper local_usn; */
+/* IDL: [switch_type(uint32)] union { */
+/* IDL: [case(1)] [case(1)] drsuapi_DsGetMembershipsCtr1 ctr1; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaAttrValMetaData_attribute_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAttrValMetaData_attribute_name_, NDR_POINTER_UNIQUE, "Pointer to Attribute Name (uint16)",hf_drsuapi_drsuapi_DsReplicaAttrValMetaData_attribute_name);
-
- return offset;
-}
-
-static int
-drsuapi_dissect_element_DsReplicaAttrValMetaData_attribute_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- char *data;
-
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaAttrValMetaData_attribute_name, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
-
- return offset;
-}
-
-static int
-drsuapi_dissect_element_DsReplicaAttrValMetaData_object_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAttrValMetaData_object_dn_, NDR_POINTER_UNIQUE, "Pointer to Object Dn (uint16)",hf_drsuapi_drsuapi_DsReplicaAttrValMetaData_object_dn);
-
- return offset;
-}
-
-static int
-drsuapi_dissect_element_DsReplicaAttrValMetaData_object_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- char *data;
-
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaAttrValMetaData_object_dn, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
-
- return offset;
-}
-
-static int
-drsuapi_dissect_element_DsReplicaAttrValMetaData___ndr_size_binary(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData___ndr_size_binary, 0);
-
- return offset;
-}
-
-static int
-drsuapi_dissect_element_DsReplicaAttrValMetaData_binary(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMemberships2Ctr_ctr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAttrValMetaData_binary_, NDR_POINTER_UNIQUE, "Pointer to Binary (DATA_BLOB)",hf_drsuapi_drsuapi_DsReplicaAttrValMetaData_binary);
+ offset = drsuapi_dissect_struct_DsGetMembershipsCtr1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetMemberships2Ctr_ctr1,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAttrValMetaData_binary_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsGetMemberships2Ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- offset = dissect_ndr_datablob(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData_binary, 0);
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+ guint32 level;
- return offset;
-}
+ old_offset = offset;
+ if (parent_tree) {
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsGetMemberships2Ctr, &item, "drsuapi_DsGetMemberships2Ctr");
+ }
-static int
-drsuapi_dissect_element_DsReplicaAttrValMetaData_deleted(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData_deleted);
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
+ ALIGN_TO_5_BYTES;
- return offset;
-}
+ switch(level) {
+ case 1:
+ offset = drsuapi_dissect_element_DsGetMemberships2Ctr_ctr1(tvb, offset, pinfo, tree, di, drep);
+ break;
+ }
+ proto_item_set_len(item, offset-old_offset);
-static int
-drsuapi_dissect_element_DsReplicaAttrValMetaData_created(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData_created);
return offset;
}
+/* IDL: struct { */
+/* IDL: [range(1,10000)] uint32 num_req; */
+/* IDL: [size_is(num_req)] [unique(1)] drsuapi_DsGetMembershipsRequest1 **req_array; */
+/* IDL: } */
+
static int
-drsuapi_dissect_element_DsReplicaAttrValMetaData_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMemberships2Request1_num_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData_version, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetMemberships2Request1_num_req, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAttrValMetaData_originating_change_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMemberships2Request1_req_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData_originating_change_time);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMemberships2Request1_req_array_, NDR_POINTER_UNIQUE, "Pointer to Req Array (drsuapi_DsGetMembershipsRequest1)",hf_drsuapi_drsuapi_DsGetMemberships2Request1_req_array);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAttrValMetaData_originating_invocation_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMemberships2Request1_req_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData_originating_invocation_id, NULL);
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMemberships2Request1_req_array__);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAttrValMetaData_originating_usn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMemberships2Request1_req_array__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData_originating_usn, NULL);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMemberships2Request1_req_array___, NDR_POINTER_UNIQUE, "Pointer to Req Array (drsuapi_DsGetMembershipsRequest1)",hf_drsuapi_drsuapi_DsGetMemberships2Request1_req_array);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAttrValMetaData_local_usn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMemberships2Request1_req_array___(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData_local_usn, NULL);
+ offset = drsuapi_dissect_struct_DsGetMembershipsRequest1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetMemberships2Request1_req_array,0);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaAttrValMetaData(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsGetMemberships2Request1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_5_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaAttrValMetaData);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetMemberships2Request1);
}
- offset = drsuapi_dissect_element_DsReplicaAttrValMetaData_attribute_name(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaAttrValMetaData_object_dn(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaAttrValMetaData___ndr_size_binary(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaAttrValMetaData_binary(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaAttrValMetaData_deleted(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaAttrValMetaData_created(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaAttrValMetaData_version(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaAttrValMetaData_originating_change_time(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaAttrValMetaData_originating_invocation_id(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaAttrValMetaData_originating_usn(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetMemberships2Request1_num_req(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaAttrValMetaData_local_usn(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetMemberships2Request1_req_array(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_5_BYTES;
}
return offset;
}
-/* IDL: struct { */
-/* IDL: uint32 count; */
-/* IDL: uint32 enumeration_context; */
-/* IDL: [size_is(count)] drsuapi_DsReplicaAttrValMetaData array[*]; */
+/* IDL: [switch_type(uint32)] union { */
+/* IDL: [case(1)] [case(1)] drsuapi_DsGetMemberships2Request1 req1; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaAttrValMetaDataCtr_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMemberships2Request_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaDataCtr_count, 0);
+ offset = drsuapi_dissect_struct_DsGetMemberships2Request1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetMemberships2Request_req1,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAttrValMetaDataCtr_enumeration_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsGetMemberships2Request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaDataCtr_enumeration_context, 0);
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+ guint32 level;
+
+ old_offset = offset;
+ if (parent_tree) {
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsGetMemberships2Request, &item, "drsuapi_DsGetMemberships2Request");
+ }
+
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
+ ALIGN_TO_5_BYTES;
+
+ switch(level) {
+ case 1:
+ offset = drsuapi_dissect_element_DsGetMemberships2Request_req1(tvb, offset, pinfo, tree, di, drep);
+ break;
+ }
+ proto_item_set_len(item, offset-old_offset);
+
return offset;
}
+/* IDL: struct { */
+/* IDL: WERROR error_code; */
+/* IDL: uint32 site_cost; */
+/* IDL: } */
+
static int
-drsuapi_dissect_element_DsReplicaAttrValMetaDataCtr_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsSiteCostInfo_error_code(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAttrValMetaDataCtr_array_);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsSiteCostInfo_error_code, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAttrValMetaDataCtr_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsSiteCostInfo_site_cost(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaAttrValMetaData(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaAttrValMetaDataCtr_array,0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsSiteCostInfo_site_cost, 0);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaAttrValMetaDataCtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_DsSiteCostInfo(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_4_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaAttrValMetaDataCtr);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsSiteCostInfo);
}
- offset = drsuapi_dissect_element_DsReplicaAttrValMetaDataCtr_count(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaAttrValMetaDataCtr_enumeration_context(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsSiteCostInfo_error_code(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaAttrValMetaDataCtr_array(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsSiteCostInfo_site_cost(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_4_BYTES;
}
return offset;
/* IDL: struct { */
-/* IDL: uint32 count; */
-/* IDL: uint32 enumeration_context; */
-/* IDL: [size_is(count)] drsuapi_DsReplicaCursor2 array[*]; */
+/* IDL: [range(0,10000)] uint32 num_info; */
+/* IDL: [size_is(num_info)] [unique(1)] drsuapi_DsSiteCostInfo *info; */
+/* IDL: [value(0)] uint32 flags_reserved; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaCursor2Ctr_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_QuerySitesByCostCtr1_num_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursor2Ctr_count, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_QuerySitesByCostCtr1_num_info, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaCursor2Ctr_enumeration_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_QuerySitesByCostCtr1_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursor2Ctr_enumeration_context, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_QuerySitesByCostCtr1_info_, NDR_POINTER_UNIQUE, "Pointer to Info (drsuapi_DsSiteCostInfo)",hf_drsuapi_drsuapi_QuerySitesByCostCtr1_info);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaCursor2Ctr_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_QuerySitesByCostCtr1_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaCursor2Ctr_array_);
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_QuerySitesByCostCtr1_info__);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaCursor2Ctr_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_QuerySitesByCostCtr1_info__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaCursor2(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaCursor2Ctr_array,0);
+ offset = drsuapi_dissect_struct_DsSiteCostInfo(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_QuerySitesByCostCtr1_info,0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_QuerySitesByCostCtr1_flags_reserved(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_QuerySitesByCostCtr1_flags_reserved, 0);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaCursor2Ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_QuerySitesByCostCtr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_5_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaCursor2Ctr);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_QuerySitesByCostCtr1);
}
- offset = drsuapi_dissect_element_DsReplicaCursor2Ctr_count(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_QuerySitesByCostCtr1_num_info(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaCursor2Ctr_enumeration_context(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_QuerySitesByCostCtr1_info(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaCursor2Ctr_array(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_QuerySitesByCostCtr1_flags_reserved(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_5_BYTES;
}
return offset;
}
+/* IDL: [switch_type(uint32)] union { */
+/* IDL: [case(1)] [case(1)] drsuapi_QuerySitesByCostCtr1 ctr1; */
+/* IDL: } */
+
+static int
+drsuapi_dissect_element_QuerySitesByCostCtr_ctr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_QuerySitesByCostCtr1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_QuerySitesByCostCtr_ctr1,0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_QuerySitesByCostCtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+{
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+ guint32 level;
+
+ old_offset = offset;
+ if (parent_tree) {
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_QuerySitesByCostCtr, &item, "drsuapi_QuerySitesByCostCtr");
+ }
+
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
+ ALIGN_TO_5_BYTES;
+
+ switch(level) {
+ case 1:
+ offset = drsuapi_dissect_element_QuerySitesByCostCtr_ctr1(tvb, offset, pinfo, tree, di, drep);
+ break;
+ }
+ proto_item_set_len(item, offset-old_offset);
+
+
+ return offset;
+}
+
/* IDL: struct { */
-/* IDL: GUID source_dsa_invocation_id; */
-/* IDL: hyper highest_usn; */
-/* IDL: NTTIME last_sync_success; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *source_dsa_obj_dn; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *site_from; */
+/* IDL: [range(1,10000)] uint32 num_req; */
+/* IDL: [charset(UTF16)] [size_is(num_req)] [unique(1)] uint16 **site_to; */
+/* IDL: uint32 flags; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaCursor3_source_dsa_invocation_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_QuerySitesByCostRequest1_site_from(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursor3_source_dsa_invocation_id, NULL);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_QuerySitesByCostRequest1_site_from_, NDR_POINTER_UNIQUE, "Pointer to Site From (uint16)",hf_drsuapi_drsuapi_QuerySitesByCostRequest1_site_from);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaCursor3_highest_usn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_QuerySitesByCostRequest1_site_from_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursor3_highest_usn, NULL);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_QuerySitesByCostRequest1_site_from, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaCursor3_last_sync_success(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_QuerySitesByCostRequest1_num_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursor3_last_sync_success);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_QuerySitesByCostRequest1_num_req, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaCursor3_source_dsa_obj_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_QuerySitesByCostRequest1_site_to(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaCursor3_source_dsa_obj_dn_, NDR_POINTER_UNIQUE, "Pointer to Source Dsa Obj Dn (uint16)",hf_drsuapi_drsuapi_DsReplicaCursor3_source_dsa_obj_dn);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_QuerySitesByCostRequest1_site_to_, NDR_POINTER_UNIQUE, "Pointer to Site To (uint16)",hf_drsuapi_drsuapi_QuerySitesByCostRequest1_site_to);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaCursor3_source_dsa_obj_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_QuerySitesByCostRequest1_site_to_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_QuerySitesByCostRequest1_site_to__);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_QuerySitesByCostRequest1_site_to__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_QuerySitesByCostRequest1_site_to___, NDR_POINTER_UNIQUE, "Pointer to Site To (uint16)",hf_drsuapi_drsuapi_QuerySitesByCostRequest1_site_to);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_QuerySitesByCostRequest1_site_to___(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
char *data;
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaCursor3_source_dsa_obj_dn, FALSE, &data);
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_QuerySitesByCostRequest1_site_to, FALSE, &data);
proto_item_append_text(tree, ": %s", data);
return offset;
}
+static int
+drsuapi_dissect_element_QuerySitesByCostRequest1_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_QuerySitesByCostRequest1_flags, 0);
+
+ return offset;
+}
+
int
-drsuapi_dissect_struct_DsReplicaCursor3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_QuerySitesByCostRequest1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_5_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaCursor3);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_QuerySitesByCostRequest1);
}
- offset = drsuapi_dissect_element_DsReplicaCursor3_source_dsa_invocation_id(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_QuerySitesByCostRequest1_site_from(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaCursor3_highest_usn(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_QuerySitesByCostRequest1_num_req(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaCursor3_last_sync_success(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_QuerySitesByCostRequest1_site_to(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaCursor3_source_dsa_obj_dn(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_QuerySitesByCostRequest1_flags(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_5_BYTES;
}
return offset;
}
-/* IDL: struct { */
-/* IDL: uint32 count; */
-/* IDL: uint32 enumeration_context; */
-/* IDL: [size_is(count)] drsuapi_DsReplicaCursor3 array[*]; */
+/* IDL: [switch_type(uint32)] union { */
+/* IDL: [case(1)] [case(1)] drsuapi_QuerySitesByCostRequest1 req1; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaCursor3Ctr_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_QuerySitesByCostRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursor3Ctr_count, 0);
+ offset = drsuapi_dissect_struct_QuerySitesByCostRequest1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_QuerySitesByCostRequest_req1,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaCursor3Ctr_enumeration_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_QuerySitesByCostRequest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaCursor3Ctr_enumeration_context, 0);
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+ guint32 level;
- return offset;
-}
+ old_offset = offset;
+ if (parent_tree) {
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_QuerySitesByCostRequest, &item, "drsuapi_QuerySitesByCostRequest");
+ }
+
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
+ ALIGN_TO_5_BYTES;
+
+ switch(level) {
+ case 1:
+ offset = drsuapi_dissect_element_QuerySitesByCostRequest_req1(tvb, offset, pinfo, tree, di, drep);
+ break;
+ }
+ proto_item_set_len(item, offset-old_offset);
-static int
-drsuapi_dissect_element_DsReplicaCursor3Ctr_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaCursor3Ctr_array_);
return offset;
}
+/* IDL: struct { */
+/* IDL: uint32 reserved; */
+/* IDL: } */
+
static int
-drsuapi_dissect_element_DsReplicaCursor3Ctr_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_InitDemotionRequest1_reserved(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaCursor3(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaCursor3Ctr_array,0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_InitDemotionRequest1_reserved, 0);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaCursor3Ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_InitDemotionRequest1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_4_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaCursor3Ctr);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_InitDemotionRequest1);
}
- offset = drsuapi_dissect_element_DsReplicaCursor3Ctr_count(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaCursor3Ctr_enumeration_context(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaCursor3Ctr_array(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_InitDemotionRequest1_reserved(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_4_BYTES;
}
return offset;
}
-/* IDL: struct { */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *attribute_name; */
-/* IDL: uint32 version; */
-/* IDL: NTTIME originating_change_time; */
-/* IDL: GUID originating_invocation_id; */
-/* IDL: hyper originating_usn; */
-/* IDL: hyper local_usn; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *originating_dsa_dn; */
+/* IDL: [switch_type(uint32)] union { */
+/* IDL: [case(1)] [case(1)] drsuapi_InitDemotionRequest1 req1; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaObjMetaData2_attribute_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_InitDemotionRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaObjMetaData2_attribute_name_, NDR_POINTER_UNIQUE, "Pointer to Attribute Name (uint16)",hf_drsuapi_drsuapi_DsReplicaObjMetaData2_attribute_name);
+ offset = drsuapi_dissect_struct_InitDemotionRequest1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_InitDemotionRequest_req1,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObjMetaData2_attribute_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_InitDemotionRequest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- char *data;
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+ guint32 level;
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaObjMetaData2_attribute_name, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ old_offset = offset;
+ if (parent_tree) {
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_InitDemotionRequest, &item, "drsuapi_InitDemotionRequest");
+ }
- return offset;
-}
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
+ ALIGN_TO_4_BYTES;
+
+ switch(level) {
+ case 1:
+ offset = drsuapi_dissect_element_InitDemotionRequest_req1(tvb, offset, pinfo, tree, di, drep);
+ break;
+ }
+ proto_item_set_len(item, offset-old_offset);
-static int
-drsuapi_dissect_element_DsReplicaObjMetaData2_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjMetaData2_version, 0);
return offset;
}
+/* IDL: struct { */
+/* IDL: WERROR op_error; */
+/* IDL: } */
+
static int
-drsuapi_dissect_element_DsReplicaObjMetaData2_originating_change_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_InitDemotionCtr1_op_error(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjMetaData2_originating_change_time);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_InitDemotionCtr1_op_error, 0);
return offset;
}
-static int
-drsuapi_dissect_element_DsReplicaObjMetaData2_originating_invocation_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+int
+drsuapi_dissect_struct_InitDemotionCtr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjMetaData2_originating_invocation_id, NULL);
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
- return offset;
-}
+ ALIGN_TO_4_BYTES;
-static int
-drsuapi_dissect_element_DsReplicaObjMetaData2_originating_usn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjMetaData2_originating_usn, NULL);
+ old_offset = offset;
- return offset;
-}
+ if (parent_tree) {
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_InitDemotionCtr1);
+ }
-static int
-drsuapi_dissect_element_DsReplicaObjMetaData2_local_usn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjMetaData2_local_usn, NULL);
+ offset = drsuapi_dissect_element_InitDemotionCtr1_op_error(tvb, offset, pinfo, tree, di, drep);
- return offset;
-}
-static int
-drsuapi_dissect_element_DsReplicaObjMetaData2_originating_dsa_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaObjMetaData2_originating_dsa_dn_, NDR_POINTER_UNIQUE, "Pointer to Originating Dsa Dn (uint16)",hf_drsuapi_drsuapi_DsReplicaObjMetaData2_originating_dsa_dn);
+ proto_item_set_len(item, offset-old_offset);
+
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_4_BYTES;
+ }
return offset;
}
+
+/* IDL: [switch_type(uint32)] union { */
+/* IDL: [case(1)] [case(1)] drsuapi_InitDemotionCtr1 ctr1; */
+/* IDL: } */
+
static int
-drsuapi_dissect_element_DsReplicaObjMetaData2_originating_dsa_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_InitDemotionCtr_ctr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- char *data;
-
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaObjMetaData2_originating_dsa_dn, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ offset = drsuapi_dissect_struct_InitDemotionCtr1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_InitDemotionCtr_ctr1,0);
return offset;
}
-int
-drsuapi_dissect_struct_DsReplicaObjMetaData2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+static int
+drsuapi_dissect_InitDemotionCtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
-
- ALIGN_TO_8_BYTES;
+ guint32 level;
old_offset = offset;
-
if (parent_tree) {
- item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaObjMetaData2);
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_InitDemotionCtr, &item, "drsuapi_InitDemotionCtr");
}
- offset = drsuapi_dissect_element_DsReplicaObjMetaData2_attribute_name(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaObjMetaData2_version(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaObjMetaData2_originating_change_time(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaObjMetaData2_originating_invocation_id(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaObjMetaData2_originating_usn(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaObjMetaData2_local_usn(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplicaObjMetaData2_originating_dsa_dn(tvb, offset, pinfo, tree, di, drep);
-
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
+ ALIGN_TO_4_BYTES;
+ switch(level) {
+ case 1:
+ offset = drsuapi_dissect_element_InitDemotionCtr_ctr1(tvb, offset, pinfo, tree, di, drep);
+ break;
+ }
proto_item_set_len(item, offset-old_offset);
- if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_8_BYTES;
- }
-
return offset;
}
-
/* IDL: struct { */
-/* IDL: uint32 count; */
-/* IDL: uint32 enumeration_context; */
-/* IDL: [size_is(count)] drsuapi_DsReplicaObjMetaData2 array[*]; */
+/* IDL: uint32 flags; */
+/* IDL: GUID uuid_helper_dest; */
+/* IDL: [ref] drsuapi_DsReplicaObjectIdentifier *naming_context; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaObjMetaData2Ctr_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_ReplicaDemotionRequest1_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjMetaData2Ctr_count, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_ReplicaDemotionRequest1_flags, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObjMetaData2Ctr_enumeration_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_ReplicaDemotionRequest1_uuid_helper_dest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaObjMetaData2Ctr_enumeration_context, 0);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_ReplicaDemotionRequest1_uuid_helper_dest, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObjMetaData2Ctr_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_ReplicaDemotionRequest1_naming_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaObjMetaData2Ctr_array_);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_ReplicaDemotionRequest1_naming_context_, NDR_POINTER_REF, "Pointer to Naming Context (drsuapi_DsReplicaObjectIdentifier)",hf_drsuapi_drsuapi_ReplicaDemotionRequest1_naming_context);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaObjMetaData2Ctr_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_ReplicaDemotionRequest1_naming_context_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaObjMetaData2(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaObjMetaData2Ctr_array,0);
+ offset = drsuapi_dissect_struct_DsReplicaObjectIdentifier(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_ReplicaDemotionRequest1_naming_context,0);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaObjMetaData2Ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_ReplicaDemotionRequest1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_5_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaObjMetaData2Ctr);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_ReplicaDemotionRequest1);
}
- offset = drsuapi_dissect_element_DsReplicaObjMetaData2Ctr_count(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_ReplicaDemotionRequest1_flags(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaObjMetaData2Ctr_enumeration_context(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_ReplicaDemotionRequest1_uuid_helper_dest(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaObjMetaData2Ctr_array(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_ReplicaDemotionRequest1_naming_context(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_5_BYTES;
}
return offset;
}
-/* IDL: struct { */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *attribute_name; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *object_dn; */
-/* IDL: [value(ndr_size_DATA_BLOB(0,binary,0))] uint32 __ndr_size_binary; */
-/* IDL: [unique(1)] DATA_BLOB *binary; */
-/* IDL: NTTIME deleted; */
-/* IDL: NTTIME created; */
-/* IDL: uint32 version; */
-/* IDL: NTTIME originating_change_time; */
-/* IDL: GUID originating_invocation_id; */
-/* IDL: hyper originating_usn; */
-/* IDL: hyper local_usn; */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *originating_dsa_dn; */
+/* IDL: [switch_type(uint32)] union { */
+/* IDL: [case(1)] [case(1)] drsuapi_ReplicaDemotionRequest1 req1; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaAttrValMetaData2_attribute_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_ReplicaDemotionRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAttrValMetaData2_attribute_name_, NDR_POINTER_UNIQUE, "Pointer to Attribute Name (uint16)",hf_drsuapi_drsuapi_DsReplicaAttrValMetaData2_attribute_name);
+ offset = drsuapi_dissect_struct_ReplicaDemotionRequest1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_ReplicaDemotionRequest_req1,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAttrValMetaData2_attribute_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_ReplicaDemotionRequest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- char *data;
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+ guint32 level;
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaAttrValMetaData2_attribute_name, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ old_offset = offset;
+ if (parent_tree) {
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_ReplicaDemotionRequest, &item, "drsuapi_ReplicaDemotionRequest");
+ }
- return offset;
-}
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
+ ALIGN_TO_5_BYTES;
+
+ switch(level) {
+ case 1:
+ offset = drsuapi_dissect_element_ReplicaDemotionRequest_req1(tvb, offset, pinfo, tree, di, drep);
+ break;
+ }
+ proto_item_set_len(item, offset-old_offset);
-static int
-drsuapi_dissect_element_DsReplicaAttrValMetaData2_object_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAttrValMetaData2_object_dn_, NDR_POINTER_UNIQUE, "Pointer to Object Dn (uint16)",hf_drsuapi_drsuapi_DsReplicaAttrValMetaData2_object_dn);
return offset;
}
+/* IDL: struct { */
+/* IDL: WERROR op_error; */
+/* IDL: } */
+
static int
-drsuapi_dissect_element_DsReplicaAttrValMetaData2_object_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_ReplicaDemotionCtr1_op_error(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- char *data;
-
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaAttrValMetaData2_object_dn, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_ReplicaDemotionCtr1_op_error, 0);
return offset;
}
-static int
-drsuapi_dissect_element_DsReplicaAttrValMetaData2___ndr_size_binary(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+int
+drsuapi_dissect_struct_ReplicaDemotionCtr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData2___ndr_size_binary, 0);
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
- return offset;
-}
+ ALIGN_TO_4_BYTES;
-static int
-drsuapi_dissect_element_DsReplicaAttrValMetaData2_binary(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAttrValMetaData2_binary_, NDR_POINTER_UNIQUE, "Pointer to Binary (DATA_BLOB)",hf_drsuapi_drsuapi_DsReplicaAttrValMetaData2_binary);
+ old_offset = offset;
- return offset;
-}
+ if (parent_tree) {
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_ReplicaDemotionCtr1);
+ }
-static int
-drsuapi_dissect_element_DsReplicaAttrValMetaData2_binary_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_datablob(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData2_binary, 0);
+ offset = drsuapi_dissect_element_ReplicaDemotionCtr1_op_error(tvb, offset, pinfo, tree, di, drep);
- return offset;
-}
-static int
-drsuapi_dissect_element_DsReplicaAttrValMetaData2_deleted(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData2_deleted);
+ proto_item_set_len(item, offset-old_offset);
- return offset;
-}
-static int
-drsuapi_dissect_element_DsReplicaAttrValMetaData2_created(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData2_created);
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_4_BYTES;
+ }
return offset;
}
-static int
-drsuapi_dissect_element_DsReplicaAttrValMetaData2_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData2_version, 0);
- return offset;
-}
+/* IDL: [switch_type(uint32)] union { */
+/* IDL: [case(1)] [case(1)] drsuapi_ReplicaDemotionCtr1 ctr1; */
+/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaAttrValMetaData2_originating_change_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_ReplicaDemotionCtr_ctr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData2_originating_change_time);
+ offset = drsuapi_dissect_struct_ReplicaDemotionCtr1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_ReplicaDemotionCtr_ctr1,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAttrValMetaData2_originating_invocation_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_ReplicaDemotionCtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData2_originating_invocation_id, NULL);
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+ guint32 level;
+
+ old_offset = offset;
+ if (parent_tree) {
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_ReplicaDemotionCtr, &item, "drsuapi_ReplicaDemotionCtr");
+ }
+
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
+ ALIGN_TO_4_BYTES;
+
+ switch(level) {
+ case 1:
+ offset = drsuapi_dissect_element_ReplicaDemotionCtr_ctr1(tvb, offset, pinfo, tree, di, drep);
+ break;
+ }
+ proto_item_set_len(item, offset-old_offset);
+
return offset;
}
+/* IDL: struct { */
+/* IDL: uint32 operations; */
+/* IDL: GUID uuid_helper_dest; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *script_base; */
+/* IDL: } */
+
static int
-drsuapi_dissect_element_DsReplicaAttrValMetaData2_originating_usn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_FinishDemotionRequest1_operations(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData2_originating_usn, NULL);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_FinishDemotionRequest1_operations, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAttrValMetaData2_local_usn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_FinishDemotionRequest1_uuid_helper_dest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData2_local_usn, NULL);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_FinishDemotionRequest1_uuid_helper_dest, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAttrValMetaData2_originating_dsa_dn(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_FinishDemotionRequest1_script_base(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAttrValMetaData2_originating_dsa_dn_, NDR_POINTER_UNIQUE, "Pointer to Originating Dsa Dn (uint16)",hf_drsuapi_drsuapi_DsReplicaAttrValMetaData2_originating_dsa_dn);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_FinishDemotionRequest1_script_base_, NDR_POINTER_UNIQUE, "Pointer to Script Base (uint16)",hf_drsuapi_drsuapi_FinishDemotionRequest1_script_base);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAttrValMetaData2_originating_dsa_dn_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_FinishDemotionRequest1_script_base_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
char *data;
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplicaAttrValMetaData2_originating_dsa_dn, FALSE, &data);
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_FinishDemotionRequest1_script_base, FALSE, &data);
proto_item_append_text(tree, ": %s", data);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaAttrValMetaData2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_FinishDemotionRequest1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_5_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaAttrValMetaData2);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_FinishDemotionRequest1);
}
- offset = drsuapi_dissect_element_DsReplicaAttrValMetaData2_attribute_name(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_FinishDemotionRequest1_operations(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaAttrValMetaData2_object_dn(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_FinishDemotionRequest1_uuid_helper_dest(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaAttrValMetaData2___ndr_size_binary(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_FinishDemotionRequest1_script_base(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaAttrValMetaData2_binary(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaAttrValMetaData2_deleted(tvb, offset, pinfo, tree, di, drep);
+ proto_item_set_len(item, offset-old_offset);
- offset = drsuapi_dissect_element_DsReplicaAttrValMetaData2_created(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaAttrValMetaData2_version(tvb, offset, pinfo, tree, di, drep);
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_5_BYTES;
+ }
- offset = drsuapi_dissect_element_DsReplicaAttrValMetaData2_originating_change_time(tvb, offset, pinfo, tree, di, drep);
+ return offset;
+}
- offset = drsuapi_dissect_element_DsReplicaAttrValMetaData2_originating_invocation_id(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaAttrValMetaData2_originating_usn(tvb, offset, pinfo, tree, di, drep);
+/* IDL: [switch_type(uint32)] union { */
+/* IDL: [case(1)] [case(1)] drsuapi_FinishDemotionRequest1 req1; */
+/* IDL: } */
- offset = drsuapi_dissect_element_DsReplicaAttrValMetaData2_local_usn(tvb, offset, pinfo, tree, di, drep);
+static int
+drsuapi_dissect_element_FinishDemotionRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_FinishDemotionRequest1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_FinishDemotionRequest_req1,0);
- offset = drsuapi_dissect_element_DsReplicaAttrValMetaData2_originating_dsa_dn(tvb, offset, pinfo, tree, di, drep);
+ return offset;
+}
+static int
+drsuapi_dissect_FinishDemotionRequest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+{
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+ guint32 level;
- proto_item_set_len(item, offset-old_offset);
+ old_offset = offset;
+ if (parent_tree) {
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_FinishDemotionRequest, &item, "drsuapi_FinishDemotionRequest");
+ }
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
+ ALIGN_TO_5_BYTES;
- if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_8_BYTES;
+ switch(level) {
+ case 1:
+ offset = drsuapi_dissect_element_FinishDemotionRequest_req1(tvb, offset, pinfo, tree, di, drep);
+ break;
}
+ proto_item_set_len(item, offset-old_offset);
+
return offset;
}
-
/* IDL: struct { */
-/* IDL: uint32 count; */
-/* IDL: uint32 enumeration_context; */
-/* IDL: [size_is(count)] drsuapi_DsReplicaAttrValMetaData2 array[*]; */
+/* IDL: uint32 operations_done; */
+/* IDL: uint32 op_failed; */
+/* IDL: WERROR op_error; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaAttrValMetaData2Ctr_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData2Ctr_count, 0);
-
- return offset;
-}
-
-static int
-drsuapi_dissect_element_DsReplicaAttrValMetaData2Ctr_enumeration_context(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_FinishDemotionCtr1_operations_done(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAttrValMetaData2Ctr_enumeration_context, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_FinishDemotionCtr1_operations_done, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAttrValMetaData2Ctr_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_FinishDemotionCtr1_op_failed(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAttrValMetaData2Ctr_array_);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_FinishDemotionCtr1_op_failed, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAttrValMetaData2Ctr_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_FinishDemotionCtr1_op_error(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaAttrValMetaData2(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaAttrValMetaData2Ctr_array,0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_FinishDemotionCtr1_op_error, 0);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaAttrValMetaData2Ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_FinishDemotionCtr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_4_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaAttrValMetaData2Ctr);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_FinishDemotionCtr1);
}
- offset = drsuapi_dissect_element_DsReplicaAttrValMetaData2Ctr_count(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_FinishDemotionCtr1_operations_done(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaAttrValMetaData2Ctr_enumeration_context(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_FinishDemotionCtr1_op_failed(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaAttrValMetaData2Ctr_array(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_FinishDemotionCtr1_op_error(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_4_BYTES;
}
return offset;
}
-/* IDL: struct { */
-/* IDL: hyper u1; */
-/* IDL: uint32 u2; */
-/* IDL: uint32 u3; */
-/* IDL: GUID bind_guid; */
-/* IDL: NTTIME_1sec bind_time; */
-/* IDL: [flag(LIBNDR_FLAG_BIGENDIAN)] ipv4address client_ip_address; */
-/* IDL: uint32 u5; */
+/* IDL: [switch_type(uint32)] union { */
+/* IDL: [case(1)] [case(1)] drsuapi_FinishDemotionCtr1 ctr1; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaConnection04_u1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_FinishDemotionCtr_ctr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaConnection04_u1, NULL);
+ offset = drsuapi_dissect_struct_FinishDemotionCtr1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_FinishDemotionCtr_ctr1,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaConnection04_u2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_FinishDemotionCtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaConnection04_u2, 0);
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+ guint32 level;
- return offset;
-}
+ old_offset = offset;
+ if (parent_tree) {
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_FinishDemotionCtr, &item, "drsuapi_FinishDemotionCtr");
+ }
+
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
+ ALIGN_TO_4_BYTES;
+
+ switch(level) {
+ case 1:
+ offset = drsuapi_dissect_element_FinishDemotionCtr_ctr1(tvb, offset, pinfo, tree, di, drep);
+ break;
+ }
+ proto_item_set_len(item, offset-old_offset);
-static int
-drsuapi_dissect_element_DsReplicaConnection04_u3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaConnection04_u3, 0);
return offset;
}
+/* IDL: struct { */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *clone_dc_name; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *site; */
+/* IDL: } */
+
static int
-drsuapi_dissect_element_DsReplicaConnection04_bind_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_AddCloneDCRequest1_clone_dc_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaConnection04_bind_guid, NULL);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_AddCloneDCRequest1_clone_dc_name_, NDR_POINTER_UNIQUE, "Pointer to Clone Dc Name (uint16)",hf_drsuapi_drsuapi_AddCloneDCRequest1_clone_dc_name);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaConnection04_bind_time(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_AddCloneDCRequest1_clone_dc_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaConnection04_bind_time);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_AddCloneDCRequest1_clone_dc_name, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaConnection04_client_ip_address(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_AddCloneDCRequest1_site(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- proto_tree_add_item(tree, hf_drsuapi_drsuapi_DsReplicaConnection04_client_ip_address, tvb, offset, 4, ENC_BIG_ENDIAN); offset += 4;
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_AddCloneDCRequest1_site_, NDR_POINTER_UNIQUE, "Pointer to Site (uint16)",hf_drsuapi_drsuapi_AddCloneDCRequest1_site);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaConnection04_u5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_AddCloneDCRequest1_site_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaConnection04_u5, 0);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_AddCloneDCRequest1_site, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaConnection04(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_AddCloneDCRequest1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_5_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaConnection04);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_AddCloneDCRequest1);
}
- offset = drsuapi_dissect_element_DsReplicaConnection04_u1(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_AddCloneDCRequest1_clone_dc_name(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_AddCloneDCRequest1_site(tvb, offset, pinfo, tree, di, drep);
+
+
+ proto_item_set_len(item, offset-old_offset);
+
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_5_BYTES;
+ }
+
+ return offset;
+}
+
+
+/* IDL: [switch_type(uint32)] union { */
+/* IDL: [case(1)] [case(1)] drsuapi_AddCloneDCRequest1 req1; */
+/* IDL: } */
+
+static int
+drsuapi_dissect_element_AddCloneDCRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_struct_AddCloneDCRequest1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_AddCloneDCRequest_req1,0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_AddCloneDCRequest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+{
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+ guint32 level;
+
+ old_offset = offset;
+ if (parent_tree) {
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_AddCloneDCRequest, &item, "drsuapi_AddCloneDCRequest");
+ }
+
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
+ ALIGN_TO_5_BYTES;
- offset = drsuapi_dissect_element_DsReplicaConnection04_u2(tvb, offset, pinfo, tree, di, drep);
+ switch(level) {
+ case 1:
+ offset = drsuapi_dissect_element_AddCloneDCRequest_req1(tvb, offset, pinfo, tree, di, drep);
+ break;
+ }
+ proto_item_set_len(item, offset-old_offset);
- offset = drsuapi_dissect_element_DsReplicaConnection04_u3(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaConnection04_bind_guid(tvb, offset, pinfo, tree, di, drep);
+ return offset;
+}
- offset = drsuapi_dissect_element_DsReplicaConnection04_bind_time(tvb, offset, pinfo, tree, di, drep);
+/* IDL: struct { */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *clone_dc_name; */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *site; */
+/* IDL: [range(0,1024)] uint32 password_length; */
+/* IDL: [charset(UTF16)] [size_is(password_length)] [unique(1)] uint16 *new_dc_account_password; */
+/* IDL: } */
- offset = drsuapi_dissect_element_DsReplicaConnection04_client_ip_address(tvb, offset, pinfo, tree, di, drep);
+static int
+drsuapi_dissect_element_AddCloneDCCtr1_clone_dc_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_AddCloneDCCtr1_clone_dc_name_, NDR_POINTER_UNIQUE, "Pointer to Clone Dc Name (uint16)",hf_drsuapi_drsuapi_AddCloneDCCtr1_clone_dc_name);
- offset = drsuapi_dissect_element_DsReplicaConnection04_u5(tvb, offset, pinfo, tree, di, drep);
+ return offset;
+}
+static int
+drsuapi_dissect_element_AddCloneDCCtr1_clone_dc_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ char *data;
- proto_item_set_len(item, offset-old_offset);
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_AddCloneDCCtr1_clone_dc_name, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
+ return offset;
+}
- if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_8_BYTES;
- }
+static int
+drsuapi_dissect_element_AddCloneDCCtr1_site(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_AddCloneDCCtr1_site_, NDR_POINTER_UNIQUE, "Pointer to Site (uint16)",hf_drsuapi_drsuapi_AddCloneDCCtr1_site);
return offset;
}
+static int
+drsuapi_dissect_element_AddCloneDCCtr1_site_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ char *data;
-/* IDL: struct { */
-/* IDL: [range(0,10000)] uint32 count; */
-/* IDL: uint32 reserved; */
-/* IDL: [size_is(count)] drsuapi_DsReplicaConnection04 array[*]; */
-/* IDL: } */
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_AddCloneDCCtr1_site, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
+
+ return offset;
+}
static int
-drsuapi_dissect_element_DsReplicaConnection04Ctr_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_AddCloneDCCtr1_password_length(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaConnection04Ctr_count, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_AddCloneDCCtr1_password_length, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaConnection04Ctr_reserved(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_AddCloneDCCtr1_new_dc_account_password(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaConnection04Ctr_reserved, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_AddCloneDCCtr1_new_dc_account_password_, NDR_POINTER_UNIQUE, "Pointer to New Dc Account Password (uint16)",hf_drsuapi_drsuapi_AddCloneDCCtr1_new_dc_account_password);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaConnection04Ctr_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_AddCloneDCCtr1_new_dc_account_password_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaConnection04Ctr_array_);
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_AddCloneDCCtr1_new_dc_account_password__);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaConnection04Ctr_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_AddCloneDCCtr1_new_dc_account_password__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaConnection04(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaConnection04Ctr_array,0);
+ offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_AddCloneDCCtr1_new_dc_account_password, 0);
return offset;
}
int
-drsuapi_dissect_struct_DsReplicaConnection04Ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_AddCloneDCCtr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_5_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplicaConnection04Ctr);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_AddCloneDCCtr1);
}
- offset = drsuapi_dissect_element_DsReplicaConnection04Ctr_count(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_AddCloneDCCtr1_clone_dc_name(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaConnection04Ctr_reserved(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_AddCloneDCCtr1_site(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplicaConnection04Ctr_array(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_AddCloneDCCtr1_password_length(tvb, offset, pinfo, tree, di, drep);
+
+ offset = drsuapi_dissect_element_AddCloneDCCtr1_new_dc_account_password(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_5_BYTES;
}
return offset;
}
-/* IDL: struct { */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *str1; */
-/* IDL: uint32 u1; */
-/* IDL: uint32 u2; */
-/* IDL: uint32 u3; */
-/* IDL: uint32 u4; */
-/* IDL: uint32 u5; */
-/* IDL: hyper u6; */
-/* IDL: uint32 u7; */
+/* IDL: [switch_type(uint32)] union { */
+/* IDL: [case(1)] [case(1)] drsuapi_AddCloneDCCtr1 ctr1; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplica06_str1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_AddCloneDCCtr_ctr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplica06_str1_, NDR_POINTER_UNIQUE, "Pointer to Str1 (uint16)",hf_drsuapi_drsuapi_DsReplica06_str1);
+ offset = drsuapi_dissect_struct_AddCloneDCCtr1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_AddCloneDCCtr_ctr1,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplica06_str1_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_AddCloneDCCtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- char *data;
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+ guint32 level;
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_DsReplica06_str1, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ old_offset = offset;
+ if (parent_tree) {
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_AddCloneDCCtr, &item, "drsuapi_AddCloneDCCtr");
+ }
- return offset;
-}
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
+ ALIGN_TO_5_BYTES;
+
+ switch(level) {
+ case 1:
+ offset = drsuapi_dissect_element_AddCloneDCCtr_ctr1(tvb, offset, pinfo, tree, di, drep);
+ break;
+ }
+ proto_item_set_len(item, offset-old_offset);
-static int
-drsuapi_dissect_element_DsReplica06_u1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplica06_u1, 0);
return offset;
}
+/* IDL: struct { */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *account; */
+/* IDL: [range(0,0xFFFF)] uint32 ngc_key_size; */
+/* IDL: [flag(LIBNDR_PRINT_ARRAY_HEX)] [size_is(ngc_key_size)] [unique(1)] uint8 *ngc_key; */
+/* IDL: } */
+
static int
-drsuapi_dissect_element_DsReplica06_u2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_WriteNgcKeyRequest1_account(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplica06_u2, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_WriteNgcKeyRequest1_account_, NDR_POINTER_UNIQUE, "Pointer to Account (uint16)",hf_drsuapi_drsuapi_WriteNgcKeyRequest1_account);
return offset;
}
static int
-drsuapi_dissect_element_DsReplica06_u3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_WriteNgcKeyRequest1_account_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplica06_u3, 0);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_WriteNgcKeyRequest1_account, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
return offset;
}
static int
-drsuapi_dissect_element_DsReplica06_u4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_WriteNgcKeyRequest1_ngc_key_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplica06_u4, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_WriteNgcKeyRequest1_ngc_key_size, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplica06_u5(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_WriteNgcKeyRequest1_ngc_key(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplica06_u5, 0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_WriteNgcKeyRequest1_ngc_key_, NDR_POINTER_UNIQUE, "Pointer to Ngc Key (uint8)",hf_drsuapi_drsuapi_WriteNgcKeyRequest1_ngc_key);
return offset;
}
static int
-drsuapi_dissect_element_DsReplica06_u6(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_WriteNgcKeyRequest1_ngc_key_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplica06_u6, NULL);
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_WriteNgcKeyRequest1_ngc_key__);
return offset;
}
static int
-drsuapi_dissect_element_DsReplica06_u7(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_WriteNgcKeyRequest1_ngc_key__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplica06_u7, 0);
+ offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_WriteNgcKeyRequest1_ngc_key, 0);
return offset;
}
int
-drsuapi_dissect_struct_DsReplica06(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_WriteNgcKeyRequest1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_5_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplica06);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_WriteNgcKeyRequest1);
}
- offset = drsuapi_dissect_element_DsReplica06_str1(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplica06_u1(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplica06_u2(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplica06_u3(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplica06_u4(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplica06_u5(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_WriteNgcKeyRequest1_account(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplica06_u6(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_WriteNgcKeyRequest1_ngc_key_size(tvb, offset, pinfo, tree, di, drep);
- offset = drsuapi_dissect_element_DsReplica06_u7(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_WriteNgcKeyRequest1_ngc_key(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_5_BYTES;
}
return offset;
}
-/* IDL: struct { */
-/* IDL: [range(0,256)] uint32 count; */
-/* IDL: uint32 reserved; */
-/* IDL: [size_is(count)] drsuapi_DsReplica06 array[*]; */
+/* IDL: [switch_type(uint32)] union { */
+/* IDL: [case(1)] [case(1)] drsuapi_WriteNgcKeyRequest1 req1; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplica06Ctr_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_WriteNgcKeyRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplica06Ctr_count, 0);
+ offset = drsuapi_dissect_struct_WriteNgcKeyRequest1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_WriteNgcKeyRequest_req1,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplica06Ctr_reserved(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_WriteNgcKeyRequest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplica06Ctr_reserved, 0);
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+ guint32 level;
- return offset;
-}
+ old_offset = offset;
+ if (parent_tree) {
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_WriteNgcKeyRequest, &item, "drsuapi_WriteNgcKeyRequest");
+ }
+
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
+ ALIGN_TO_5_BYTES;
+
+ switch(level) {
+ case 1:
+ offset = drsuapi_dissect_element_WriteNgcKeyRequest_req1(tvb, offset, pinfo, tree, di, drep);
+ break;
+ }
+ proto_item_set_len(item, offset-old_offset);
-static int
-drsuapi_dissect_element_DsReplica06Ctr_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplica06Ctr_array_);
return offset;
}
+/* IDL: struct { */
+/* IDL: WERROR ret_val; */
+/* IDL: } */
+
static int
-drsuapi_dissect_element_DsReplica06Ctr_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_WriteNgcKeyCtr1_ret_val(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplica06(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplica06Ctr_array,0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_WriteNgcKeyCtr1_ret_val, 0);
return offset;
}
int
-drsuapi_dissect_struct_DsReplica06Ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_struct_WriteNgcKeyCtr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
int old_offset;
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_4_BYTES;
old_offset = offset;
if (parent_tree) {
item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsReplica06Ctr);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_WriteNgcKeyCtr1);
}
- offset = drsuapi_dissect_element_DsReplica06Ctr_count(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplica06Ctr_reserved(tvb, offset, pinfo, tree, di, drep);
-
- offset = drsuapi_dissect_element_DsReplica06Ctr_array(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_WriteNgcKeyCtr1_ret_val(tvb, offset, pinfo, tree, di, drep);
proto_item_set_len(item, offset-old_offset);
if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_8_BYTES;
+ ALIGN_TO_4_BYTES;
}
return offset;
}
-/* IDL: [switch_type(drsuapi_DsReplicaInfoType)] union { */
-/* IDL: [case(DRSUAPI_DS_REPLICA_INFO_NEIGHBORS)] [case(DRSUAPI_DS_REPLICA_INFO_NEIGHBORS)] [unique(1)] drsuapi_DsReplicaNeighbourCtr *neighbours; */
-/* IDL: [case(DRSUAPI_DS_REPLICA_INFO_CURSORS)] [case(DRSUAPI_DS_REPLICA_INFO_CURSORS)] [unique(1)] drsuapi_DsReplicaCursorCtr *cursors; */
-/* IDL: [case(DRSUAPI_DS_REPLICA_INFO_OBJ_METADATA)] [case(DRSUAPI_DS_REPLICA_INFO_OBJ_METADATA)] [unique(1)] drsuapi_DsReplicaObjMetaDataCtr *objmetadata; */
-/* IDL: [case(DRSUAPI_DS_REPLICA_INFO_KCC_DSA_CONNECT_FAILURES)] [case(DRSUAPI_DS_REPLICA_INFO_KCC_DSA_CONNECT_FAILURES)] [unique(1)] drsuapi_DsReplicaKccDsaFailuresCtr *connectfailures; */
-/* IDL: [case(DRSUAPI_DS_REPLICA_INFO_KCC_DSA_LINK_FAILURES)] [case(DRSUAPI_DS_REPLICA_INFO_KCC_DSA_LINK_FAILURES)] [unique(1)] drsuapi_DsReplicaKccDsaFailuresCtr *linkfailures; */
-/* IDL: [case(DRSUAPI_DS_REPLICA_INFO_PENDING_OPS)] [case(DRSUAPI_DS_REPLICA_INFO_PENDING_OPS)] [unique(1)] drsuapi_DsReplicaOpCtr *pendingops; */
-/* IDL: [case(DRSUAPI_DS_REPLICA_INFO_ATTRIBUTE_VALUE_METADATA)] [case(DRSUAPI_DS_REPLICA_INFO_ATTRIBUTE_VALUE_METADATA)] [unique(1)] drsuapi_DsReplicaAttrValMetaDataCtr *attrvalmetadata; */
-/* IDL: [case(DRSUAPI_DS_REPLICA_INFO_CURSORS2)] [case(DRSUAPI_DS_REPLICA_INFO_CURSORS2)] [unique(1)] drsuapi_DsReplicaCursor2Ctr *cursors2; */
-/* IDL: [case(DRSUAPI_DS_REPLICA_INFO_CURSORS3)] [case(DRSUAPI_DS_REPLICA_INFO_CURSORS3)] [unique(1)] drsuapi_DsReplicaCursor3Ctr *cursors3; */
-/* IDL: [case(DRSUAPI_DS_REPLICA_INFO_OBJ_METADATA2)] [case(DRSUAPI_DS_REPLICA_INFO_OBJ_METADATA2)] [unique(1)] drsuapi_DsReplicaObjMetaData2Ctr *objmetadata2; */
-/* IDL: [case(DRSUAPI_DS_REPLICA_INFO_ATTRIBUTE_VALUE_METADATA2)] [case(DRSUAPI_DS_REPLICA_INFO_ATTRIBUTE_VALUE_METADATA2)] [unique(1)] drsuapi_DsReplicaAttrValMetaData2Ctr *attrvalmetadata2; */
-/* IDL: [case(DRSUAPI_DS_REPLICA_INFO_REPSTO)] [case(DRSUAPI_DS_REPLICA_INFO_REPSTO)] [unique(1)] drsuapi_DsReplicaNeighbourCtr *repsto; */
-/* IDL: [case(DRSUAPI_DS_REPLICA_INFO_CLIENT_CONTEXTS)] [case(DRSUAPI_DS_REPLICA_INFO_CLIENT_CONTEXTS)] [unique(1)] drsuapi_DsReplicaConnection04Ctr *clientctx; */
-/* IDL: [case(DRSUAPI_DS_REPLICA_INFO_UPTODATE_VECTOR_V1)] [case(DRSUAPI_DS_REPLICA_INFO_UPTODATE_VECTOR_V1)] [unique(1)] drsuapi_DsReplicaCursorCtrEx *udv1; */
-/* IDL: [case(DRSUAPI_DS_REPLICA_INFO_SERVER_OUTGOING_CALLS)] [case(DRSUAPI_DS_REPLICA_INFO_SERVER_OUTGOING_CALLS)] [unique(1)] drsuapi_DsReplica06Ctr *srvoutgoingcalls; */
+/* IDL: [switch_type(uint32)] union { */
+/* IDL: [case(1)] [case(1)] drsuapi_WriteNgcKeyCtr1 ctr1; */
/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaInfo_neighbours(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_WriteNgcKeyCtr_ctr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaInfo_neighbours_, NDR_POINTER_UNIQUE, "Pointer to Neighbours (drsuapi_DsReplicaNeighbourCtr)",hf_drsuapi_drsuapi_DsReplicaInfo_neighbours);
+ offset = drsuapi_dissect_struct_WriteNgcKeyCtr1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_WriteNgcKeyCtr_ctr1,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaInfo_neighbours_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_WriteNgcKeyCtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaNeighbourCtr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaInfo_neighbours,0);
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+ guint32 level;
+
+ old_offset = offset;
+ if (parent_tree) {
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_WriteNgcKeyCtr, &item, "drsuapi_WriteNgcKeyCtr");
+ }
+
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
+ ALIGN_TO_4_BYTES;
+
+ switch(level) {
+ case 1:
+ offset = drsuapi_dissect_element_WriteNgcKeyCtr_ctr1(tvb, offset, pinfo, tree, di, drep);
+ break;
+ }
+ proto_item_set_len(item, offset-old_offset);
+
return offset;
}
+/* IDL: struct { */
+/* IDL: [charset(UTF16)] [unique(1)] uint16 *account; */
+/* IDL: } */
+
static int
-drsuapi_dissect_element_DsReplicaInfo_cursors(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_ReadNgcKeyRequest1_account(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaInfo_cursors_, NDR_POINTER_UNIQUE, "Pointer to Cursors (drsuapi_DsReplicaCursorCtr)",hf_drsuapi_drsuapi_DsReplicaInfo_cursors);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_ReadNgcKeyRequest1_account_, NDR_POINTER_UNIQUE, "Pointer to Account (uint16)",hf_drsuapi_drsuapi_ReadNgcKeyRequest1_account);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaInfo_cursors_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_ReadNgcKeyRequest1_account_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaCursorCtr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaInfo_cursors,0);
+ char *data;
+
+ offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_ReadNgcKeyRequest1_account, FALSE, &data);
+ proto_item_append_text(tree, ": %s", data);
+
+ return offset;
+}
+
+int
+drsuapi_dissect_struct_ReadNgcKeyRequest1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+{
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+
+ ALIGN_TO_5_BYTES;
+
+ old_offset = offset;
+
+ if (parent_tree) {
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_ReadNgcKeyRequest1);
+ }
+
+ offset = drsuapi_dissect_element_ReadNgcKeyRequest1_account(tvb, offset, pinfo, tree, di, drep);
+
+
+ proto_item_set_len(item, offset-old_offset);
+
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_5_BYTES;
+ }
return offset;
}
-static int
-drsuapi_dissect_element_DsReplicaInfo_objmetadata(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaInfo_objmetadata_, NDR_POINTER_UNIQUE, "Pointer to Objmetadata (drsuapi_DsReplicaObjMetaDataCtr)",hf_drsuapi_drsuapi_DsReplicaInfo_objmetadata);
- return offset;
-}
+/* IDL: [switch_type(uint32)] union { */
+/* IDL: [case(1)] [case(1)] drsuapi_ReadNgcKeyRequest1 req1; */
+/* IDL: } */
static int
-drsuapi_dissect_element_DsReplicaInfo_objmetadata_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_ReadNgcKeyRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaObjMetaDataCtr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaInfo_objmetadata,0);
+ offset = drsuapi_dissect_struct_ReadNgcKeyRequest1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_ReadNgcKeyRequest_req1,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaInfo_connectfailures(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_ReadNgcKeyRequest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaInfo_connectfailures_, NDR_POINTER_UNIQUE, "Pointer to Connectfailures (drsuapi_DsReplicaKccDsaFailuresCtr)",hf_drsuapi_drsuapi_DsReplicaInfo_connectfailures);
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+ guint32 level;
- return offset;
-}
+ old_offset = offset;
+ if (parent_tree) {
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_ReadNgcKeyRequest, &item, "drsuapi_ReadNgcKeyRequest");
+ }
-static int
-drsuapi_dissect_element_DsReplicaInfo_connectfailures_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = drsuapi_dissect_struct_DsReplicaKccDsaFailuresCtr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaInfo_connectfailures,0);
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
+ ALIGN_TO_5_BYTES;
- return offset;
-}
+ switch(level) {
+ case 1:
+ offset = drsuapi_dissect_element_ReadNgcKeyRequest_req1(tvb, offset, pinfo, tree, di, drep);
+ break;
+ }
+ proto_item_set_len(item, offset-old_offset);
-static int
-drsuapi_dissect_element_DsReplicaInfo_linkfailures(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaInfo_linkfailures_, NDR_POINTER_UNIQUE, "Pointer to Linkfailures (drsuapi_DsReplicaKccDsaFailuresCtr)",hf_drsuapi_drsuapi_DsReplicaInfo_linkfailures);
return offset;
}
+/* IDL: struct { */
+/* IDL: WERROR ret_val; */
+/* IDL: [range(0,0xFFFF)] uint32 ngc_key_size; */
+/* IDL: [flag(LIBNDR_PRINT_ARRAY_HEX)] [size_is(ngc_key_size)] [unique(1)] uint8 *ngc_key; */
+/* IDL: } */
+
static int
-drsuapi_dissect_element_DsReplicaInfo_linkfailures_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_ReadNgcKeyCtr1_ret_val(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaKccDsaFailuresCtr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaInfo_linkfailures,0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_ReadNgcKeyCtr1_ret_val, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaInfo_pendingops(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_ReadNgcKeyCtr1_ngc_key_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaInfo_pendingops_, NDR_POINTER_UNIQUE, "Pointer to Pendingops (drsuapi_DsReplicaOpCtr)",hf_drsuapi_drsuapi_DsReplicaInfo_pendingops);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_ReadNgcKeyCtr1_ngc_key_size, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaInfo_pendingops_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_ReadNgcKeyCtr1_ngc_key(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaOpCtr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaInfo_pendingops,0);
+ offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_ReadNgcKeyCtr1_ngc_key_, NDR_POINTER_UNIQUE, "Pointer to Ngc Key (uint8)",hf_drsuapi_drsuapi_ReadNgcKeyCtr1_ngc_key);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaInfo_attrvalmetadata(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_ReadNgcKeyCtr1_ngc_key_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaInfo_attrvalmetadata_, NDR_POINTER_UNIQUE, "Pointer to Attrvalmetadata (drsuapi_DsReplicaAttrValMetaDataCtr)",hf_drsuapi_drsuapi_DsReplicaInfo_attrvalmetadata);
+ offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_ReadNgcKeyCtr1_ngc_key__);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaInfo_attrvalmetadata_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_ReadNgcKeyCtr1_ngc_key__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaAttrValMetaDataCtr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaInfo_attrvalmetadata,0);
+ offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_ReadNgcKeyCtr1_ngc_key, 0);
return offset;
}
-static int
-drsuapi_dissect_element_DsReplicaInfo_cursors2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+int
+drsuapi_dissect_struct_ReadNgcKeyCtr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaInfo_cursors2_, NDR_POINTER_UNIQUE, "Pointer to Cursors2 (drsuapi_DsReplicaCursor2Ctr)",hf_drsuapi_drsuapi_DsReplicaInfo_cursors2);
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
- return offset;
-}
+ ALIGN_TO_5_BYTES;
-static int
-drsuapi_dissect_element_DsReplicaInfo_cursors2_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = drsuapi_dissect_struct_DsReplicaCursor2Ctr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaInfo_cursors2,0);
+ old_offset = offset;
- return offset;
-}
+ if (parent_tree) {
+ item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
+ tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_ReadNgcKeyCtr1);
+ }
-static int
-drsuapi_dissect_element_DsReplicaInfo_cursors3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaInfo_cursors3_, NDR_POINTER_UNIQUE, "Pointer to Cursors3 (drsuapi_DsReplicaCursor3Ctr)",hf_drsuapi_drsuapi_DsReplicaInfo_cursors3);
+ offset = drsuapi_dissect_element_ReadNgcKeyCtr1_ret_val(tvb, offset, pinfo, tree, di, drep);
- return offset;
-}
+ offset = drsuapi_dissect_element_ReadNgcKeyCtr1_ngc_key_size(tvb, offset, pinfo, tree, di, drep);
-static int
-drsuapi_dissect_element_DsReplicaInfo_cursors3_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = drsuapi_dissect_struct_DsReplicaCursor3Ctr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaInfo_cursors3,0);
+ offset = drsuapi_dissect_element_ReadNgcKeyCtr1_ngc_key(tvb, offset, pinfo, tree, di, drep);
+
+
+ proto_item_set_len(item, offset-old_offset);
+
+
+ if (di->call_data->flags & DCERPC_IS_NDR64) {
+ ALIGN_TO_5_BYTES;
+ }
return offset;
}
+
+/* IDL: [switch_type(uint32)] union { */
+/* IDL: [case(1)] [case(1)] drsuapi_ReadNgcKeyCtr1 ctr1; */
+/* IDL: } */
+
static int
-drsuapi_dissect_element_DsReplicaInfo_objmetadata2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_ReadNgcKeyCtr_ctr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaInfo_objmetadata2_, NDR_POINTER_UNIQUE, "Pointer to Objmetadata2 (drsuapi_DsReplicaObjMetaData2Ctr)",hf_drsuapi_drsuapi_DsReplicaInfo_objmetadata2);
+ offset = drsuapi_dissect_struct_ReadNgcKeyCtr1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_ReadNgcKeyCtr_ctr1,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaInfo_objmetadata2_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_ReadNgcKeyCtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaObjMetaData2Ctr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaInfo_objmetadata2,0);
+ proto_item *item = NULL;
+ proto_tree *tree = NULL;
+ int old_offset;
+ guint32 level;
+
+ old_offset = offset;
+ if (parent_tree) {
+ tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_ReadNgcKeyCtr, &item, "drsuapi_ReadNgcKeyCtr");
+ }
+
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
+ ALIGN_TO_5_BYTES;
+
+ switch(level) {
+ case 1:
+ offset = drsuapi_dissect_element_ReadNgcKeyCtr_ctr1(tvb, offset, pinfo, tree, di, drep);
+ break;
+ }
+ proto_item_set_len(item, offset-old_offset);
+
return offset;
}
-
static int
-drsuapi_dissect_element_DsReplicaInfo_attrvalmetadata2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsBind_bind_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaInfo_attrvalmetadata2_, NDR_POINTER_UNIQUE, "Pointer to Attrvalmetadata2 (drsuapi_DsReplicaAttrValMetaData2Ctr)",hf_drsuapi_drsuapi_DsReplicaInfo_attrvalmetadata2);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsBind_bind_guid_, NDR_POINTER_UNIQUE, "Pointer to Bind Guid (GUID)",hf_drsuapi_drsuapi_DsBind_bind_guid);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaInfo_attrvalmetadata2_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsBind_bind_guid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaAttrValMetaData2Ctr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaInfo_attrvalmetadata2,0);
+ offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsBind_bind_guid, NULL);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaInfo_repsto(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsBind_bind_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaInfo_repsto_, NDR_POINTER_UNIQUE, "Pointer to Repsto (drsuapi_DsReplicaNeighbourCtr)",hf_drsuapi_drsuapi_DsReplicaInfo_repsto);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsBind_bind_info_, NDR_POINTER_UNIQUE, "Pointer to Bind Info (drsuapi_DsBindInfoCtr)",hf_drsuapi_drsuapi_DsBind_bind_info);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaInfo_repsto_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsBind_bind_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaNeighbourCtr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaInfo_repsto,0);
+ offset = drsuapi_dissect_struct_DsBindInfoCtr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsBind_bind_info,0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaInfo_clientctx(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsBind_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaInfo_clientctx_, NDR_POINTER_UNIQUE, "Pointer to Clientctx (drsuapi_DsReplicaConnection04Ctr)",hf_drsuapi_drsuapi_DsReplicaInfo_clientctx);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsBind_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_DsBind_bind_handle);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaInfo_clientctx_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsBind_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaConnection04Ctr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaInfo_clientctx,0);
+ offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsBind_bind_handle, 0);
return offset;
}
+/* IDL: WERROR drsuapi_DsBind( */
+/* IDL: [in] [unique(1)] GUID *bind_guid, */
+/* IDL: [in] [out] [unique(1)] drsuapi_DsBindInfoCtr *bind_info, */
+/* IDL: [out] [ref] policy_handle *bind_handle */
+/* IDL: ); */
+
static int
-drsuapi_dissect_element_DsReplicaInfo_udv1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsBind_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaInfo_udv1_, NDR_POINTER_UNIQUE, "Pointer to Udv1 (drsuapi_DsReplicaCursorCtrEx)",hf_drsuapi_drsuapi_DsReplicaInfo_udv1);
+ guint32 status;
+
+ di->dcerpc_procedure_name="DsBind";
+ offset = drsuapi_dissect_element_DsBind_bind_info(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+
+ offset = drsuapi_dissect_element_DsBind_bind_handle(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
+
+ if (status != 0)
+ col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x"));
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaInfo_udv1_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsBind_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplicaCursorCtrEx(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaInfo_udv1,0);
-
+ di->dcerpc_procedure_name="DsBind";
+ offset = drsuapi_dissect_element_DsBind_bind_guid(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+ offset = drsuapi_dissect_element_DsBind_bind_info(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaInfo_srvoutgoingcalls(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsUnbind_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaInfo_srvoutgoingcalls_, NDR_POINTER_UNIQUE, "Pointer to Srvoutgoingcalls (drsuapi_DsReplica06Ctr)",hf_drsuapi_drsuapi_DsReplicaInfo_srvoutgoingcalls);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsUnbind_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_DsUnbind_bind_handle);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaInfo_srvoutgoingcalls_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsUnbind_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsReplica06Ctr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsReplicaInfo_srvoutgoingcalls,0);
+ offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsUnbind_bind_handle, 0);
return offset;
}
+/* IDL: WERROR drsuapi_DsUnbind( */
+/* IDL: [in] [out] [ref] policy_handle *bind_handle */
+/* IDL: ); */
+
static int
-drsuapi_dissect_DsReplicaInfo(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_DsUnbind_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
- guint32 level;
-
- old_offset = offset;
- if (parent_tree) {
- tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsReplicaInfo, &item, "drsuapi_DsReplicaInfo");
- }
-
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
- ALIGN_TO_5_BYTES;
-
- switch(level) {
- case DRSUAPI_DS_REPLICA_INFO_NEIGHBORS:
- offset = drsuapi_dissect_element_DsReplicaInfo_neighbours(tvb, offset, pinfo, tree, di, drep);
- break;
-
- case DRSUAPI_DS_REPLICA_INFO_CURSORS:
- offset = drsuapi_dissect_element_DsReplicaInfo_cursors(tvb, offset, pinfo, tree, di, drep);
- break;
-
- case DRSUAPI_DS_REPLICA_INFO_OBJ_METADATA:
- offset = drsuapi_dissect_element_DsReplicaInfo_objmetadata(tvb, offset, pinfo, tree, di, drep);
- break;
-
- case DRSUAPI_DS_REPLICA_INFO_KCC_DSA_CONNECT_FAILURES:
- offset = drsuapi_dissect_element_DsReplicaInfo_connectfailures(tvb, offset, pinfo, tree, di, drep);
- break;
-
- case DRSUAPI_DS_REPLICA_INFO_KCC_DSA_LINK_FAILURES:
- offset = drsuapi_dissect_element_DsReplicaInfo_linkfailures(tvb, offset, pinfo, tree, di, drep);
- break;
-
- case DRSUAPI_DS_REPLICA_INFO_PENDING_OPS:
- offset = drsuapi_dissect_element_DsReplicaInfo_pendingops(tvb, offset, pinfo, tree, di, drep);
- break;
-
- case DRSUAPI_DS_REPLICA_INFO_ATTRIBUTE_VALUE_METADATA:
- offset = drsuapi_dissect_element_DsReplicaInfo_attrvalmetadata(tvb, offset, pinfo, tree, di, drep);
- break;
-
- case DRSUAPI_DS_REPLICA_INFO_CURSORS2:
- offset = drsuapi_dissect_element_DsReplicaInfo_cursors2(tvb, offset, pinfo, tree, di, drep);
- break;
-
- case DRSUAPI_DS_REPLICA_INFO_CURSORS3:
- offset = drsuapi_dissect_element_DsReplicaInfo_cursors3(tvb, offset, pinfo, tree, di, drep);
- break;
-
- case DRSUAPI_DS_REPLICA_INFO_OBJ_METADATA2:
- offset = drsuapi_dissect_element_DsReplicaInfo_objmetadata2(tvb, offset, pinfo, tree, di, drep);
- break;
-
- case DRSUAPI_DS_REPLICA_INFO_ATTRIBUTE_VALUE_METADATA2:
- offset = drsuapi_dissect_element_DsReplicaInfo_attrvalmetadata2(tvb, offset, pinfo, tree, di, drep);
- break;
-
- case DRSUAPI_DS_REPLICA_INFO_REPSTO:
- offset = drsuapi_dissect_element_DsReplicaInfo_repsto(tvb, offset, pinfo, tree, di, drep);
- break;
-
- case DRSUAPI_DS_REPLICA_INFO_CLIENT_CONTEXTS:
- offset = drsuapi_dissect_element_DsReplicaInfo_clientctx(tvb, offset, pinfo, tree, di, drep);
- break;
+ guint32 status;
- case DRSUAPI_DS_REPLICA_INFO_UPTODATE_VECTOR_V1:
- offset = drsuapi_dissect_element_DsReplicaInfo_udv1(tvb, offset, pinfo, tree, di, drep);
- break;
+ di->dcerpc_procedure_name="DsUnbind";
+ offset = drsuapi_dissect_element_DsUnbind_bind_handle(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- case DRSUAPI_DS_REPLICA_INFO_SERVER_OUTGOING_CALLS:
- offset = drsuapi_dissect_element_DsReplicaInfo_srvoutgoingcalls(tvb, offset, pinfo, tree, di, drep);
- break;
- }
- proto_item_set_len(item, offset-old_offset);
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
+ if (status != 0)
+ col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x"));
return offset;
}
-/* IDL: struct { */
-/* IDL: [range(0,10000)] uint32 num_entries; */
-/* IDL: [size_is(num_entries)] [unique(1)] drsuapi_DsGetMembershipsCtr1 **ctrl_array; */
-/* IDL: } */
+static int
+drsuapi_dissect_DsUnbind_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ di->dcerpc_procedure_name="DsUnbind";
+ offset = drsuapi_dissect_element_DsUnbind_bind_handle(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+ return offset;
+}
static int
-drsuapi_dissect_element_DsGetMemberships2Ctr1_num_entries(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaSync_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetMemberships2Ctr1_num_entries, 0);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaSync_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_DsReplicaSync_bind_handle);
return offset;
}
static int
-drsuapi_dissect_element_DsGetMemberships2Ctr1_ctrl_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaSync_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMemberships2Ctr1_ctrl_array_, NDR_POINTER_UNIQUE, "Pointer to Ctrl Array (drsuapi_DsGetMembershipsCtr1)",hf_drsuapi_drsuapi_DsGetMemberships2Ctr1_ctrl_array);
+ offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaSync_bind_handle, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetMemberships2Ctr1_ctrl_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaSync_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMemberships2Ctr1_ctrl_array__);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaSync_level, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetMemberships2Ctr1_ctrl_array__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaSync_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMemberships2Ctr1_ctrl_array___, NDR_POINTER_UNIQUE, "Pointer to Ctrl Array (drsuapi_DsGetMembershipsCtr1)",hf_drsuapi_drsuapi_DsGetMemberships2Ctr1_ctrl_array);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaSync_req_, NDR_POINTER_REF, "Pointer to Req (drsuapi_DsReplicaSyncRequest)",hf_drsuapi_drsuapi_DsReplicaSync_req);
return offset;
}
static int
-drsuapi_dissect_element_DsGetMemberships2Ctr1_ctrl_array___(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaSync_req_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsGetMembershipsCtr1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetMemberships2Ctr1_ctrl_array,0);
+ offset = drsuapi_dissect_DsReplicaSyncRequest(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaSync_req, 0);
return offset;
}
-int
-drsuapi_dissect_struct_DsGetMemberships2Ctr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+/* IDL: WERROR drsuapi_DsReplicaSync( */
+/* IDL: [in] [ref] policy_handle *bind_handle, */
+/* IDL: [in] uint32 level, */
+/* IDL: [in] [ref] [switch_is(level)] drsuapi_DsReplicaSyncRequest *req */
+/* IDL: ); */
+
+static int
+drsuapi_dissect_DsReplicaSync_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
+ guint32 status;
- ALIGN_TO_5_BYTES;
+ di->dcerpc_procedure_name="DsReplicaSync";
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
- old_offset = offset;
+ if (status != 0)
+ col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x"));
- if (parent_tree) {
- item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetMemberships2Ctr1);
- }
+ return offset;
+}
- offset = drsuapi_dissect_element_DsGetMemberships2Ctr1_num_entries(tvb, offset, pinfo, tree, di, drep);
+static int
+drsuapi_dissect_DsReplicaSync_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ di->dcerpc_procedure_name="DsReplicaSync";
+ offset = drsuapi_dissect_element_DsReplicaSync_bind_handle(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaSync_level(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaSync_req(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+ return offset;
+}
- offset = drsuapi_dissect_element_DsGetMemberships2Ctr1_ctrl_array(tvb, offset, pinfo, tree, di, drep);
+static int
+drsuapi_dissect_element_DsGetNCChanges_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChanges_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_DsGetNCChanges_bind_handle);
+ return offset;
+}
- proto_item_set_len(item, offset-old_offset);
+static int
+drsuapi_dissect_element_DsGetNCChanges_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChanges_bind_handle, 0);
+ return offset;
+}
- if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_5_BYTES;
- }
+static int
+drsuapi_dissect_element_DsGetNCChanges_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChanges_level, 0);
return offset;
}
+static int
+drsuapi_dissect_element_DsGetNCChanges_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChanges_req_, NDR_POINTER_REF, "Pointer to Req (drsuapi_DsGetNCChangesRequest)",hf_drsuapi_drsuapi_DsGetNCChanges_req);
-/* IDL: [switch_type(uint32)] union { */
-/* IDL: [case(1)] [case(1)] drsuapi_DsGetMembershipsCtr1 ctr1; */
-/* IDL: } */
+ return offset;
+}
static int
-drsuapi_dissect_element_DsGetMemberships2Ctr_ctr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChanges_req_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsGetMembershipsCtr1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetMemberships2Ctr_ctr1,0);
+ offset = drsuapi_dissect_DsGetNCChangesRequest(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChanges_req, 0);
return offset;
}
static int
-drsuapi_dissect_DsGetMemberships2Ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_element_DsGetNCChanges_level_out(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
- guint32 level;
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChanges_level_out_, NDR_POINTER_REF, "Pointer to Level Out (uint32)",hf_drsuapi_drsuapi_DsGetNCChanges_level_out);
- old_offset = offset;
- if (parent_tree) {
- tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsGetMemberships2Ctr, &item, "drsuapi_DsGetMemberships2Ctr");
- }
+ return offset;
+}
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
- ALIGN_TO_5_BYTES;
+static int
+drsuapi_dissect_element_DsGetNCChanges_level_out_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChanges_level_out, 0);
- switch(level) {
- case 1:
- offset = drsuapi_dissect_element_DsGetMemberships2Ctr_ctr1(tvb, offset, pinfo, tree, di, drep);
- break;
- }
- proto_item_set_len(item, offset-old_offset);
+ return offset;
+}
+static int
+drsuapi_dissect_element_DsGetNCChanges_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChanges_ctr_, NDR_POINTER_REF, "Pointer to Ctr (drsuapi_DsGetNCChangesCtr)",hf_drsuapi_drsuapi_DsGetNCChanges_ctr);
return offset;
}
-/* IDL: struct { */
-/* IDL: [range(1,10000)] uint32 num_req; */
-/* IDL: [size_is(num_req)] [unique(1)] drsuapi_DsGetMembershipsRequest1 **req_array; */
-/* IDL: } */
-
static int
-drsuapi_dissect_element_DsGetMemberships2Request1_num_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNCChanges_ctr_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetMemberships2Request1_num_req, 0);
+ offset = drsuapi_dissect_DsGetNCChangesCtr(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChanges_ctr, 0);
return offset;
}
+/* IDL: WERROR drsuapi_DsGetNCChanges( */
+/* IDL: [in] [ref] policy_handle *bind_handle, */
+/* IDL: [in] uint32 level, */
+/* IDL: [in] [ref] [switch_is(level)] drsuapi_DsGetNCChangesRequest *req, */
+/* IDL: [out] [ref] uint32 *level_out, */
+/* IDL: [out] [ref] [switch_is(*level_out)] drsuapi_DsGetNCChangesCtr *ctr */
+/* IDL: ); */
+
static int
-drsuapi_dissect_element_DsGetMemberships2Request1_req_array(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsGetNCChanges_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMemberships2Request1_req_array_, NDR_POINTER_UNIQUE, "Pointer to Req Array (drsuapi_DsGetMembershipsRequest1)",hf_drsuapi_drsuapi_DsGetMemberships2Request1_req_array);
+ guint32 status;
+
+ di->dcerpc_procedure_name="DsGetNCChanges";
+ offset = drsuapi_dissect_element_DsGetNCChanges_level_out(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetNCChanges_ctr(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
+
+ if (status != 0)
+ col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x"));
return offset;
}
static int
-drsuapi_dissect_element_DsGetMemberships2Request1_req_array_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsGetNCChanges_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMemberships2Request1_req_array__);
-
+ di->dcerpc_procedure_name="DsGetNCChanges";
+ offset = drsuapi_dissect_element_DsGetNCChanges_bind_handle(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+ offset = drsuapi_dissect_element_DsGetNCChanges_level(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+ offset = drsuapi_dissect_element_DsGetNCChanges_req(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
return offset;
}
static int
-drsuapi_dissect_element_DsGetMemberships2Request1_req_array__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaUpdateRefs_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMemberships2Request1_req_array___, NDR_POINTER_UNIQUE, "Pointer to Req Array (drsuapi_DsGetMembershipsRequest1)",hf_drsuapi_drsuapi_DsGetMemberships2Request1_req_array);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaUpdateRefs_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_DsReplicaUpdateRefs_bind_handle);
return offset;
}
static int
-drsuapi_dissect_element_DsGetMemberships2Request1_req_array___(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaUpdateRefs_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsGetMembershipsRequest1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetMemberships2Request1_req_array,0);
+ offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaUpdateRefs_bind_handle, 0);
return offset;
}
-int
-drsuapi_dissect_struct_DsGetMemberships2Request1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+static int
+drsuapi_dissect_element_DsReplicaUpdateRefs_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaUpdateRefs_level, 0);
- ALIGN_TO_5_BYTES;
+ return offset;
+}
- old_offset = offset;
+static int
+drsuapi_dissect_element_DsReplicaUpdateRefs_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_DsReplicaUpdateRefsRequest(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaUpdateRefs_req, 0);
- if (parent_tree) {
- item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsGetMemberships2Request1);
- }
+ return offset;
+}
- offset = drsuapi_dissect_element_DsGetMemberships2Request1_num_req(tvb, offset, pinfo, tree, di, drep);
+/* IDL: WERROR drsuapi_DsReplicaUpdateRefs( */
+/* IDL: [in] [ref] policy_handle *bind_handle, */
+/* IDL: [in] uint32 level, */
+/* IDL: [in] [switch_is(level)] drsuapi_DsReplicaUpdateRefsRequest req */
+/* IDL: ); */
- offset = drsuapi_dissect_element_DsGetMemberships2Request1_req_array(tvb, offset, pinfo, tree, di, drep);
+static int
+drsuapi_dissect_DsReplicaUpdateRefs_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ guint32 status;
+ di->dcerpc_procedure_name="DsReplicaUpdateRefs";
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
- proto_item_set_len(item, offset-old_offset);
+ if (status != 0)
+ col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x"));
+ return offset;
+}
- if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_5_BYTES;
- }
+static int
+drsuapi_dissect_DsReplicaUpdateRefs_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ di->dcerpc_procedure_name="DsReplicaUpdateRefs";
+ offset = drsuapi_dissect_element_DsReplicaUpdateRefs_bind_handle(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaUpdateRefs_level(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaUpdateRefs_req(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_DsReplicaAdd_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAdd_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_DsReplicaAdd_bind_handle);
return offset;
}
+static int
+drsuapi_dissect_element_DsReplicaAdd_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAdd_bind_handle, 0);
-/* IDL: [switch_type(uint32)] union { */
-/* IDL: [case(1)] [case(1)] drsuapi_DsGetMemberships2Request1 req1; */
-/* IDL: } */
+ return offset;
+}
static int
-drsuapi_dissect_element_DsGetMemberships2Request_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaAdd_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsGetMemberships2Request1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsGetMemberships2Request_req1,0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAdd_level, 0);
return offset;
}
static int
-drsuapi_dissect_DsGetMemberships2Request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_element_DsReplicaAdd_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
- guint32 level;
+ offset = drsuapi_dissect_DsReplicaAddRequest(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAdd_req, 0);
- old_offset = offset;
- if (parent_tree) {
- tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_DsGetMemberships2Request, &item, "drsuapi_DsGetMemberships2Request");
- }
+ return offset;
+}
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
- ALIGN_TO_5_BYTES;
+/* IDL: WERROR drsuapi_DsReplicaAdd( */
+/* IDL: [in] [ref] policy_handle *bind_handle, */
+/* IDL: [in] uint32 level, */
+/* IDL: [in] [switch_is(level)] drsuapi_DsReplicaAddRequest req */
+/* IDL: ); */
- switch(level) {
- case 1:
- offset = drsuapi_dissect_element_DsGetMemberships2Request_req1(tvb, offset, pinfo, tree, di, drep);
- break;
- }
- proto_item_set_len(item, offset-old_offset);
+static int
+drsuapi_dissect_DsReplicaAdd_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ guint32 status;
+
+ di->dcerpc_procedure_name="DsReplicaAdd";
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
+ if (status != 0)
+ col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x"));
return offset;
}
-/* IDL: struct { */
-/* IDL: WERROR error_code; */
-/* IDL: uint32 site_cost; */
-/* IDL: } */
-
static int
-drsuapi_dissect_element_DsSiteCostInfo_error_code(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsReplicaAdd_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsSiteCostInfo_error_code, 0);
-
+ di->dcerpc_procedure_name="DsReplicaAdd";
+ offset = drsuapi_dissect_element_DsReplicaAdd_bind_handle(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaAdd_level(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaAdd_req(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
return offset;
}
static int
-drsuapi_dissect_element_DsSiteCostInfo_site_cost(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaDel_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsSiteCostInfo_site_cost, 0);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaDel_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_DsReplicaDel_bind_handle);
return offset;
}
-int
-drsuapi_dissect_struct_DsSiteCostInfo(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+static int
+drsuapi_dissect_element_DsReplicaDel_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
+ offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaDel_bind_handle, 0);
- ALIGN_TO_4_BYTES;
+ return offset;
+}
- old_offset = offset;
+static int
+drsuapi_dissect_element_DsReplicaDel_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaDel_level, 0);
- if (parent_tree) {
- item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_DsSiteCostInfo);
- }
+ return offset;
+}
- offset = drsuapi_dissect_element_DsSiteCostInfo_error_code(tvb, offset, pinfo, tree, di, drep);
+static int
+drsuapi_dissect_element_DsReplicaDel_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_DsReplicaDelRequest(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaDel_req, 0);
- offset = drsuapi_dissect_element_DsSiteCostInfo_site_cost(tvb, offset, pinfo, tree, di, drep);
+ return offset;
+}
+/* IDL: WERROR drsuapi_DsReplicaDel( */
+/* IDL: [in] [ref] policy_handle *bind_handle, */
+/* IDL: [in] uint32 level, */
+/* IDL: [in] [switch_is(level)] drsuapi_DsReplicaDelRequest req */
+/* IDL: ); */
- proto_item_set_len(item, offset-old_offset);
+static int
+drsuapi_dissect_DsReplicaDel_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ guint32 status;
+ di->dcerpc_procedure_name="DsReplicaDel";
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
- if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_4_BYTES;
- }
+ if (status != 0)
+ col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x"));
return offset;
}
-
-/* IDL: struct { */
-/* IDL: [range(0,10000)] uint32 num_info; */
-/* IDL: [size_is(num_info)] [unique(1)] drsuapi_DsSiteCostInfo *info; */
-/* IDL: [value(0)] uint32 flags_reserved; */
-/* IDL: } */
-
static int
-drsuapi_dissect_element_QuerySitesByCostCtr1_num_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsReplicaDel_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_QuerySitesByCostCtr1_num_info, 0);
-
+ di->dcerpc_procedure_name="DsReplicaDel";
+ offset = drsuapi_dissect_element_DsReplicaDel_bind_handle(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaDel_level(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaDel_req(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
return offset;
}
static int
-drsuapi_dissect_element_QuerySitesByCostCtr1_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaMod_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_QuerySitesByCostCtr1_info_, NDR_POINTER_UNIQUE, "Pointer to Info (drsuapi_DsSiteCostInfo)",hf_drsuapi_drsuapi_QuerySitesByCostCtr1_info);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaMod_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_DsReplicaMod_bind_handle);
return offset;
}
static int
-drsuapi_dissect_element_QuerySitesByCostCtr1_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaMod_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_QuerySitesByCostCtr1_info__);
+ offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaMod_bind_handle, 0);
return offset;
}
static int
-drsuapi_dissect_element_QuerySitesByCostCtr1_info__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaMod_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsSiteCostInfo(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_QuerySitesByCostCtr1_info,0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaMod_level, 0);
return offset;
}
static int
-drsuapi_dissect_element_QuerySitesByCostCtr1_flags_reserved(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaMod_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_QuerySitesByCostCtr1_flags_reserved, 0);
+ offset = drsuapi_dissect_DsReplicaModRequest(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaMod_req, 0);
return offset;
}
-int
-drsuapi_dissect_struct_QuerySitesByCostCtr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
-{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
-
- ALIGN_TO_5_BYTES;
+/* IDL: WERROR drsuapi_DsReplicaMod( */
+/* IDL: [in] [ref] policy_handle *bind_handle, */
+/* IDL: [in] uint32 level, */
+/* IDL: [in] [switch_is(level)] drsuapi_DsReplicaModRequest req */
+/* IDL: ); */
- old_offset = offset;
+static int
+drsuapi_dissect_DsReplicaMod_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ guint32 status;
- if (parent_tree) {
- item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_QuerySitesByCostCtr1);
- }
+ di->dcerpc_procedure_name="DsReplicaMod";
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
- offset = drsuapi_dissect_element_QuerySitesByCostCtr1_num_info(tvb, offset, pinfo, tree, di, drep);
+ if (status != 0)
+ col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x"));
- offset = drsuapi_dissect_element_QuerySitesByCostCtr1_info(tvb, offset, pinfo, tree, di, drep);
+ return offset;
+}
- offset = drsuapi_dissect_element_QuerySitesByCostCtr1_flags_reserved(tvb, offset, pinfo, tree, di, drep);
+static int
+drsuapi_dissect_DsReplicaMod_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ di->dcerpc_procedure_name="DsReplicaMod";
+ offset = drsuapi_dissect_element_DsReplicaMod_bind_handle(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaMod_level(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaMod_req(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+ return offset;
+}
+/* IDL: WERROR DRSUAPI_VERIFY_NAMES( */
+/* IDL: */
+/* IDL: ); */
- proto_item_set_len(item, offset-old_offset);
+static int
+drsuapi_dissect_DRSUAPI_VERIFY_NAMES_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ guint32 status;
+ di->dcerpc_procedure_name="DRSUAPI_VERIFY_NAMES";
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
- if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_5_BYTES;
- }
+ if (status != 0)
+ col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x"));
return offset;
}
-
-/* IDL: [switch_type(uint32)] union { */
-/* IDL: [case(1)] [case(1)] drsuapi_QuerySitesByCostCtr1 ctr1; */
-/* IDL: } */
-
static int
-drsuapi_dissect_element_QuerySitesByCostCtr_ctr1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DRSUAPI_VERIFY_NAMES_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_QuerySitesByCostCtr1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_QuerySitesByCostCtr_ctr1,0);
-
+ di->dcerpc_procedure_name="DRSUAPI_VERIFY_NAMES";
return offset;
}
static int
-drsuapi_dissect_QuerySitesByCostCtr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_element_DsGetMemberships_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
- guint32 level;
-
- old_offset = offset;
- if (parent_tree) {
- tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_QuerySitesByCostCtr, &item, "drsuapi_QuerySitesByCostCtr");
- }
-
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
- ALIGN_TO_5_BYTES;
-
- switch(level) {
- case 1:
- offset = drsuapi_dissect_element_QuerySitesByCostCtr_ctr1(tvb, offset, pinfo, tree, di, drep);
- break;
- }
- proto_item_set_len(item, offset-old_offset);
-
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMemberships_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_DsGetMemberships_bind_handle);
return offset;
}
-/* IDL: struct { */
-/* IDL: [charset(UTF16)] [unique(1)] uint16 *site_from; */
-/* IDL: [range(1,10000)] uint32 num_req; */
-/* IDL: [charset(UTF16)] [size_is(num_req)] [unique(1)] uint16 **site_to; */
-/* IDL: uint32 flags; */
-/* IDL: } */
-
static int
-drsuapi_dissect_element_QuerySitesByCostRequest1_site_from(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMemberships_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_QuerySitesByCostRequest1_site_from_, NDR_POINTER_UNIQUE, "Pointer to Site From (uint16)",hf_drsuapi_drsuapi_QuerySitesByCostRequest1_site_from);
+ offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetMemberships_bind_handle, 0);
return offset;
}
static int
-drsuapi_dissect_element_QuerySitesByCostRequest1_site_from_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMemberships_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- char *data;
-
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_QuerySitesByCostRequest1_site_from, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetMemberships_level, 0);
return offset;
}
static int
-drsuapi_dissect_element_QuerySitesByCostRequest1_num_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMemberships_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_QuerySitesByCostRequest1_num_req, 0);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMemberships_req_, NDR_POINTER_REF, "Pointer to Req (drsuapi_DsGetMembershipsRequest)",hf_drsuapi_drsuapi_DsGetMemberships_req);
return offset;
}
static int
-drsuapi_dissect_element_QuerySitesByCostRequest1_site_to(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMemberships_req_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_QuerySitesByCostRequest1_site_to_, NDR_POINTER_UNIQUE, "Pointer to Site To (uint16)",hf_drsuapi_drsuapi_QuerySitesByCostRequest1_site_to);
+ offset = drsuapi_dissect_DsGetMembershipsRequest(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetMemberships_req, 0);
return offset;
}
static int
-drsuapi_dissect_element_QuerySitesByCostRequest1_site_to_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMemberships_level_out(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_QuerySitesByCostRequest1_site_to__);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMemberships_level_out_, NDR_POINTER_REF, "Pointer to Level Out (uint32)",hf_drsuapi_drsuapi_DsGetMemberships_level_out);
return offset;
}
static int
-drsuapi_dissect_element_QuerySitesByCostRequest1_site_to__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMemberships_level_out_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_QuerySitesByCostRequest1_site_to___, NDR_POINTER_UNIQUE, "Pointer to Site To (uint16)",hf_drsuapi_drsuapi_QuerySitesByCostRequest1_site_to);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetMemberships_level_out, 0);
return offset;
}
static int
-drsuapi_dissect_element_QuerySitesByCostRequest1_site_to___(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMemberships_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- char *data;
-
- offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_drsuapi_drsuapi_QuerySitesByCostRequest1_site_to, FALSE, &data);
- proto_item_append_text(tree, ": %s", data);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMemberships_ctr_, NDR_POINTER_REF, "Pointer to Ctr (drsuapi_DsGetMembershipsCtr)",hf_drsuapi_drsuapi_DsGetMemberships_ctr);
return offset;
}
static int
-drsuapi_dissect_element_QuerySitesByCostRequest1_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMemberships_ctr_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_QuerySitesByCostRequest1_flags, 0);
+ offset = drsuapi_dissect_DsGetMembershipsCtr(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetMemberships_ctr, 0);
return offset;
}
-int
-drsuapi_dissect_struct_QuerySitesByCostRequest1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
-{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
+/* IDL: WERROR drsuapi_DsGetMemberships( */
+/* IDL: [in] [ref] policy_handle *bind_handle, */
+/* IDL: [in] uint32 level, */
+/* IDL: [in] [ref] [switch_is(level)] drsuapi_DsGetMembershipsRequest *req, */
+/* IDL: [out] [ref] uint32 *level_out, */
+/* IDL: [out] [ref] [switch_is(*level_out)] drsuapi_DsGetMembershipsCtr *ctr */
+/* IDL: ); */
- ALIGN_TO_5_BYTES;
+static int
+drsuapi_dissect_DsGetMemberships_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ guint32 status;
- old_offset = offset;
+ di->dcerpc_procedure_name="DsGetMemberships";
+ offset = drsuapi_dissect_element_DsGetMemberships_level_out(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- if (parent_tree) {
- item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
- tree = proto_item_add_subtree(item, ett_drsuapi_drsuapi_QuerySitesByCostRequest1);
- }
+ offset = drsuapi_dissect_element_DsGetMemberships_ctr(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_QuerySitesByCostRequest1_site_from(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
- offset = drsuapi_dissect_element_QuerySitesByCostRequest1_num_req(tvb, offset, pinfo, tree, di, drep);
+ if (status != 0)
+ col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x"));
- offset = drsuapi_dissect_element_QuerySitesByCostRequest1_site_to(tvb, offset, pinfo, tree, di, drep);
+ return offset;
+}
- offset = drsuapi_dissect_element_QuerySitesByCostRequest1_flags(tvb, offset, pinfo, tree, di, drep);
+static int
+drsuapi_dissect_DsGetMemberships_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ di->dcerpc_procedure_name="DsGetMemberships";
+ offset = drsuapi_dissect_element_DsGetMemberships_bind_handle(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+ offset = drsuapi_dissect_element_DsGetMemberships_level(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+ offset = drsuapi_dissect_element_DsGetMemberships_req(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+ return offset;
+}
+/* IDL: WERROR DRSUAPI_INTER_DOMAIN_MOVE( */
+/* IDL: */
+/* IDL: ); */
- proto_item_set_len(item, offset-old_offset);
+static int
+drsuapi_dissect_DRSUAPI_INTER_DOMAIN_MOVE_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ guint32 status;
+ di->dcerpc_procedure_name="DRSUAPI_INTER_DOMAIN_MOVE";
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
- if (di->call_data->flags & DCERPC_IS_NDR64) {
- ALIGN_TO_5_BYTES;
- }
+ if (status != 0)
+ col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x"));
return offset;
}
-
-/* IDL: [switch_type(uint32)] union { */
-/* IDL: [case(1)] [case(1)] drsuapi_QuerySitesByCostRequest1 req1; */
-/* IDL: } */
-
static int
-drsuapi_dissect_element_QuerySitesByCostRequest_req1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DRSUAPI_INTER_DOMAIN_MOVE_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_QuerySitesByCostRequest1(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_QuerySitesByCostRequest_req1,0);
-
+ di->dcerpc_procedure_name="DRSUAPI_INTER_DOMAIN_MOVE";
return offset;
}
static int
-drsuapi_dissect_QuerySitesByCostRequest(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
+drsuapi_dissect_element_DsGetNT4ChangeLog_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- proto_item *item = NULL;
- proto_tree *tree = NULL;
- int old_offset;
- guint32 level;
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNT4ChangeLog_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_DsGetNT4ChangeLog_bind_handle);
- old_offset = offset;
- if (parent_tree) {
- tree = proto_tree_add_subtree(parent_tree, tvb, offset, -1, ett_drsuapi_drsuapi_QuerySitesByCostRequest, &item, "drsuapi_QuerySitesByCostRequest");
- }
+ return offset;
+}
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, &level);
- ALIGN_TO_5_BYTES;
+static int
+drsuapi_dissect_element_DsGetNT4ChangeLog_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLog_bind_handle, 0);
- switch(level) {
- case 1:
- offset = drsuapi_dissect_element_QuerySitesByCostRequest_req1(tvb, offset, pinfo, tree, di, drep);
- break;
- }
- proto_item_set_len(item, offset-old_offset);
+ return offset;
+}
+static int
+drsuapi_dissect_element_DsGetNT4ChangeLog_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLog_level, 0);
return offset;
}
+
static int
-drsuapi_dissect_element_DsBind_bind_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNT4ChangeLog_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsBind_bind_guid_, NDR_POINTER_UNIQUE, "Pointer to Bind Guid (GUID)",hf_drsuapi_drsuapi_DsBind_bind_guid);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNT4ChangeLog_req_, NDR_POINTER_REF, "Pointer to Req (drsuapi_DsGetNT4ChangeLogRequest)",hf_drsuapi_drsuapi_DsGetNT4ChangeLog_req);
return offset;
}
static int
-drsuapi_dissect_element_DsBind_bind_guid_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNT4ChangeLog_req_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsBind_bind_guid, NULL);
+ offset = drsuapi_dissect_DsGetNT4ChangeLogRequest(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLog_req, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsBind_bind_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNT4ChangeLog_level_out(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsBind_bind_info_, NDR_POINTER_UNIQUE, "Pointer to Bind Info (drsuapi_DsBindInfoCtr)",hf_drsuapi_drsuapi_DsBind_bind_info);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNT4ChangeLog_level_out_, NDR_POINTER_REF, "Pointer to Level Out (uint32)",hf_drsuapi_drsuapi_DsGetNT4ChangeLog_level_out);
return offset;
}
static int
-drsuapi_dissect_element_DsBind_bind_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNT4ChangeLog_level_out_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_struct_DsBindInfoCtr(tvb,offset,pinfo,tree,di,drep,hf_drsuapi_drsuapi_DsBind_bind_info,0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLog_level_out, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsBind_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNT4ChangeLog_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsBind_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_DsBind_bind_handle);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNT4ChangeLog_info_, NDR_POINTER_REF, "Pointer to Info (drsuapi_DsGetNT4ChangeLogInfo)",hf_drsuapi_drsuapi_DsGetNT4ChangeLog_info);
return offset;
}
static int
-drsuapi_dissect_element_DsBind_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetNT4ChangeLog_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsBind_bind_handle, 0);
+ offset = drsuapi_dissect_DsGetNT4ChangeLogInfo(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLog_info, 0);
return offset;
}
-/* IDL: WERROR drsuapi_DsBind( */
-/* IDL: [in] [unique(1)] GUID *bind_guid, */
-/* IDL: [in] [out] [unique(1)] drsuapi_DsBindInfoCtr *bind_info, */
-/* IDL: [out] [ref] policy_handle *bind_handle */
+/* IDL: WERROR drsuapi_DsGetNT4ChangeLog( */
+/* IDL: [in] [ref] policy_handle *bind_handle, */
+/* IDL: [in] uint32 level, */
+/* IDL: [in] [ref] [switch_is(level)] drsuapi_DsGetNT4ChangeLogRequest *req, */
+/* IDL: [out] [ref] uint32 *level_out, */
+/* IDL: [out] [ref] [switch_is(*level_out)] drsuapi_DsGetNT4ChangeLogInfo *info */
/* IDL: ); */
static int
-drsuapi_dissect_DsBind_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsGetNT4ChangeLog_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
guint32 status;
- di->dcerpc_procedure_name="DsBind";
- offset = drsuapi_dissect_element_DsBind_bind_info(tvb, offset, pinfo, tree, di, drep);
+ di->dcerpc_procedure_name="DsGetNT4ChangeLog";
+ offset = drsuapi_dissect_element_DsGetNT4ChangeLog_level_out(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsBind_bind_handle(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetNT4ChangeLog_info(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
}
static int
-drsuapi_dissect_DsBind_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsGetNT4ChangeLog_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- di->dcerpc_procedure_name="DsBind";
- offset = drsuapi_dissect_element_DsBind_bind_guid(tvb, offset, pinfo, tree, di, drep);
+ di->dcerpc_procedure_name="DsGetNT4ChangeLog";
+ offset = drsuapi_dissect_element_DsGetNT4ChangeLog_bind_handle(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsBind_bind_info(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetNT4ChangeLog_level(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+ offset = drsuapi_dissect_element_DsGetNT4ChangeLog_req(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
return offset;
}
static int
-drsuapi_dissect_element_DsUnbind_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsCrackNames_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsUnbind_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_DsUnbind_bind_handle);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsCrackNames_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_DsCrackNames_bind_handle);
return offset;
}
static int
-drsuapi_dissect_element_DsUnbind_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsCrackNames_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsUnbind_bind_handle, 0);
+ offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsCrackNames_bind_handle, 0);
return offset;
}
-/* IDL: WERROR drsuapi_DsUnbind( */
-/* IDL: [in] [out] [ref] policy_handle *bind_handle */
-/* IDL: ); */
-
static int
-drsuapi_dissect_DsUnbind_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsCrackNames_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- guint32 status;
-
- di->dcerpc_procedure_name="DsUnbind";
- offset = drsuapi_dissect_element_DsUnbind_bind_handle(tvb, offset, pinfo, tree, di, drep);
- offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
-
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
-
- if (status != 0)
- col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x"));
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsCrackNames_level, 0);
return offset;
}
static int
-drsuapi_dissect_DsUnbind_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsCrackNames_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- di->dcerpc_procedure_name="DsUnbind";
- offset = drsuapi_dissect_element_DsUnbind_bind_handle(tvb, offset, pinfo, tree, di, drep);
- offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsCrackNames_req_, NDR_POINTER_REF, "Pointer to Req (drsuapi_DsNameRequest)",hf_drsuapi_drsuapi_DsCrackNames_req);
+
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaSync_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsCrackNames_req_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaSync_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_DsReplicaSync_bind_handle);
+ offset = drsuapi_dissect_DsNameRequest(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsCrackNames_req, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaSync_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsCrackNames_level_out(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaSync_bind_handle, 0);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsCrackNames_level_out_, NDR_POINTER_REF, "Pointer to Level Out (uint32)",hf_drsuapi_drsuapi_DsCrackNames_level_out);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaSync_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsCrackNames_level_out_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaSync_level, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsCrackNames_level_out, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaSync_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsCrackNames_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaSync_req_, NDR_POINTER_REF, "Pointer to Req (drsuapi_DsReplicaSyncRequest)",hf_drsuapi_drsuapi_DsReplicaSync_req);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsCrackNames_ctr_, NDR_POINTER_REF, "Pointer to Ctr (drsuapi_DsNameCtr)",hf_drsuapi_drsuapi_DsCrackNames_ctr);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaSync_req_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsCrackNames_ctr_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_DsReplicaSyncRequest(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaSync_req, 0);
+ offset = drsuapi_dissect_DsNameCtr(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsCrackNames_ctr, 0);
return offset;
}
-/* IDL: WERROR drsuapi_DsReplicaSync( */
+/* IDL: WERROR drsuapi_DsCrackNames( */
/* IDL: [in] [ref] policy_handle *bind_handle, */
/* IDL: [in] uint32 level, */
-/* IDL: [in] [ref] [switch_is(level)] drsuapi_DsReplicaSyncRequest *req */
+/* IDL: [in] [ref] [switch_is(level)] drsuapi_DsNameRequest *req, */
+/* IDL: [out] [ref] uint32 *level_out, */
+/* IDL: [out] [ref] [switch_is(*level_out)] drsuapi_DsNameCtr *ctr */
/* IDL: ); */
static int
-drsuapi_dissect_DsReplicaSync_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsCrackNames_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
guint32 status;
- di->dcerpc_procedure_name="DsReplicaSync";
+ di->dcerpc_procedure_name="DsCrackNames";
+ offset = drsuapi_dissect_element_DsCrackNames_level_out(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+
+ offset = drsuapi_dissect_element_DsCrackNames_ctr(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+
offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
if (status != 0)
}
static int
-drsuapi_dissect_DsReplicaSync_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsCrackNames_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- di->dcerpc_procedure_name="DsReplicaSync";
- offset = drsuapi_dissect_element_DsReplicaSync_bind_handle(tvb, offset, pinfo, tree, di, drep);
+ di->dcerpc_procedure_name="DsCrackNames";
+ offset = drsuapi_dissect_element_DsCrackNames_bind_handle(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsReplicaSync_level(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsCrackNames_level(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsReplicaSync_req(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsCrackNames_req(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChanges_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsWriteAccountSpn_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChanges_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_DsGetNCChanges_bind_handle);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsWriteAccountSpn_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_DsWriteAccountSpn_bind_handle);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChanges_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsWriteAccountSpn_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChanges_bind_handle, 0);
+ offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsWriteAccountSpn_bind_handle, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChanges_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsWriteAccountSpn_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChanges_level, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsWriteAccountSpn_level, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChanges_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsWriteAccountSpn_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChanges_req_, NDR_POINTER_REF, "Pointer to Req (drsuapi_DsGetNCChangesRequest)",hf_drsuapi_drsuapi_DsGetNCChanges_req);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsWriteAccountSpn_req_, NDR_POINTER_REF, "Pointer to Req (drsuapi_DsWriteAccountSpnRequest)",hf_drsuapi_drsuapi_DsWriteAccountSpn_req);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChanges_req_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsWriteAccountSpn_req_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_DsGetNCChangesRequest(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChanges_req, 0);
+ offset = drsuapi_dissect_DsWriteAccountSpnRequest(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsWriteAccountSpn_req, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChanges_level_out(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsWriteAccountSpn_level_out(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChanges_level_out_, NDR_POINTER_REF, "Pointer to Level Out (uint32)",hf_drsuapi_drsuapi_DsGetNCChanges_level_out);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsWriteAccountSpn_level_out_, NDR_POINTER_REF, "Pointer to Level Out (uint32)",hf_drsuapi_drsuapi_DsWriteAccountSpn_level_out);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChanges_level_out_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsWriteAccountSpn_level_out_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChanges_level_out, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsWriteAccountSpn_level_out, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChanges_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsWriteAccountSpn_res(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNCChanges_ctr_, NDR_POINTER_REF, "Pointer to Ctr (drsuapi_DsGetNCChangesCtr)",hf_drsuapi_drsuapi_DsGetNCChanges_ctr);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsWriteAccountSpn_res_, NDR_POINTER_REF, "Pointer to Res (drsuapi_DsWriteAccountSpnResult)",hf_drsuapi_drsuapi_DsWriteAccountSpn_res);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNCChanges_ctr_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsWriteAccountSpn_res_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_DsGetNCChangesCtr(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNCChanges_ctr, 0);
+ offset = drsuapi_dissect_DsWriteAccountSpnResult(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsWriteAccountSpn_res, 0);
return offset;
}
-/* IDL: WERROR drsuapi_DsGetNCChanges( */
+/* IDL: WERROR drsuapi_DsWriteAccountSpn( */
/* IDL: [in] [ref] policy_handle *bind_handle, */
/* IDL: [in] uint32 level, */
-/* IDL: [in] [ref] [switch_is(level)] drsuapi_DsGetNCChangesRequest *req, */
+/* IDL: [in] [ref] [switch_is(level)] drsuapi_DsWriteAccountSpnRequest *req, */
/* IDL: [out] [ref] uint32 *level_out, */
-/* IDL: [out] [ref] [switch_is(*level_out)] drsuapi_DsGetNCChangesCtr *ctr */
+/* IDL: [out] [ref] [switch_is(*level_out)] drsuapi_DsWriteAccountSpnResult *res */
/* IDL: ); */
static int
-drsuapi_dissect_DsGetNCChanges_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsWriteAccountSpn_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
guint32 status;
- di->dcerpc_procedure_name="DsGetNCChanges";
- offset = drsuapi_dissect_element_DsGetNCChanges_level_out(tvb, offset, pinfo, tree, di, drep);
+ di->dcerpc_procedure_name="DsWriteAccountSpn";
+ offset = drsuapi_dissect_element_DsWriteAccountSpn_level_out(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChanges_ctr(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsWriteAccountSpn_res(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
}
static int
-drsuapi_dissect_DsGetNCChanges_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsWriteAccountSpn_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- di->dcerpc_procedure_name="DsGetNCChanges";
- offset = drsuapi_dissect_element_DsGetNCChanges_bind_handle(tvb, offset, pinfo, tree, di, drep);
+ di->dcerpc_procedure_name="DsWriteAccountSpn";
+ offset = drsuapi_dissect_element_DsWriteAccountSpn_bind_handle(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChanges_level(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsWriteAccountSpn_level(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsGetNCChanges_req(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsWriteAccountSpn_req(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaUpdateRefs_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsRemoveDSServer_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaUpdateRefs_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_DsReplicaUpdateRefs_bind_handle);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsRemoveDSServer_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_DsRemoveDSServer_bind_handle);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaUpdateRefs_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsRemoveDSServer_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaUpdateRefs_bind_handle, 0);
+ offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsRemoveDSServer_bind_handle, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaUpdateRefs_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsRemoveDSServer_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaUpdateRefs_level, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsRemoveDSServer_level, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaUpdateRefs_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsRemoveDSServer_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_DsReplicaUpdateRefsRequest(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaUpdateRefs_req, 0);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsRemoveDSServer_req_, NDR_POINTER_REF, "Pointer to Req (drsuapi_DsRemoveDSServerRequest)",hf_drsuapi_drsuapi_DsRemoveDSServer_req);
return offset;
}
-/* IDL: WERROR drsuapi_DsReplicaUpdateRefs( */
-/* IDL: [in] [ref] policy_handle *bind_handle, */
-/* IDL: [in] uint32 level, */
-/* IDL: [in] [switch_is(level)] drsuapi_DsReplicaUpdateRefsRequest req */
-/* IDL: ); */
-
static int
-drsuapi_dissect_DsReplicaUpdateRefs_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsRemoveDSServer_req_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- guint32 status;
-
- di->dcerpc_procedure_name="DsReplicaUpdateRefs";
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
-
- if (status != 0)
- col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x"));
-
- return offset;
-}
+ offset = drsuapi_dissect_DsRemoveDSServerRequest(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsRemoveDSServer_req, 0);
-static int
-drsuapi_dissect_DsReplicaUpdateRefs_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- di->dcerpc_procedure_name="DsReplicaUpdateRefs";
- offset = drsuapi_dissect_element_DsReplicaUpdateRefs_bind_handle(tvb, offset, pinfo, tree, di, drep);
- offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsReplicaUpdateRefs_level(tvb, offset, pinfo, tree, di, drep);
- offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsReplicaUpdateRefs_req(tvb, offset, pinfo, tree, di, drep);
- offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAdd_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsRemoveDSServer_level_out(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaAdd_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_DsReplicaAdd_bind_handle);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsRemoveDSServer_level_out_, NDR_POINTER_REF, "Pointer to Level Out (uint32)",hf_drsuapi_drsuapi_DsRemoveDSServer_level_out);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAdd_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsRemoveDSServer_level_out_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAdd_bind_handle, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsRemoveDSServer_level_out, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAdd_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsRemoveDSServer_res(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAdd_level, 0);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsRemoveDSServer_res_, NDR_POINTER_REF, "Pointer to Res (drsuapi_DsRemoveDSServerResult)",hf_drsuapi_drsuapi_DsRemoveDSServer_res);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaAdd_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsRemoveDSServer_res_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_DsReplicaAddRequest(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaAdd_req, 0);
+ offset = drsuapi_dissect_DsRemoveDSServerResult(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsRemoveDSServer_res, 0);
return offset;
}
-/* IDL: WERROR drsuapi_DsReplicaAdd( */
+/* IDL: WERROR drsuapi_DsRemoveDSServer( */
/* IDL: [in] [ref] policy_handle *bind_handle, */
/* IDL: [in] uint32 level, */
-/* IDL: [in] [switch_is(level)] drsuapi_DsReplicaAddRequest req */
+/* IDL: [in] [ref] [switch_is(level)] drsuapi_DsRemoveDSServerRequest *req, */
+/* IDL: [out] [ref] uint32 *level_out, */
+/* IDL: [out] [ref] [switch_is(*level_out)] drsuapi_DsRemoveDSServerResult *res */
/* IDL: ); */
static int
-drsuapi_dissect_DsReplicaAdd_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsRemoveDSServer_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
guint32 status;
- di->dcerpc_procedure_name="DsReplicaAdd";
+ di->dcerpc_procedure_name="DsRemoveDSServer";
+ offset = drsuapi_dissect_element_DsRemoveDSServer_level_out(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+
+ offset = drsuapi_dissect_element_DsRemoveDSServer_res(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+
offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
if (status != 0)
}
static int
-drsuapi_dissect_DsReplicaAdd_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsRemoveDSServer_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- di->dcerpc_procedure_name="DsReplicaAdd";
- offset = drsuapi_dissect_element_DsReplicaAdd_bind_handle(tvb, offset, pinfo, tree, di, drep);
+ di->dcerpc_procedure_name="DsRemoveDSServer";
+ offset = drsuapi_dissect_element_DsRemoveDSServer_bind_handle(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsReplicaAdd_level(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsRemoveDSServer_level(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsReplicaAdd_req(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsRemoveDSServer_req(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
return offset;
}
+/* IDL: WERROR DRSUAPI_REMOVE_DS_DOMAIN( */
+/* IDL: */
+/* IDL: ); */
+
static int
-drsuapi_dissect_element_DsReplicaDel_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DRSUAPI_REMOVE_DS_DOMAIN_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaDel_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_DsReplicaDel_bind_handle);
+ guint32 status;
- return offset;
-}
+ di->dcerpc_procedure_name="DRSUAPI_REMOVE_DS_DOMAIN";
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
-static int
-drsuapi_dissect_element_DsReplicaDel_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaDel_bind_handle, 0);
+ if (status != 0)
+ col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x"));
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaDel_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DRSUAPI_REMOVE_DS_DOMAIN_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaDel_level, 0);
-
+ di->dcerpc_procedure_name="DRSUAPI_REMOVE_DS_DOMAIN";
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaDel_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDomainControllerInfo_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_DsReplicaDelRequest(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaDel_req, 0);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDomainControllerInfo_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_DsGetDomainControllerInfo_bind_handle);
return offset;
}
-/* IDL: WERROR drsuapi_DsReplicaDel( */
-/* IDL: [in] [ref] policy_handle *bind_handle, */
-/* IDL: [in] uint32 level, */
-/* IDL: [in] [switch_is(level)] drsuapi_DsReplicaDelRequest req */
-/* IDL: ); */
-
static int
-drsuapi_dissect_DsReplicaDel_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDomainControllerInfo_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- guint32 status;
-
- di->dcerpc_procedure_name="DsReplicaDel";
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
-
- if (status != 0)
- col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x"));
+ offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDomainControllerInfo_bind_handle, 0);
return offset;
}
static int
-drsuapi_dissect_DsReplicaDel_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDomainControllerInfo_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- di->dcerpc_procedure_name="DsReplicaDel";
- offset = drsuapi_dissect_element_DsReplicaDel_bind_handle(tvb, offset, pinfo, tree, di, drep);
- offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsReplicaDel_level(tvb, offset, pinfo, tree, di, drep);
- offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsReplicaDel_req(tvb, offset, pinfo, tree, di, drep);
- offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDomainControllerInfo_level, 0);
+
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaMod_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDomainControllerInfo_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaMod_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_DsReplicaMod_bind_handle);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDomainControllerInfo_req_, NDR_POINTER_REF, "Pointer to Req (drsuapi_DsGetDCInfoRequest)",hf_drsuapi_drsuapi_DsGetDomainControllerInfo_req);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaMod_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDomainControllerInfo_req_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaMod_bind_handle, 0);
+ offset = drsuapi_dissect_DsGetDCInfoRequest(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDomainControllerInfo_req, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaMod_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDomainControllerInfo_level_out(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaMod_level, 0);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDomainControllerInfo_level_out_, NDR_POINTER_REF, "Pointer to Level Out (drsuapi_DsGetDCInfoCtrLevels)",hf_drsuapi_drsuapi_DsGetDomainControllerInfo_level_out);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaMod_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDomainControllerInfo_level_out_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_DsReplicaModRequest(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaMod_req, 0);
+ offset = drsuapi_dissect_enum_DsGetDCInfoCtrLevels(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDomainControllerInfo_level_out, 0);
return offset;
}
-/* IDL: WERROR drsuapi_DsReplicaMod( */
-/* IDL: [in] [ref] policy_handle *bind_handle, */
-/* IDL: [in] uint32 level, */
-/* IDL: [in] [switch_is(level)] drsuapi_DsReplicaModRequest req */
-/* IDL: ); */
-
static int
-drsuapi_dissect_DsReplicaMod_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetDomainControllerInfo_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- guint32 status;
-
- di->dcerpc_procedure_name="DsReplicaMod";
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
-
- if (status != 0)
- col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x"));
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDomainControllerInfo_ctr_, NDR_POINTER_REF, "Pointer to Ctr (drsuapi_DsGetDCInfoCtr)",hf_drsuapi_drsuapi_DsGetDomainControllerInfo_ctr);
return offset;
}
-
-static int
-drsuapi_dissect_DsReplicaMod_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- di->dcerpc_procedure_name="DsReplicaMod";
- offset = drsuapi_dissect_element_DsReplicaMod_bind_handle(tvb, offset, pinfo, tree, di, drep);
- offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsReplicaMod_level(tvb, offset, pinfo, tree, di, drep);
- offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsReplicaMod_req(tvb, offset, pinfo, tree, di, drep);
- offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+
+static int
+drsuapi_dissect_element_DsGetDomainControllerInfo_ctr_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_DsGetDCInfoCtr(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDomainControllerInfo_ctr, 0);
+
return offset;
}
-/* IDL: WERROR DRSUAPI_VERIFY_NAMES( */
-/* IDL: */
+/* IDL: WERROR drsuapi_DsGetDomainControllerInfo( */
+/* IDL: [in] [ref] policy_handle *bind_handle, */
+/* IDL: [in] uint32 level, */
+/* IDL: [in] [ref] [switch_is(level)] drsuapi_DsGetDCInfoRequest *req, */
+/* IDL: [out] [ref] drsuapi_DsGetDCInfoCtrLevels *level_out, */
+/* IDL: [out] [ref] [switch_is(*level_out)] drsuapi_DsGetDCInfoCtr *ctr */
/* IDL: ); */
static int
-drsuapi_dissect_DRSUAPI_VERIFY_NAMES_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsGetDomainControllerInfo_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
guint32 status;
- di->dcerpc_procedure_name="DRSUAPI_VERIFY_NAMES";
+ di->dcerpc_procedure_name="DsGetDomainControllerInfo";
+ offset = drsuapi_dissect_element_DsGetDomainControllerInfo_level_out(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+
+ offset = drsuapi_dissect_element_DsGetDomainControllerInfo_ctr(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+
offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
if (status != 0)
}
static int
-drsuapi_dissect_DRSUAPI_VERIFY_NAMES_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsGetDomainControllerInfo_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- di->dcerpc_procedure_name="DRSUAPI_VERIFY_NAMES";
+ di->dcerpc_procedure_name="DsGetDomainControllerInfo";
+ offset = drsuapi_dissect_element_DsGetDomainControllerInfo_bind_handle(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+ offset = drsuapi_dissect_element_DsGetDomainControllerInfo_level(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+ offset = drsuapi_dissect_element_DsGetDomainControllerInfo_req(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
return offset;
}
static int
-drsuapi_dissect_element_DsGetMemberships_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntry_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMemberships_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_DsGetMemberships_bind_handle);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAddEntry_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_DsAddEntry_bind_handle);
return offset;
}
static int
-drsuapi_dissect_element_DsGetMemberships_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntry_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetMemberships_bind_handle, 0);
+ offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_bind_handle, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetMemberships_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntry_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetMemberships_level, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_level, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetMemberships_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntry_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMemberships_req_, NDR_POINTER_REF, "Pointer to Req (drsuapi_DsGetMembershipsRequest)",hf_drsuapi_drsuapi_DsGetMemberships_req);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAddEntry_req_, NDR_POINTER_REF, "Pointer to Req (drsuapi_DsAddEntryRequest)",hf_drsuapi_drsuapi_DsAddEntry_req);
return offset;
}
static int
-drsuapi_dissect_element_DsGetMemberships_req_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntry_req_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_DsGetMembershipsRequest(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetMemberships_req, 0);
+ offset = drsuapi_dissect_DsAddEntryRequest(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_req, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetMemberships_level_out(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntry_level_out(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMemberships_level_out_, NDR_POINTER_REF, "Pointer to Level Out (uint32)",hf_drsuapi_drsuapi_DsGetMemberships_level_out);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAddEntry_level_out_, NDR_POINTER_REF, "Pointer to Level Out (uint32)",hf_drsuapi_drsuapi_DsAddEntry_level_out);
return offset;
}
static int
-drsuapi_dissect_element_DsGetMemberships_level_out_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntry_level_out_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetMemberships_level_out, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_level_out, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetMemberships_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntry_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMemberships_ctr_, NDR_POINTER_REF, "Pointer to Ctr (drsuapi_DsGetMembershipsCtr)",hf_drsuapi_drsuapi_DsGetMemberships_ctr);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAddEntry_ctr_, NDR_POINTER_REF, "Pointer to Ctr (drsuapi_DsAddEntryCtr)",hf_drsuapi_drsuapi_DsAddEntry_ctr);
return offset;
}
static int
-drsuapi_dissect_element_DsGetMemberships_ctr_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsAddEntry_ctr_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_DsGetMembershipsCtr(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetMemberships_ctr, 0);
+ offset = drsuapi_dissect_DsAddEntryCtr(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_ctr, 0);
return offset;
}
-/* IDL: WERROR drsuapi_DsGetMemberships( */
+/* IDL: WERROR drsuapi_DsAddEntry( */
/* IDL: [in] [ref] policy_handle *bind_handle, */
/* IDL: [in] uint32 level, */
-/* IDL: [in] [ref] [switch_is(level)] drsuapi_DsGetMembershipsRequest *req, */
+/* IDL: [in] [ref] [switch_is(level)] drsuapi_DsAddEntryRequest *req, */
/* IDL: [out] [ref] uint32 *level_out, */
-/* IDL: [out] [ref] [switch_is(*level_out)] drsuapi_DsGetMembershipsCtr *ctr */
+/* IDL: [out] [ref] [switch_is(*level_out)] drsuapi_DsAddEntryCtr *ctr */
/* IDL: ); */
static int
-drsuapi_dissect_DsGetMemberships_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsAddEntry_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
guint32 status;
- di->dcerpc_procedure_name="DsGetMemberships";
- offset = drsuapi_dissect_element_DsGetMemberships_level_out(tvb, offset, pinfo, tree, di, drep);
+ di->dcerpc_procedure_name="DsAddEntry";
+ offset = drsuapi_dissect_element_DsAddEntry_level_out(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsGetMemberships_ctr(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsAddEntry_ctr(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
}
static int
-drsuapi_dissect_DsGetMemberships_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsAddEntry_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- di->dcerpc_procedure_name="DsGetMemberships";
- offset = drsuapi_dissect_element_DsGetMemberships_bind_handle(tvb, offset, pinfo, tree, di, drep);
+ di->dcerpc_procedure_name="DsAddEntry";
+ offset = drsuapi_dissect_element_DsAddEntry_bind_handle(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsGetMemberships_level(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsAddEntry_level(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsGetMemberships_req(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsAddEntry_req(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
return offset;
}
-/* IDL: WERROR DRSUAPI_INTER_DOMAIN_MOVE( */
-/* IDL: */
-/* IDL: ); */
-
static int
-drsuapi_dissect_DRSUAPI_INTER_DOMAIN_MOVE_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsExecuteKCC_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- guint32 status;
-
- di->dcerpc_procedure_name="DRSUAPI_INTER_DOMAIN_MOVE";
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
-
- if (status != 0)
- col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x"));
-
- return offset;
-}
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsExecuteKCC_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_DsExecuteKCC_bind_handle);
-static int
-drsuapi_dissect_DRSUAPI_INTER_DOMAIN_MOVE_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- di->dcerpc_procedure_name="DRSUAPI_INTER_DOMAIN_MOVE";
return offset;
}
static int
-drsuapi_dissect_element_DsGetNT4ChangeLog_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsExecuteKCC_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNT4ChangeLog_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_DsGetNT4ChangeLog_bind_handle);
+ offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsExecuteKCC_bind_handle, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNT4ChangeLog_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsExecuteKCC_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLog_bind_handle, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsExecuteKCC_level, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNT4ChangeLog_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsExecuteKCC_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLog_level, 0);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsExecuteKCC_req_, NDR_POINTER_REF, "Pointer to Req (drsuapi_DsExecuteKCCRequest)",hf_drsuapi_drsuapi_DsExecuteKCC_req);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNT4ChangeLog_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsExecuteKCC_req_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNT4ChangeLog_req_, NDR_POINTER_REF, "Pointer to Req (drsuapi_DsGetNT4ChangeLogRequest)",hf_drsuapi_drsuapi_DsGetNT4ChangeLog_req);
+ offset = drsuapi_dissect_DsExecuteKCCRequest(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsExecuteKCC_req, 0);
return offset;
}
+/* IDL: WERROR drsuapi_DsExecuteKCC( */
+/* IDL: [in] [ref] policy_handle *bind_handle, */
+/* IDL: [in] uint32 level, */
+/* IDL: [in] [ref] [switch_is(level)] drsuapi_DsExecuteKCCRequest *req */
+/* IDL: ); */
+
static int
-drsuapi_dissect_element_DsGetNT4ChangeLog_req_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsExecuteKCC_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_DsGetNT4ChangeLogRequest(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLog_req, 0);
+ guint32 status;
- return offset;
-}
+ di->dcerpc_procedure_name="DsExecuteKCC";
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
-static int
-drsuapi_dissect_element_DsGetNT4ChangeLog_level_out(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNT4ChangeLog_level_out_, NDR_POINTER_REF, "Pointer to Level Out (uint32)",hf_drsuapi_drsuapi_DsGetNT4ChangeLog_level_out);
+ if (status != 0)
+ col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x"));
return offset;
}
static int
-drsuapi_dissect_element_DsGetNT4ChangeLog_level_out_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsExecuteKCC_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLog_level_out, 0);
-
+ di->dcerpc_procedure_name="DsExecuteKCC";
+ offset = drsuapi_dissect_element_DsExecuteKCC_bind_handle(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+ offset = drsuapi_dissect_element_DsExecuteKCC_level(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+ offset = drsuapi_dissect_element_DsExecuteKCC_req(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNT4ChangeLog_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaGetInfo_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetNT4ChangeLog_info_, NDR_POINTER_REF, "Pointer to Info (drsuapi_DsGetNT4ChangeLogInfo)",hf_drsuapi_drsuapi_DsGetNT4ChangeLog_info);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaGetInfo_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_DsReplicaGetInfo_bind_handle);
return offset;
}
static int
-drsuapi_dissect_element_DsGetNT4ChangeLog_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaGetInfo_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_DsGetNT4ChangeLogInfo(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetNT4ChangeLog_info, 0);
+ offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaGetInfo_bind_handle, 0);
return offset;
}
-/* IDL: WERROR drsuapi_DsGetNT4ChangeLog( */
-/* IDL: [in] [ref] policy_handle *bind_handle, */
-/* IDL: [in] uint32 level, */
-/* IDL: [in] [ref] [switch_is(level)] drsuapi_DsGetNT4ChangeLogRequest *req, */
-/* IDL: [out] [ref] uint32 *level_out, */
-/* IDL: [out] [ref] [switch_is(*level_out)] drsuapi_DsGetNT4ChangeLogInfo *info */
-/* IDL: ); */
-
static int
-drsuapi_dissect_DsGetNT4ChangeLog_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaGetInfo_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- guint32 status;
-
- di->dcerpc_procedure_name="DsGetNT4ChangeLog";
- offset = drsuapi_dissect_element_DsGetNT4ChangeLog_level_out(tvb, offset, pinfo, tree, di, drep);
- offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
-
- offset = drsuapi_dissect_element_DsGetNT4ChangeLog_info(tvb, offset, pinfo, tree, di, drep);
- offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
-
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
-
- if (status != 0)
- col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x"));
+ offset = drsuapi_dissect_enum_DsReplicaGetInfoLevel(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaGetInfo_level, 0);
return offset;
}
static int
-drsuapi_dissect_DsGetNT4ChangeLog_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaGetInfo_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- di->dcerpc_procedure_name="DsGetNT4ChangeLog";
- offset = drsuapi_dissect_element_DsGetNT4ChangeLog_bind_handle(tvb, offset, pinfo, tree, di, drep);
- offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsGetNT4ChangeLog_level(tvb, offset, pinfo, tree, di, drep);
- offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsGetNT4ChangeLog_req(tvb, offset, pinfo, tree, di, drep);
- offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaGetInfo_req_, NDR_POINTER_REF, "Pointer to Req (drsuapi_DsReplicaGetInfoRequest)",hf_drsuapi_drsuapi_DsReplicaGetInfo_req);
+
return offset;
}
static int
-drsuapi_dissect_element_DsCrackNames_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaGetInfo_req_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsCrackNames_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_DsCrackNames_bind_handle);
+ offset = drsuapi_dissect_DsReplicaGetInfoRequest(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaGetInfo_req, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsCrackNames_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaGetInfo_info_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsCrackNames_bind_handle, 0);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaGetInfo_info_type_, NDR_POINTER_REF, "Pointer to Info Type (drsuapi_DsReplicaInfoType)",hf_drsuapi_drsuapi_DsReplicaGetInfo_info_type);
return offset;
}
static int
-drsuapi_dissect_element_DsCrackNames_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaGetInfo_info_type_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsCrackNames_level, 0);
+ offset = drsuapi_dissect_enum_DsReplicaInfoType(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaGetInfo_info_type, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsCrackNames_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaGetInfo_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsCrackNames_req_, NDR_POINTER_REF, "Pointer to Req (drsuapi_DsNameRequest)",hf_drsuapi_drsuapi_DsCrackNames_req);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaGetInfo_info_, NDR_POINTER_REF, "Pointer to Info (drsuapi_DsReplicaInfo)",hf_drsuapi_drsuapi_DsReplicaGetInfo_info);
return offset;
}
static int
-drsuapi_dissect_element_DsCrackNames_req_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsReplicaGetInfo_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_DsNameRequest(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsCrackNames_req, 0);
+ offset = drsuapi_dissect_DsReplicaInfo(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaGetInfo_info, 0);
return offset;
}
+/* IDL: WERROR drsuapi_DsReplicaGetInfo( */
+/* IDL: [in] [ref] policy_handle *bind_handle, */
+/* IDL: [in] drsuapi_DsReplicaGetInfoLevel level, */
+/* IDL: [in] [ref] [switch_is(level)] drsuapi_DsReplicaGetInfoRequest *req, */
+/* IDL: [out] [ref] drsuapi_DsReplicaInfoType *info_type, */
+/* IDL: [out] [ref] [switch_is(*info_type)] drsuapi_DsReplicaInfo *info */
+/* IDL: ); */
+
static int
-drsuapi_dissect_element_DsCrackNames_level_out(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsReplicaGetInfo_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsCrackNames_level_out_, NDR_POINTER_REF, "Pointer to Level Out (uint32)",hf_drsuapi_drsuapi_DsCrackNames_level_out);
+ guint32 status;
- return offset;
-}
+ di->dcerpc_procedure_name="DsReplicaGetInfo";
+ offset = drsuapi_dissect_element_DsReplicaGetInfo_info_type(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
-static int
-drsuapi_dissect_element_DsCrackNames_level_out_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsCrackNames_level_out, 0);
+ offset = drsuapi_dissect_element_DsReplicaGetInfo_info(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- return offset;
-}
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
-static int
-drsuapi_dissect_element_DsCrackNames_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsCrackNames_ctr_, NDR_POINTER_REF, "Pointer to Ctr (drsuapi_DsNameCtr)",hf_drsuapi_drsuapi_DsCrackNames_ctr);
+ if (status != 0)
+ col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x"));
return offset;
}
static int
-drsuapi_dissect_element_DsCrackNames_ctr_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsReplicaGetInfo_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_DsNameCtr(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsCrackNames_ctr, 0);
-
+ di->dcerpc_procedure_name="DsReplicaGetInfo";
+ offset = drsuapi_dissect_element_DsReplicaGetInfo_bind_handle(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaGetInfo_level(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+ offset = drsuapi_dissect_element_DsReplicaGetInfo_req(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
return offset;
}
-/* IDL: WERROR drsuapi_DsCrackNames( */
-/* IDL: [in] [ref] policy_handle *bind_handle, */
-/* IDL: [in] uint32 level, */
-/* IDL: [in] [ref] [switch_is(level)] drsuapi_DsNameRequest *req, */
-/* IDL: [out] [ref] uint32 *level_out, */
-/* IDL: [out] [ref] [switch_is(*level_out)] drsuapi_DsNameCtr *ctr */
+/* IDL: WERROR DRSUAPI_ADD_SID_HISTORY( */
+/* IDL: */
/* IDL: ); */
static int
-drsuapi_dissect_DsCrackNames_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DRSUAPI_ADD_SID_HISTORY_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
guint32 status;
- di->dcerpc_procedure_name="DsCrackNames";
- offset = drsuapi_dissect_element_DsCrackNames_level_out(tvb, offset, pinfo, tree, di, drep);
- offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
-
- offset = drsuapi_dissect_element_DsCrackNames_ctr(tvb, offset, pinfo, tree, di, drep);
- offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
-
+ di->dcerpc_procedure_name="DRSUAPI_ADD_SID_HISTORY";
offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
if (status != 0)
}
static int
-drsuapi_dissect_DsCrackNames_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DRSUAPI_ADD_SID_HISTORY_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- di->dcerpc_procedure_name="DsCrackNames";
- offset = drsuapi_dissect_element_DsCrackNames_bind_handle(tvb, offset, pinfo, tree, di, drep);
- offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsCrackNames_level(tvb, offset, pinfo, tree, di, drep);
- offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsCrackNames_req(tvb, offset, pinfo, tree, di, drep);
- offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+ di->dcerpc_procedure_name="DRSUAPI_ADD_SID_HISTORY";
return offset;
}
static int
-drsuapi_dissect_element_DsWriteAccountSpn_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMemberships2_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsWriteAccountSpn_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_DsWriteAccountSpn_bind_handle);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMemberships2_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_DsGetMemberships2_bind_handle);
return offset;
}
static int
-drsuapi_dissect_element_DsWriteAccountSpn_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMemberships2_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsWriteAccountSpn_bind_handle, 0);
+ offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetMemberships2_bind_handle, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsWriteAccountSpn_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMemberships2_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsWriteAccountSpn_level, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetMemberships2_level, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsWriteAccountSpn_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMemberships2_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsWriteAccountSpn_req_, NDR_POINTER_REF, "Pointer to Req (drsuapi_DsWriteAccountSpnRequest)",hf_drsuapi_drsuapi_DsWriteAccountSpn_req);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMemberships2_req_, NDR_POINTER_REF, "Pointer to Req (drsuapi_DsGetMemberships2Request)",hf_drsuapi_drsuapi_DsGetMemberships2_req);
return offset;
}
static int
-drsuapi_dissect_element_DsWriteAccountSpn_req_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMemberships2_req_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_DsWriteAccountSpnRequest(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsWriteAccountSpn_req, 0);
+ offset = drsuapi_dissect_DsGetMemberships2Request(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetMemberships2_req, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsWriteAccountSpn_level_out(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMemberships2_level_out(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsWriteAccountSpn_level_out_, NDR_POINTER_REF, "Pointer to Level Out (uint32)",hf_drsuapi_drsuapi_DsWriteAccountSpn_level_out);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMemberships2_level_out_, NDR_POINTER_REF, "Pointer to Level Out (uint32)",hf_drsuapi_drsuapi_DsGetMemberships2_level_out);
return offset;
}
static int
-drsuapi_dissect_element_DsWriteAccountSpn_level_out_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMemberships2_level_out_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsWriteAccountSpn_level_out, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetMemberships2_level_out, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsWriteAccountSpn_res(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMemberships2_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsWriteAccountSpn_res_, NDR_POINTER_REF, "Pointer to Res (drsuapi_DsWriteAccountSpnResult)",hf_drsuapi_drsuapi_DsWriteAccountSpn_res);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMemberships2_ctr_, NDR_POINTER_REF, "Pointer to Ctr (drsuapi_DsGetMemberships2Ctr)",hf_drsuapi_drsuapi_DsGetMemberships2_ctr);
return offset;
}
static int
-drsuapi_dissect_element_DsWriteAccountSpn_res_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_DsGetMemberships2_ctr_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_DsWriteAccountSpnResult(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsWriteAccountSpn_res, 0);
+ offset = drsuapi_dissect_DsGetMemberships2Ctr(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetMemberships2_ctr, 0);
return offset;
}
-/* IDL: WERROR drsuapi_DsWriteAccountSpn( */
+/* IDL: WERROR drsuapi_DsGetMemberships2( */
/* IDL: [in] [ref] policy_handle *bind_handle, */
/* IDL: [in] uint32 level, */
-/* IDL: [in] [ref] [switch_is(level)] drsuapi_DsWriteAccountSpnRequest *req, */
+/* IDL: [in] [ref] [switch_is(level)] drsuapi_DsGetMemberships2Request *req, */
/* IDL: [out] [ref] uint32 *level_out, */
-/* IDL: [out] [ref] [switch_is(*level_out)] drsuapi_DsWriteAccountSpnResult *res */
+/* IDL: [out] [ref] [switch_is(*level_out)] drsuapi_DsGetMemberships2Ctr *ctr */
/* IDL: ); */
static int
-drsuapi_dissect_DsWriteAccountSpn_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsGetMemberships2_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
guint32 status;
- di->dcerpc_procedure_name="DsWriteAccountSpn";
- offset = drsuapi_dissect_element_DsWriteAccountSpn_level_out(tvb, offset, pinfo, tree, di, drep);
+ di->dcerpc_procedure_name="DsGetMemberships2";
+ offset = drsuapi_dissect_element_DsGetMemberships2_level_out(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsWriteAccountSpn_res(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetMemberships2_ctr(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
}
static int
-drsuapi_dissect_DsWriteAccountSpn_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DsGetMemberships2_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- di->dcerpc_procedure_name="DsWriteAccountSpn";
- offset = drsuapi_dissect_element_DsWriteAccountSpn_bind_handle(tvb, offset, pinfo, tree, di, drep);
+ di->dcerpc_procedure_name="DsGetMemberships2";
+ offset = drsuapi_dissect_element_DsGetMemberships2_bind_handle(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsWriteAccountSpn_level(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetMemberships2_level(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsWriteAccountSpn_req(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_DsGetMemberships2_req(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
return offset;
}
+/* IDL: WERROR DRSUAPI_REPLICA_VERIFY_OBJECTS( */
+/* IDL: */
+/* IDL: ); */
+
static int
-drsuapi_dissect_element_DsRemoveDSServer_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DRSUAPI_REPLICA_VERIFY_OBJECTS_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsRemoveDSServer_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_DsRemoveDSServer_bind_handle);
+ guint32 status;
+
+ di->dcerpc_procedure_name="DRSUAPI_REPLICA_VERIFY_OBJECTS";
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
+
+ if (status != 0)
+ col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x"));
return offset;
}
static int
-drsuapi_dissect_element_DsRemoveDSServer_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DRSUAPI_REPLICA_VERIFY_OBJECTS_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsRemoveDSServer_bind_handle, 0);
-
+ di->dcerpc_procedure_name="DRSUAPI_REPLICA_VERIFY_OBJECTS";
return offset;
}
+/* IDL: WERROR DRSUAPI_GET_OBJECT_EXISTENCE( */
+/* IDL: */
+/* IDL: ); */
+
static int
-drsuapi_dissect_element_DsRemoveDSServer_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DRSUAPI_GET_OBJECT_EXISTENCE_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsRemoveDSServer_level, 0);
+ guint32 status;
+
+ di->dcerpc_procedure_name="DRSUAPI_GET_OBJECT_EXISTENCE";
+ offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
+
+ if (status != 0)
+ col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x"));
return offset;
}
static int
-drsuapi_dissect_element_DsRemoveDSServer_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_DRSUAPI_GET_OBJECT_EXISTENCE_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsRemoveDSServer_req_, NDR_POINTER_REF, "Pointer to Req (drsuapi_DsRemoveDSServerRequest)",hf_drsuapi_drsuapi_DsRemoveDSServer_req);
-
+ di->dcerpc_procedure_name="DRSUAPI_GET_OBJECT_EXISTENCE";
return offset;
}
static int
-drsuapi_dissect_element_DsRemoveDSServer_req_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_QuerySitesByCost_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_DsRemoveDSServerRequest(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsRemoveDSServer_req, 0);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_QuerySitesByCost_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_QuerySitesByCost_bind_handle);
return offset;
}
static int
-drsuapi_dissect_element_DsRemoveDSServer_level_out(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_QuerySitesByCost_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsRemoveDSServer_level_out_, NDR_POINTER_REF, "Pointer to Level Out (uint32)",hf_drsuapi_drsuapi_DsRemoveDSServer_level_out);
+ offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_QuerySitesByCost_bind_handle, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsRemoveDSServer_level_out_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_QuerySitesByCost_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsRemoveDSServer_level_out, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_QuerySitesByCost_level, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsRemoveDSServer_res(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_QuerySitesByCost_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsRemoveDSServer_res_, NDR_POINTER_REF, "Pointer to Res (drsuapi_DsRemoveDSServerResult)",hf_drsuapi_drsuapi_DsRemoveDSServer_res);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_QuerySitesByCost_req_, NDR_POINTER_REF, "Pointer to Req (drsuapi_QuerySitesByCostRequest)",hf_drsuapi_drsuapi_QuerySitesByCost_req);
return offset;
}
static int
-drsuapi_dissect_element_DsRemoveDSServer_res_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_QuerySitesByCost_req_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_DsRemoveDSServerResult(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsRemoveDSServer_res, 0);
+ offset = drsuapi_dissect_QuerySitesByCostRequest(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_QuerySitesByCost_req, 0);
return offset;
}
-/* IDL: WERROR drsuapi_DsRemoveDSServer( */
-/* IDL: [in] [ref] policy_handle *bind_handle, */
-/* IDL: [in] uint32 level, */
-/* IDL: [in] [ref] [switch_is(level)] drsuapi_DsRemoveDSServerRequest *req, */
-/* IDL: [out] [ref] uint32 *level_out, */
-/* IDL: [out] [ref] [switch_is(*level_out)] drsuapi_DsRemoveDSServerResult *res */
-/* IDL: ); */
-
static int
-drsuapi_dissect_DsRemoveDSServer_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_QuerySitesByCost_level_out(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- guint32 status;
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_QuerySitesByCost_level_out_, NDR_POINTER_REF, "Pointer to Level Out (uint32)",hf_drsuapi_drsuapi_QuerySitesByCost_level_out);
- di->dcerpc_procedure_name="DsRemoveDSServer";
- offset = drsuapi_dissect_element_DsRemoveDSServer_level_out(tvb, offset, pinfo, tree, di, drep);
- offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+ return offset;
+}
- offset = drsuapi_dissect_element_DsRemoveDSServer_res(tvb, offset, pinfo, tree, di, drep);
- offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+static int
+drsuapi_dissect_element_QuerySitesByCost_level_out_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_QuerySitesByCost_level_out, 0);
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
+ return offset;
+}
- if (status != 0)
- col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x"));
+static int
+drsuapi_dissect_element_QuerySitesByCost_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_QuerySitesByCost_ctr_, NDR_POINTER_REF, "Pointer to Ctr (drsuapi_QuerySitesByCostCtr)",hf_drsuapi_drsuapi_QuerySitesByCost_ctr);
return offset;
}
static int
-drsuapi_dissect_DsRemoveDSServer_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_QuerySitesByCost_ctr_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- di->dcerpc_procedure_name="DsRemoveDSServer";
- offset = drsuapi_dissect_element_DsRemoveDSServer_bind_handle(tvb, offset, pinfo, tree, di, drep);
- offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsRemoveDSServer_level(tvb, offset, pinfo, tree, di, drep);
- offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsRemoveDSServer_req(tvb, offset, pinfo, tree, di, drep);
- offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+ offset = drsuapi_dissect_QuerySitesByCostCtr(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_QuerySitesByCost_ctr, 0);
+
return offset;
}
-/* IDL: WERROR DRSUAPI_REMOVE_DS_DOMAIN( */
-/* IDL: */
+/* IDL: WERROR drsuapi_QuerySitesByCost( */
+/* IDL: [in] [ref] policy_handle *bind_handle, */
+/* IDL: [in] uint32 level, */
+/* IDL: [in] [ref] [switch_is(level)] drsuapi_QuerySitesByCostRequest *req, */
+/* IDL: [out] [ref] uint32 *level_out, */
+/* IDL: [out] [ref] [switch_is(*level_out)] drsuapi_QuerySitesByCostCtr *ctr */
/* IDL: ); */
static int
-drsuapi_dissect_DRSUAPI_REMOVE_DS_DOMAIN_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_QuerySitesByCost_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
guint32 status;
- di->dcerpc_procedure_name="DRSUAPI_REMOVE_DS_DOMAIN";
+ di->dcerpc_procedure_name="QuerySitesByCost";
+ offset = drsuapi_dissect_element_QuerySitesByCost_level_out(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+
+ offset = drsuapi_dissect_element_QuerySitesByCost_ctr(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+
offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
if (status != 0)
}
static int
-drsuapi_dissect_DRSUAPI_REMOVE_DS_DOMAIN_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_QuerySitesByCost_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- di->dcerpc_procedure_name="DRSUAPI_REMOVE_DS_DOMAIN";
+ di->dcerpc_procedure_name="QuerySitesByCost";
+ offset = drsuapi_dissect_element_QuerySitesByCost_bind_handle(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+ offset = drsuapi_dissect_element_QuerySitesByCost_level(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+ offset = drsuapi_dissect_element_QuerySitesByCost_req(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDomainControllerInfo_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_InitDemotion_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDomainControllerInfo_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_DsGetDomainControllerInfo_bind_handle);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_InitDemotion_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_InitDemotion_bind_handle);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDomainControllerInfo_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_InitDemotion_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDomainControllerInfo_bind_handle, 0);
+ offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_InitDemotion_bind_handle, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDomainControllerInfo_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_InitDemotion_in_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDomainControllerInfo_level, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_InitDemotion_in_version, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDomainControllerInfo_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_InitDemotion_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDomainControllerInfo_req_, NDR_POINTER_REF, "Pointer to Req (drsuapi_DsGetDCInfoRequest)",hf_drsuapi_drsuapi_DsGetDomainControllerInfo_req);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_InitDemotion_req_, NDR_POINTER_REF, "Pointer to Req (drsuapi_InitDemotionRequest)",hf_drsuapi_drsuapi_InitDemotion_req);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDomainControllerInfo_req_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_InitDemotion_req_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_DsGetDCInfoRequest(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDomainControllerInfo_req, 0);
+ offset = drsuapi_dissect_InitDemotionRequest(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_InitDemotion_req, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDomainControllerInfo_level_out(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_InitDemotion_out_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDomainControllerInfo_level_out_, NDR_POINTER_REF, "Pointer to Level Out (drsuapi_DsGetDCInfoCtrLevels)",hf_drsuapi_drsuapi_DsGetDomainControllerInfo_level_out);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_InitDemotion_out_version_, NDR_POINTER_REF, "Pointer to Out Version (uint32)",hf_drsuapi_drsuapi_InitDemotion_out_version);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDomainControllerInfo_level_out_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_InitDemotion_out_version_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_enum_DsGetDCInfoCtrLevels(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDomainControllerInfo_level_out, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_InitDemotion_out_version, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDomainControllerInfo_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_InitDemotion_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetDomainControllerInfo_ctr_, NDR_POINTER_REF, "Pointer to Ctr (drsuapi_DsGetDCInfoCtr)",hf_drsuapi_drsuapi_DsGetDomainControllerInfo_ctr);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_InitDemotion_ctr_, NDR_POINTER_REF, "Pointer to Ctr (drsuapi_InitDemotionCtr)",hf_drsuapi_drsuapi_InitDemotion_ctr);
return offset;
}
static int
-drsuapi_dissect_element_DsGetDomainControllerInfo_ctr_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_InitDemotion_ctr_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_DsGetDCInfoCtr(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetDomainControllerInfo_ctr, 0);
+ offset = drsuapi_dissect_InitDemotionCtr(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_InitDemotion_ctr, 0);
return offset;
}
-/* IDL: WERROR drsuapi_DsGetDomainControllerInfo( */
+/* IDL: WERROR drsuapi_InitDemotion( */
/* IDL: [in] [ref] policy_handle *bind_handle, */
-/* IDL: [in] uint32 level, */
-/* IDL: [in] [ref] [switch_is(level)] drsuapi_DsGetDCInfoRequest *req, */
-/* IDL: [out] [ref] drsuapi_DsGetDCInfoCtrLevels *level_out, */
-/* IDL: [out] [ref] [switch_is(*level_out)] drsuapi_DsGetDCInfoCtr *ctr */
+/* IDL: [in] uint32 in_version, */
+/* IDL: [in] [ref] [switch_is(in_version)] drsuapi_InitDemotionRequest *req, */
+/* IDL: [out] [ref] uint32 *out_version, */
+/* IDL: [out] [ref] [switch_is(*out_version)] drsuapi_InitDemotionCtr *ctr */
/* IDL: ); */
static int
-drsuapi_dissect_DsGetDomainControllerInfo_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_InitDemotion_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
guint32 status;
- di->dcerpc_procedure_name="DsGetDomainControllerInfo";
- offset = drsuapi_dissect_element_DsGetDomainControllerInfo_level_out(tvb, offset, pinfo, tree, di, drep);
+ di->dcerpc_procedure_name="InitDemotion";
+ offset = drsuapi_dissect_element_InitDemotion_out_version(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsGetDomainControllerInfo_ctr(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_InitDemotion_ctr(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
}
static int
-drsuapi_dissect_DsGetDomainControllerInfo_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_InitDemotion_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- di->dcerpc_procedure_name="DsGetDomainControllerInfo";
- offset = drsuapi_dissect_element_DsGetDomainControllerInfo_bind_handle(tvb, offset, pinfo, tree, di, drep);
+ di->dcerpc_procedure_name="InitDemotion";
+ offset = drsuapi_dissect_element_InitDemotion_bind_handle(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsGetDomainControllerInfo_level(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_InitDemotion_in_version(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsGetDomainControllerInfo_req(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_InitDemotion_req(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntry_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_ReplicaDemotion_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAddEntry_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_DsAddEntry_bind_handle);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_ReplicaDemotion_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_ReplicaDemotion_bind_handle);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntry_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_ReplicaDemotion_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_bind_handle, 0);
+ offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_ReplicaDemotion_bind_handle, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntry_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_ReplicaDemotion_in_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_level, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_ReplicaDemotion_in_version, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntry_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_ReplicaDemotion_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAddEntry_req_, NDR_POINTER_REF, "Pointer to Req (drsuapi_DsAddEntryRequest)",hf_drsuapi_drsuapi_DsAddEntry_req);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_ReplicaDemotion_req_, NDR_POINTER_REF, "Pointer to Req (drsuapi_ReplicaDemotionRequest)",hf_drsuapi_drsuapi_ReplicaDemotion_req);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntry_req_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_ReplicaDemotion_req_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_DsAddEntryRequest(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_req, 0);
+ offset = drsuapi_dissect_ReplicaDemotionRequest(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_ReplicaDemotion_req, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntry_level_out(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_ReplicaDemotion_out_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAddEntry_level_out_, NDR_POINTER_REF, "Pointer to Level Out (uint32)",hf_drsuapi_drsuapi_DsAddEntry_level_out);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_ReplicaDemotion_out_version_, NDR_POINTER_REF, "Pointer to Out Version (uint32)",hf_drsuapi_drsuapi_ReplicaDemotion_out_version);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntry_level_out_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_ReplicaDemotion_out_version_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_level_out, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_ReplicaDemotion_out_version, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntry_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_ReplicaDemotion_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsAddEntry_ctr_, NDR_POINTER_REF, "Pointer to Ctr (drsuapi_DsAddEntryCtr)",hf_drsuapi_drsuapi_DsAddEntry_ctr);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_ReplicaDemotion_ctr_, NDR_POINTER_REF, "Pointer to Ctr (drsuapi_ReplicaDemotionCtr)",hf_drsuapi_drsuapi_ReplicaDemotion_ctr);
return offset;
}
static int
-drsuapi_dissect_element_DsAddEntry_ctr_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_ReplicaDemotion_ctr_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_DsAddEntryCtr(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsAddEntry_ctr, 0);
+ offset = drsuapi_dissect_ReplicaDemotionCtr(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_ReplicaDemotion_ctr, 0);
return offset;
}
-/* IDL: WERROR drsuapi_DsAddEntry( */
+/* IDL: WERROR drsuapi_ReplicaDemotion( */
/* IDL: [in] [ref] policy_handle *bind_handle, */
-/* IDL: [in] uint32 level, */
-/* IDL: [in] [ref] [switch_is(level)] drsuapi_DsAddEntryRequest *req, */
-/* IDL: [out] [ref] uint32 *level_out, */
-/* IDL: [out] [ref] [switch_is(*level_out)] drsuapi_DsAddEntryCtr *ctr */
+/* IDL: [in] uint32 in_version, */
+/* IDL: [in] [ref] [switch_is(in_version)] drsuapi_ReplicaDemotionRequest *req, */
+/* IDL: [out] [ref] uint32 *out_version, */
+/* IDL: [out] [ref] [switch_is(*out_version)] drsuapi_ReplicaDemotionCtr *ctr */
/* IDL: ); */
static int
-drsuapi_dissect_DsAddEntry_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_ReplicaDemotion_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
guint32 status;
- di->dcerpc_procedure_name="DsAddEntry";
- offset = drsuapi_dissect_element_DsAddEntry_level_out(tvb, offset, pinfo, tree, di, drep);
+ di->dcerpc_procedure_name="ReplicaDemotion";
+ offset = drsuapi_dissect_element_ReplicaDemotion_out_version(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsAddEntry_ctr(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_ReplicaDemotion_ctr(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
}
static int
-drsuapi_dissect_DsAddEntry_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_ReplicaDemotion_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- di->dcerpc_procedure_name="DsAddEntry";
- offset = drsuapi_dissect_element_DsAddEntry_bind_handle(tvb, offset, pinfo, tree, di, drep);
+ di->dcerpc_procedure_name="ReplicaDemotion";
+ offset = drsuapi_dissect_element_ReplicaDemotion_bind_handle(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsAddEntry_level(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_ReplicaDemotion_in_version(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsAddEntry_req(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_ReplicaDemotion_req(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
return offset;
}
static int
-drsuapi_dissect_element_DsExecuteKCC_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_FinishDemotion_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsExecuteKCC_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_DsExecuteKCC_bind_handle);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_FinishDemotion_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_FinishDemotion_bind_handle);
return offset;
}
static int
-drsuapi_dissect_element_DsExecuteKCC_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_FinishDemotion_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsExecuteKCC_bind_handle, 0);
+ offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_FinishDemotion_bind_handle, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsExecuteKCC_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_FinishDemotion_in_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsExecuteKCC_level, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_FinishDemotion_in_version, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsExecuteKCC_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_FinishDemotion_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsExecuteKCC_req_, NDR_POINTER_REF, "Pointer to Req (drsuapi_DsExecuteKCCRequest)",hf_drsuapi_drsuapi_DsExecuteKCC_req);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_FinishDemotion_req_, NDR_POINTER_REF, "Pointer to Req (drsuapi_FinishDemotionRequest)",hf_drsuapi_drsuapi_FinishDemotion_req);
return offset;
}
static int
-drsuapi_dissect_element_DsExecuteKCC_req_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_FinishDemotion_req_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_DsExecuteKCCRequest(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsExecuteKCC_req, 0);
+ offset = drsuapi_dissect_FinishDemotionRequest(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_FinishDemotion_req, 0);
return offset;
}
-/* IDL: WERROR drsuapi_DsExecuteKCC( */
+static int
+drsuapi_dissect_element_FinishDemotion_out_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_FinishDemotion_out_version_, NDR_POINTER_REF, "Pointer to Out Version (uint32)",hf_drsuapi_drsuapi_FinishDemotion_out_version);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_FinishDemotion_out_version_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_FinishDemotion_out_version, 0);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_FinishDemotion_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_FinishDemotion_ctr_, NDR_POINTER_REF, "Pointer to Ctr (drsuapi_FinishDemotionCtr)",hf_drsuapi_drsuapi_FinishDemotion_ctr);
+
+ return offset;
+}
+
+static int
+drsuapi_dissect_element_FinishDemotion_ctr_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+{
+ offset = drsuapi_dissect_FinishDemotionCtr(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_FinishDemotion_ctr, 0);
+
+ return offset;
+}
+
+/* IDL: WERROR drsuapi_FinishDemotion( */
/* IDL: [in] [ref] policy_handle *bind_handle, */
-/* IDL: [in] uint32 level, */
-/* IDL: [in] [ref] [switch_is(level)] drsuapi_DsExecuteKCCRequest *req */
+/* IDL: [in] uint32 in_version, */
+/* IDL: [in] [ref] [switch_is(in_version)] drsuapi_FinishDemotionRequest *req, */
+/* IDL: [out] [ref] uint32 *out_version, */
+/* IDL: [out] [ref] [switch_is(*out_version)] drsuapi_FinishDemotionCtr *ctr */
/* IDL: ); */
static int
-drsuapi_dissect_DsExecuteKCC_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_FinishDemotion_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
guint32 status;
- di->dcerpc_procedure_name="DsExecuteKCC";
+ di->dcerpc_procedure_name="FinishDemotion";
+ offset = drsuapi_dissect_element_FinishDemotion_out_version(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+
+ offset = drsuapi_dissect_element_FinishDemotion_ctr(tvb, offset, pinfo, tree, di, drep);
+ offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
+
offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
if (status != 0)
}
static int
-drsuapi_dissect_DsExecuteKCC_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_FinishDemotion_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- di->dcerpc_procedure_name="DsExecuteKCC";
- offset = drsuapi_dissect_element_DsExecuteKCC_bind_handle(tvb, offset, pinfo, tree, di, drep);
+ di->dcerpc_procedure_name="FinishDemotion";
+ offset = drsuapi_dissect_element_FinishDemotion_bind_handle(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsExecuteKCC_level(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_FinishDemotion_in_version(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsExecuteKCC_req(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_FinishDemotion_req(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaGetInfo_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_AddCloneDC_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaGetInfo_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_DsReplicaGetInfo_bind_handle);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_AddCloneDC_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_AddCloneDC_bind_handle);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaGetInfo_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_AddCloneDC_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaGetInfo_bind_handle, 0);
+ offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_AddCloneDC_bind_handle, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaGetInfo_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_AddCloneDC_in_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_enum_DsReplicaGetInfoLevel(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaGetInfo_level, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_AddCloneDC_in_version, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaGetInfo_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_AddCloneDC_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaGetInfo_req_, NDR_POINTER_REF, "Pointer to Req (drsuapi_DsReplicaGetInfoRequest)",hf_drsuapi_drsuapi_DsReplicaGetInfo_req);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_AddCloneDC_req_, NDR_POINTER_REF, "Pointer to Req (drsuapi_AddCloneDCRequest)",hf_drsuapi_drsuapi_AddCloneDC_req);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaGetInfo_req_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_AddCloneDC_req_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_DsReplicaGetInfoRequest(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaGetInfo_req, 0);
+ offset = drsuapi_dissect_AddCloneDCRequest(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_AddCloneDC_req, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaGetInfo_info_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_AddCloneDC_out_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaGetInfo_info_type_, NDR_POINTER_REF, "Pointer to Info Type (drsuapi_DsReplicaInfoType)",hf_drsuapi_drsuapi_DsReplicaGetInfo_info_type);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_AddCloneDC_out_version_, NDR_POINTER_REF, "Pointer to Out Version (uint32)",hf_drsuapi_drsuapi_AddCloneDC_out_version);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaGetInfo_info_type_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_AddCloneDC_out_version_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_enum_DsReplicaInfoType(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaGetInfo_info_type, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_AddCloneDC_out_version, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaGetInfo_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_AddCloneDC_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsReplicaGetInfo_info_, NDR_POINTER_REF, "Pointer to Info (drsuapi_DsReplicaInfo)",hf_drsuapi_drsuapi_DsReplicaGetInfo_info);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_AddCloneDC_ctr_, NDR_POINTER_REF, "Pointer to Ctr (drsuapi_AddCloneDCCtr)",hf_drsuapi_drsuapi_AddCloneDC_ctr);
return offset;
}
static int
-drsuapi_dissect_element_DsReplicaGetInfo_info_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_AddCloneDC_ctr_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_DsReplicaInfo(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsReplicaGetInfo_info, 0);
+ offset = drsuapi_dissect_AddCloneDCCtr(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_AddCloneDC_ctr, 0);
return offset;
}
-/* IDL: WERROR drsuapi_DsReplicaGetInfo( */
+/* IDL: WERROR drsuapi_AddCloneDC( */
/* IDL: [in] [ref] policy_handle *bind_handle, */
-/* IDL: [in] drsuapi_DsReplicaGetInfoLevel level, */
-/* IDL: [in] [ref] [switch_is(level)] drsuapi_DsReplicaGetInfoRequest *req, */
-/* IDL: [out] [ref] drsuapi_DsReplicaInfoType *info_type, */
-/* IDL: [out] [ref] [switch_is(*info_type)] drsuapi_DsReplicaInfo *info */
+/* IDL: [in] uint32 in_version, */
+/* IDL: [in] [ref] [switch_is(in_version)] drsuapi_AddCloneDCRequest *req, */
+/* IDL: [out] [ref] uint32 *out_version, */
+/* IDL: [out] [ref] [switch_is(*out_version)] drsuapi_AddCloneDCCtr *ctr */
/* IDL: ); */
static int
-drsuapi_dissect_DsReplicaGetInfo_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_AddCloneDC_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
guint32 status;
- di->dcerpc_procedure_name="DsReplicaGetInfo";
- offset = drsuapi_dissect_element_DsReplicaGetInfo_info_type(tvb, offset, pinfo, tree, di, drep);
+ di->dcerpc_procedure_name="AddCloneDC";
+ offset = drsuapi_dissect_element_AddCloneDC_out_version(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsReplicaGetInfo_info(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_AddCloneDC_ctr(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
}
static int
-drsuapi_dissect_DsReplicaGetInfo_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_AddCloneDC_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- di->dcerpc_procedure_name="DsReplicaGetInfo";
- offset = drsuapi_dissect_element_DsReplicaGetInfo_bind_handle(tvb, offset, pinfo, tree, di, drep);
+ di->dcerpc_procedure_name="AddCloneDC";
+ offset = drsuapi_dissect_element_AddCloneDC_bind_handle(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsReplicaGetInfo_level(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_AddCloneDC_in_version(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsReplicaGetInfo_req(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_AddCloneDC_req(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
return offset;
}
-/* IDL: WERROR DRSUAPI_ADD_SID_HISTORY( */
-/* IDL: */
-/* IDL: ); */
-
-static int
-drsuapi_dissect_DRSUAPI_ADD_SID_HISTORY_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- guint32 status;
-
- di->dcerpc_procedure_name="DRSUAPI_ADD_SID_HISTORY";
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
-
- if (status != 0)
- col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x"));
-
- return offset;
-}
-
-static int
-drsuapi_dissect_DRSUAPI_ADD_SID_HISTORY_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- di->dcerpc_procedure_name="DRSUAPI_ADD_SID_HISTORY";
- return offset;
-}
-
static int
-drsuapi_dissect_element_DsGetMemberships2_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_WriteNgcKey_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMemberships2_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_DsGetMemberships2_bind_handle);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_WriteNgcKey_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_WriteNgcKey_bind_handle);
return offset;
}
static int
-drsuapi_dissect_element_DsGetMemberships2_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_WriteNgcKey_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetMemberships2_bind_handle, 0);
+ offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_WriteNgcKey_bind_handle, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetMemberships2_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_WriteNgcKey_in_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetMemberships2_level, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_WriteNgcKey_in_version, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetMemberships2_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_WriteNgcKey_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMemberships2_req_, NDR_POINTER_REF, "Pointer to Req (drsuapi_DsGetMemberships2Request)",hf_drsuapi_drsuapi_DsGetMemberships2_req);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_WriteNgcKey_req_, NDR_POINTER_REF, "Pointer to Req (drsuapi_WriteNgcKeyRequest)",hf_drsuapi_drsuapi_WriteNgcKey_req);
return offset;
}
static int
-drsuapi_dissect_element_DsGetMemberships2_req_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_WriteNgcKey_req_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_DsGetMemberships2Request(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetMemberships2_req, 0);
+ offset = drsuapi_dissect_WriteNgcKeyRequest(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_WriteNgcKey_req, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetMemberships2_level_out(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_WriteNgcKey_out_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMemberships2_level_out_, NDR_POINTER_REF, "Pointer to Level Out (uint32)",hf_drsuapi_drsuapi_DsGetMemberships2_level_out);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_WriteNgcKey_out_version_, NDR_POINTER_REF, "Pointer to Out Version (uint32)",hf_drsuapi_drsuapi_WriteNgcKey_out_version);
return offset;
}
static int
-drsuapi_dissect_element_DsGetMemberships2_level_out_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_WriteNgcKey_out_version_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetMemberships2_level_out, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_WriteNgcKey_out_version, 0);
return offset;
}
static int
-drsuapi_dissect_element_DsGetMemberships2_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_WriteNgcKey_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_DsGetMemberships2_ctr_, NDR_POINTER_REF, "Pointer to Ctr (drsuapi_DsGetMemberships2Ctr)",hf_drsuapi_drsuapi_DsGetMemberships2_ctr);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_WriteNgcKey_ctr_, NDR_POINTER_REF, "Pointer to Ctr (drsuapi_WriteNgcKeyCtr)",hf_drsuapi_drsuapi_WriteNgcKey_ctr);
return offset;
}
static int
-drsuapi_dissect_element_DsGetMemberships2_ctr_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_WriteNgcKey_ctr_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_DsGetMemberships2Ctr(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_DsGetMemberships2_ctr, 0);
+ offset = drsuapi_dissect_WriteNgcKeyCtr(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_WriteNgcKey_ctr, 0);
return offset;
}
-/* IDL: WERROR drsuapi_DsGetMemberships2( */
+/* IDL: WERROR drsuapi_WriteNgcKey( */
/* IDL: [in] [ref] policy_handle *bind_handle, */
-/* IDL: [in] uint32 level, */
-/* IDL: [in] [ref] [switch_is(level)] drsuapi_DsGetMemberships2Request *req, */
-/* IDL: [out] [ref] uint32 *level_out, */
-/* IDL: [out] [ref] [switch_is(*level_out)] drsuapi_DsGetMemberships2Ctr *ctr */
+/* IDL: [in] uint32 in_version, */
+/* IDL: [in] [ref] [switch_is(in_version)] drsuapi_WriteNgcKeyRequest *req, */
+/* IDL: [out] [ref] uint32 *out_version, */
+/* IDL: [out] [ref] [switch_is(*out_version)] drsuapi_WriteNgcKeyCtr *ctr */
/* IDL: ); */
static int
-drsuapi_dissect_DsGetMemberships2_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_WriteNgcKey_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
guint32 status;
- di->dcerpc_procedure_name="DsGetMemberships2";
- offset = drsuapi_dissect_element_DsGetMemberships2_level_out(tvb, offset, pinfo, tree, di, drep);
+ di->dcerpc_procedure_name="WriteNgcKey";
+ offset = drsuapi_dissect_element_WriteNgcKey_out_version(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsGetMemberships2_ctr(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_WriteNgcKey_ctr(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
}
static int
-drsuapi_dissect_DsGetMemberships2_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_WriteNgcKey_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- di->dcerpc_procedure_name="DsGetMemberships2";
- offset = drsuapi_dissect_element_DsGetMemberships2_bind_handle(tvb, offset, pinfo, tree, di, drep);
+ di->dcerpc_procedure_name="WriteNgcKey";
+ offset = drsuapi_dissect_element_WriteNgcKey_bind_handle(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsGetMemberships2_level(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_WriteNgcKey_in_version(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_DsGetMemberships2_req(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_WriteNgcKey_req(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
return offset;
}
-/* IDL: WERROR DRSUAPI_REPLICA_VERIFY_OBJECTS( */
-/* IDL: */
-/* IDL: ); */
-
-static int
-drsuapi_dissect_DRSUAPI_REPLICA_VERIFY_OBJECTS_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- guint32 status;
-
- di->dcerpc_procedure_name="DRSUAPI_REPLICA_VERIFY_OBJECTS";
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
-
- if (status != 0)
- col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x"));
-
- return offset;
-}
-
static int
-drsuapi_dissect_DRSUAPI_REPLICA_VERIFY_OBJECTS_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- di->dcerpc_procedure_name="DRSUAPI_REPLICA_VERIFY_OBJECTS";
- return offset;
-}
-
-/* IDL: WERROR DRSUAPI_GET_OBJECT_EXISTENCE( */
-/* IDL: */
-/* IDL: ); */
-
-static int
-drsuapi_dissect_DRSUAPI_GET_OBJECT_EXISTENCE_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- guint32 status;
-
- di->dcerpc_procedure_name="DRSUAPI_GET_OBJECT_EXISTENCE";
- offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
-
- if (status != 0)
- col_append_fstr(pinfo->cinfo, COL_INFO, ", Error: %s", val_to_str(status, WERR_errors, "Unknown DOS error 0x%08x"));
-
- return offset;
-}
-
-static int
-drsuapi_dissect_DRSUAPI_GET_OBJECT_EXISTENCE_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
-{
- di->dcerpc_procedure_name="DRSUAPI_GET_OBJECT_EXISTENCE";
- return offset;
-}
-
-static int
-drsuapi_dissect_element_QuerySitesByCost_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_ReadNgcKey_bind_handle(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_QuerySitesByCost_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_QuerySitesByCost_bind_handle);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_ReadNgcKey_bind_handle_, NDR_POINTER_REF, "Pointer to Bind Handle (policy_handle)",hf_drsuapi_drsuapi_ReadNgcKey_bind_handle);
return offset;
}
static int
-drsuapi_dissect_element_QuerySitesByCost_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_ReadNgcKey_bind_handle_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_QuerySitesByCost_bind_handle, 0);
+ offset = PIDL_dissect_policy_hnd(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_ReadNgcKey_bind_handle, 0);
return offset;
}
static int
-drsuapi_dissect_element_QuerySitesByCost_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_ReadNgcKey_in_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_QuerySitesByCost_level, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_ReadNgcKey_in_version, 0);
return offset;
}
static int
-drsuapi_dissect_element_QuerySitesByCost_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_ReadNgcKey_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_QuerySitesByCost_req_, NDR_POINTER_REF, "Pointer to Req (drsuapi_QuerySitesByCostRequest)",hf_drsuapi_drsuapi_QuerySitesByCost_req);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_ReadNgcKey_req_, NDR_POINTER_REF, "Pointer to Req (drsuapi_ReadNgcKeyRequest)",hf_drsuapi_drsuapi_ReadNgcKey_req);
return offset;
}
static int
-drsuapi_dissect_element_QuerySitesByCost_req_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_ReadNgcKey_req_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_QuerySitesByCostRequest(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_QuerySitesByCost_req, 0);
+ offset = drsuapi_dissect_ReadNgcKeyRequest(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_ReadNgcKey_req, 0);
return offset;
}
static int
-drsuapi_dissect_element_QuerySitesByCost_level_out(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_ReadNgcKey_out_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_QuerySitesByCost_level_out_, NDR_POINTER_REF, "Pointer to Level Out (uint32)",hf_drsuapi_drsuapi_QuerySitesByCost_level_out);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_ReadNgcKey_out_version_, NDR_POINTER_REF, "Pointer to Out Version (uint32)",hf_drsuapi_drsuapi_ReadNgcKey_out_version);
return offset;
}
static int
-drsuapi_dissect_element_QuerySitesByCost_level_out_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_ReadNgcKey_out_version_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_QuerySitesByCost_level_out, 0);
+ offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_ReadNgcKey_out_version, 0);
return offset;
}
static int
-drsuapi_dissect_element_QuerySitesByCost_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_ReadNgcKey_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_QuerySitesByCost_ctr_, NDR_POINTER_REF, "Pointer to Ctr (drsuapi_QuerySitesByCostCtr)",hf_drsuapi_drsuapi_QuerySitesByCost_ctr);
+ offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, drsuapi_dissect_element_ReadNgcKey_ctr_, NDR_POINTER_REF, "Pointer to Ctr (drsuapi_ReadNgcKeyCtr)",hf_drsuapi_drsuapi_ReadNgcKey_ctr);
return offset;
}
static int
-drsuapi_dissect_element_QuerySitesByCost_ctr_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_element_ReadNgcKey_ctr_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- offset = drsuapi_dissect_QuerySitesByCostCtr(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_QuerySitesByCost_ctr, 0);
+ offset = drsuapi_dissect_ReadNgcKeyCtr(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_drsuapi_ReadNgcKey_ctr, 0);
return offset;
}
-/* IDL: WERROR drsuapi_QuerySitesByCost( */
+/* IDL: WERROR drsuapi_ReadNgcKey( */
/* IDL: [in] [ref] policy_handle *bind_handle, */
-/* IDL: [in] uint32 level, */
-/* IDL: [in] [ref] [switch_is(level)] drsuapi_QuerySitesByCostRequest *req, */
-/* IDL: [out] [ref] uint32 *level_out, */
-/* IDL: [out] [ref] [switch_is(*level_out)] drsuapi_QuerySitesByCostCtr *ctr */
+/* IDL: [in] uint32 in_version, */
+/* IDL: [in] [ref] [switch_is(in_version)] drsuapi_ReadNgcKeyRequest *req, */
+/* IDL: [out] [ref] uint32 *out_version, */
+/* IDL: [out] [ref] [switch_is(*out_version)] drsuapi_ReadNgcKeyCtr *ctr */
/* IDL: ); */
static int
-drsuapi_dissect_QuerySitesByCost_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_ReadNgcKey_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
guint32 status;
- di->dcerpc_procedure_name="QuerySitesByCost";
- offset = drsuapi_dissect_element_QuerySitesByCost_level_out(tvb, offset, pinfo, tree, di, drep);
+ di->dcerpc_procedure_name="ReadNgcKey";
+ offset = drsuapi_dissect_element_ReadNgcKey_out_version(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_QuerySitesByCost_ctr(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_ReadNgcKey_ctr(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_drsuapi_werror, &status);
}
static int
-drsuapi_dissect_QuerySitesByCost_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
+drsuapi_dissect_ReadNgcKey_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
{
- di->dcerpc_procedure_name="QuerySitesByCost";
- offset = drsuapi_dissect_element_QuerySitesByCost_bind_handle(tvb, offset, pinfo, tree, di, drep);
+ di->dcerpc_procedure_name="ReadNgcKey";
+ offset = drsuapi_dissect_element_ReadNgcKey_bind_handle(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_QuerySitesByCost_level(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_ReadNgcKey_in_version(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
- offset = drsuapi_dissect_element_QuerySitesByCost_req(tvb, offset, pinfo, tree, di, drep);
+ offset = drsuapi_dissect_element_ReadNgcKey_req(tvb, offset, pinfo, tree, di, drep);
offset = dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
return offset;
}
drsuapi_dissect_DRSUAPI_GET_OBJECT_EXISTENCE_request, drsuapi_dissect_DRSUAPI_GET_OBJECT_EXISTENCE_response},
{ 24, "QuerySitesByCost",
drsuapi_dissect_QuerySitesByCost_request, drsuapi_dissect_QuerySitesByCost_response},
+ { 25, "InitDemotion",
+ drsuapi_dissect_InitDemotion_request, drsuapi_dissect_InitDemotion_response},
+ { 26, "ReplicaDemotion",
+ drsuapi_dissect_ReplicaDemotion_request, drsuapi_dissect_ReplicaDemotion_response},
+ { 27, "FinishDemotion",
+ drsuapi_dissect_FinishDemotion_request, drsuapi_dissect_FinishDemotion_response},
+ { 28, "AddCloneDC",
+ drsuapi_dissect_AddCloneDC_request, drsuapi_dissect_AddCloneDC_response},
+ { 29, "WriteNgcKey",
+ drsuapi_dissect_WriteNgcKey_request, drsuapi_dissect_WriteNgcKey_response},
+ { 30, "ReadNgcKey",
+ drsuapi_dissect_ReadNgcKey_request, drsuapi_dissect_ReadNgcKey_response},
{ 0, NULL, NULL, NULL }
};
{ "DN", "drsuapi.objectidentifier.dn", FT_STRING, BASE_NONE, NULL, 0, NULL, HFILL }},
{ &hf_drsuapi_String_name,
{ "String", "drsuapi.lsa.string", FT_STRING, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_AddCloneDCCtr1_clone_dc_name,
+ { "Clone Dc Name", "drsuapi.drsuapi_AddCloneDCCtr1.clone_dc_name", FT_STRING, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_AddCloneDCCtr1_new_dc_account_password,
+ { "New Dc Account Password", "drsuapi.drsuapi_AddCloneDCCtr1.new_dc_account_password", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_AddCloneDCCtr1_password_length,
+ { "Password Length", "drsuapi.drsuapi_AddCloneDCCtr1.password_length", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_AddCloneDCCtr1_site,
+ { "Site", "drsuapi.drsuapi_AddCloneDCCtr1.site", FT_STRING, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_AddCloneDCCtr_ctr1,
+ { "Ctr1", "drsuapi.drsuapi_AddCloneDCCtr.ctr1", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_AddCloneDCRequest1_clone_dc_name,
+ { "Clone Dc Name", "drsuapi.drsuapi_AddCloneDCRequest1.clone_dc_name", FT_STRING, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_AddCloneDCRequest1_site,
+ { "Site", "drsuapi.drsuapi_AddCloneDCRequest1.site", FT_STRING, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_AddCloneDCRequest_req1,
+ { "Req1", "drsuapi.drsuapi_AddCloneDCRequest.req1", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_AddCloneDC_bind_handle,
+ { "Bind Handle", "drsuapi.drsuapi_AddCloneDC.bind_handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_AddCloneDC_ctr,
+ { "Ctr", "drsuapi.drsuapi_AddCloneDC.ctr", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_AddCloneDC_in_version,
+ { "In Version", "drsuapi.drsuapi_AddCloneDC.in_version", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_AddCloneDC_out_version,
+ { "Out Version", "drsuapi.drsuapi_AddCloneDC.out_version", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_AddCloneDC_req,
+ { "Req", "drsuapi.drsuapi_AddCloneDC.req", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
{ &hf_drsuapi_drsuapi_DrsMoreOptions_DRSUAPI_DRS_GET_TGT,
{ "DRSUAPI DRS GET TGT", "drsuapi.drsuapi_DrsMoreOptions.DRSUAPI_DRS_GET_TGT", FT_BOOLEAN, 32, TFS(&drsuapi_DrsMoreOptions_DRSUAPI_DRS_GET_TGT_tfs), ( 0x00000001 ), NULL, HFILL }},
{ &hf_drsuapi_drsuapi_DrsOptions_DRSUAPI_DRS_ADD_REF,
{ "Ndr Size", "drsuapi.drsuapi_DsAttributeValue.__ndr_size", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
{ &hf_drsuapi_drsuapi_DsAttributeValue_blob,
{ "Blob", "drsuapi.drsuapi_DsAttributeValue.blob", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
- { &hf_drsuapi_drsuapi_DsBindInfoCtr_data,
- { "Data", "drsuapi.drsuapi_DsBindInfoCtr.data", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_DsBindInfo24_pid,
+ { "Pid", "drsuapi.drsuapi_DsBindInfo24.pid", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_DsBindInfo24_site_guid,
+ { "Site Guid", "drsuapi.drsuapi_DsBindInfo24.site_guid", FT_GUID, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_DsBindInfo24_supported_extensions,
+ { "Supported Extensions", "drsuapi.drsuapi_DsBindInfo24.supported_extensions", FT_UINT32, BASE_HEX, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_DsBindInfo28_pid,
+ { "Pid", "drsuapi.drsuapi_DsBindInfo28.pid", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_DsBindInfo28_repl_epoch,
+ { "Repl Epoch", "drsuapi.drsuapi_DsBindInfo28.repl_epoch", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_DsBindInfo28_site_guid,
+ { "Site Guid", "drsuapi.drsuapi_DsBindInfo28.site_guid", FT_GUID, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_DsBindInfo28_supported_extensions,
+ { "Supported Extensions", "drsuapi.drsuapi_DsBindInfo28.supported_extensions", FT_UINT32, BASE_HEX, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_DsBindInfo32_pid,
+ { "Pid", "drsuapi.drsuapi_DsBindInfo32.pid", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_DsBindInfo32_repl_epoch,
+ { "Repl Epoch", "drsuapi.drsuapi_DsBindInfo32.repl_epoch", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_DsBindInfo32_site_guid,
+ { "Site Guid", "drsuapi.drsuapi_DsBindInfo32.site_guid", FT_GUID, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_DsBindInfo32_supported_extensions,
+ { "Supported Extensions", "drsuapi.drsuapi_DsBindInfo32.supported_extensions", FT_UINT32, BASE_HEX, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_DsBindInfo32_supported_extensions_ext,
+ { "Supported Extensions Ext", "drsuapi.drsuapi_DsBindInfo32.supported_extensions_ext", FT_UINT32, BASE_HEX, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_DsBindInfo48_config_dn_guid,
+ { "Config Dn Guid", "drsuapi.drsuapi_DsBindInfo48.config_dn_guid", FT_GUID, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_DsBindInfo48_pid,
+ { "Pid", "drsuapi.drsuapi_DsBindInfo48.pid", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_DsBindInfo48_repl_epoch,
+ { "Repl Epoch", "drsuapi.drsuapi_DsBindInfo48.repl_epoch", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_DsBindInfo48_site_guid,
+ { "Site Guid", "drsuapi.drsuapi_DsBindInfo48.site_guid", FT_GUID, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_DsBindInfo48_supported_extensions,
+ { "Supported Extensions", "drsuapi.drsuapi_DsBindInfo48.supported_extensions", FT_UINT32, BASE_HEX, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_DsBindInfo48_supported_extensions_ext,
+ { "Supported Extensions Ext", "drsuapi.drsuapi_DsBindInfo48.supported_extensions_ext", FT_UINT32, BASE_HEX, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_DsBindInfo52_config_dn_guid,
+ { "Config Dn Guid", "drsuapi.drsuapi_DsBindInfo52.config_dn_guid", FT_GUID, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_DsBindInfo52_pid,
+ { "Pid", "drsuapi.drsuapi_DsBindInfo52.pid", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_DsBindInfo52_repl_epoch,
+ { "Repl Epoch", "drsuapi.drsuapi_DsBindInfo52.repl_epoch", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_DsBindInfo52_site_guid,
+ { "Site Guid", "drsuapi.drsuapi_DsBindInfo52.site_guid", FT_GUID, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_DsBindInfo52_supported_capabilities_ext,
+ { "Supported Capabilities Ext", "drsuapi.drsuapi_DsBindInfo52.supported_capabilities_ext", FT_UINT32, BASE_HEX, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_DsBindInfo52_supported_extensions,
+ { "Supported Extensions", "drsuapi.drsuapi_DsBindInfo52.supported_extensions", FT_UINT32, BASE_HEX, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_DsBindInfo52_supported_extensions_ext,
+ { "Supported Extensions Ext", "drsuapi.drsuapi_DsBindInfo52.supported_extensions_ext", FT_UINT32, BASE_HEX, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_DsBindInfoCtr___ndr_length,
+ { "Ndr Length", "drsuapi.drsuapi_DsBindInfoCtr.__ndr_length", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_DsBindInfoCtr_info,
+ { "Info", "drsuapi.drsuapi_DsBindInfoCtr.info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
{ &hf_drsuapi_drsuapi_DsBindInfoCtr_length,
{ "Length", "drsuapi.drsuapi_DsBindInfoCtr.length", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_DsBindInfoFallBack_info,
+ { "Info", "drsuapi.drsuapi_DsBindInfoFallBack.info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_DsBindInfo_Fallback,
+ { "Fallback", "drsuapi.drsuapi_DsBindInfo.Fallback", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_DsBindInfo_info24,
+ { "Info24", "drsuapi.drsuapi_DsBindInfo.info24", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_DsBindInfo_info28,
+ { "Info28", "drsuapi.drsuapi_DsBindInfo.info28", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_DsBindInfo_info32,
+ { "Info32", "drsuapi.drsuapi_DsBindInfo.info32", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_DsBindInfo_info48,
+ { "Info48", "drsuapi.drsuapi_DsBindInfo.info48", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_DsBindInfo_info52,
+ { "Info52", "drsuapi.drsuapi_DsBindInfo.info52", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
{ &hf_drsuapi_drsuapi_DsBind_bind_guid,
{ "Bind Guid", "drsuapi.drsuapi_DsBind.bind_guid", FT_GUID, BASE_NONE, NULL, 0, NULL, HFILL }},
{ &hf_drsuapi_drsuapi_DsBind_bind_handle,
{ "Address", "drsuapi.drsuapi_DsaAddressListItem_V1.address", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
{ &hf_drsuapi_drsuapi_DsaAddressListItem_V1_next,
{ "Next", "drsuapi.drsuapi_DsaAddressListItem_V1.next", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_FinishDemotionCtr1_op_error,
+ { "Op Error", "drsuapi.drsuapi_FinishDemotionCtr1.op_error", FT_UINT32, BASE_DEC, VALS(WERR_errors), 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_FinishDemotionCtr1_op_failed,
+ { "Op Failed", "drsuapi.drsuapi_FinishDemotionCtr1.op_failed", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_FinishDemotionCtr1_operations_done,
+ { "Operations Done", "drsuapi.drsuapi_FinishDemotionCtr1.operations_done", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_FinishDemotionCtr_ctr1,
+ { "Ctr1", "drsuapi.drsuapi_FinishDemotionCtr.ctr1", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_FinishDemotionRequest1_operations,
+ { "Operations", "drsuapi.drsuapi_FinishDemotionRequest1.operations", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_FinishDemotionRequest1_script_base,
+ { "Script Base", "drsuapi.drsuapi_FinishDemotionRequest1.script_base", FT_STRING, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_FinishDemotionRequest1_uuid_helper_dest,
+ { "Uuid Helper Dest", "drsuapi.drsuapi_FinishDemotionRequest1.uuid_helper_dest", FT_GUID, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_FinishDemotionRequest_req1,
+ { "Req1", "drsuapi.drsuapi_FinishDemotionRequest.req1", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_FinishDemotion_bind_handle,
+ { "Bind Handle", "drsuapi.drsuapi_FinishDemotion.bind_handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_FinishDemotion_ctr,
+ { "Ctr", "drsuapi.drsuapi_FinishDemotion.ctr", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_FinishDemotion_in_version,
+ { "In Version", "drsuapi.drsuapi_FinishDemotion.in_version", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_FinishDemotion_out_version,
+ { "Out Version", "drsuapi.drsuapi_FinishDemotion.out_version", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_FinishDemotion_req,
+ { "Req", "drsuapi.drsuapi_FinishDemotion.req", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_InitDemotionCtr1_op_error,
+ { "Op Error", "drsuapi.drsuapi_InitDemotionCtr1.op_error", FT_UINT32, BASE_DEC, VALS(WERR_errors), 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_InitDemotionCtr_ctr1,
+ { "Ctr1", "drsuapi.drsuapi_InitDemotionCtr.ctr1", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_InitDemotionRequest1_reserved,
+ { "Reserved", "drsuapi.drsuapi_InitDemotionRequest1.reserved", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_InitDemotionRequest_req1,
+ { "Req1", "drsuapi.drsuapi_InitDemotionRequest.req1", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_InitDemotion_bind_handle,
+ { "Bind Handle", "drsuapi.drsuapi_InitDemotion.bind_handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_InitDemotion_ctr,
+ { "Ctr", "drsuapi.drsuapi_InitDemotion.ctr", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_InitDemotion_in_version,
+ { "In Version", "drsuapi.drsuapi_InitDemotion.in_version", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_InitDemotion_out_version,
+ { "Out Version", "drsuapi.drsuapi_InitDemotion.out_version", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_InitDemotion_req,
+ { "Req", "drsuapi.drsuapi_InitDemotion.req", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
{ &hf_drsuapi_drsuapi_NameResOp_V1_name_res,
{ "Name Res", "drsuapi.drsuapi_NameResOp_V1.name_res", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
{ &hf_drsuapi_drsuapi_NameResOp_V1_next_rdn,
{ "Level Out", "drsuapi.drsuapi_QuerySitesByCost.level_out", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
{ &hf_drsuapi_drsuapi_QuerySitesByCost_req,
{ "Req", "drsuapi.drsuapi_QuerySitesByCost.req", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_ReadNgcKeyCtr1_ngc_key,
+ { "Ngc Key", "drsuapi.drsuapi_ReadNgcKeyCtr1.ngc_key", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_ReadNgcKeyCtr1_ngc_key_size,
+ { "Ngc Key Size", "drsuapi.drsuapi_ReadNgcKeyCtr1.ngc_key_size", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_ReadNgcKeyCtr1_ret_val,
+ { "Ret Val", "drsuapi.drsuapi_ReadNgcKeyCtr1.ret_val", FT_UINT32, BASE_DEC, VALS(WERR_errors), 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_ReadNgcKeyCtr_ctr1,
+ { "Ctr1", "drsuapi.drsuapi_ReadNgcKeyCtr.ctr1", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_ReadNgcKeyRequest1_account,
+ { "Account", "drsuapi.drsuapi_ReadNgcKeyRequest1.account", FT_STRING, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_ReadNgcKeyRequest_req1,
+ { "Req1", "drsuapi.drsuapi_ReadNgcKeyRequest.req1", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_ReadNgcKey_bind_handle,
+ { "Bind Handle", "drsuapi.drsuapi_ReadNgcKey.bind_handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_ReadNgcKey_ctr,
+ { "Ctr", "drsuapi.drsuapi_ReadNgcKey.ctr", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_ReadNgcKey_in_version,
+ { "In Version", "drsuapi.drsuapi_ReadNgcKey.in_version", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_ReadNgcKey_out_version,
+ { "Out Version", "drsuapi.drsuapi_ReadNgcKey.out_version", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_ReadNgcKey_req,
+ { "Req", "drsuapi.drsuapi_ReadNgcKey.req", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_ReplicaDemotionCtr1_op_error,
+ { "Op Error", "drsuapi.drsuapi_ReplicaDemotionCtr1.op_error", FT_UINT32, BASE_DEC, VALS(WERR_errors), 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_ReplicaDemotionCtr_ctr1,
+ { "Ctr1", "drsuapi.drsuapi_ReplicaDemotionCtr.ctr1", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_ReplicaDemotionRequest1_flags,
+ { "Flags", "drsuapi.drsuapi_ReplicaDemotionRequest1.flags", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_ReplicaDemotionRequest1_naming_context,
+ { "Naming Context", "drsuapi.drsuapi_ReplicaDemotionRequest1.naming_context", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_ReplicaDemotionRequest1_uuid_helper_dest,
+ { "Uuid Helper Dest", "drsuapi.drsuapi_ReplicaDemotionRequest1.uuid_helper_dest", FT_GUID, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_ReplicaDemotionRequest_req1,
+ { "Req1", "drsuapi.drsuapi_ReplicaDemotionRequest.req1", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_ReplicaDemotion_bind_handle,
+ { "Bind Handle", "drsuapi.drsuapi_ReplicaDemotion.bind_handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_ReplicaDemotion_ctr,
+ { "Ctr", "drsuapi.drsuapi_ReplicaDemotion.ctr", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_ReplicaDemotion_in_version,
+ { "In Version", "drsuapi.drsuapi_ReplicaDemotion.in_version", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_ReplicaDemotion_out_version,
+ { "Out Version", "drsuapi.drsuapi_ReplicaDemotion.out_version", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_ReplicaDemotion_req,
+ { "Req", "drsuapi.drsuapi_ReplicaDemotion.req", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
{ &hf_drsuapi_drsuapi_SecBufferDesc_buff_count,
{ "Buff Count", "drsuapi.drsuapi_SecBufferDesc.buff_count", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
{ &hf_drsuapi_drsuapi_SecBufferDesc_buffers,
{ "Buf Type", "drsuapi.drsuapi_SecBuffer.buf_type", FT_UINT32, BASE_DEC, VALS(drsuapi_drsuapi_SecBufferType_vals), 0, NULL, HFILL }},
{ &hf_drsuapi_drsuapi_SecBuffer_buffer,
{ "Buffer", "drsuapi.drsuapi_SecBuffer.buffer", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensionsExt_DRSUAPI_SUPPORTED_EXTENSION_ADAM,
+ { "DRSUAPI SUPPORTED EXTENSION ADAM", "drsuapi.drsuapi_SupportedExtensionsExt.DRSUAPI_SUPPORTED_EXTENSION_ADAM", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensionsExt_DRSUAPI_SUPPORTED_EXTENSION_ADAM_tfs), ( 0x00000001 ), NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensionsExt_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V9,
+ { "DRSUAPI SUPPORTED EXTENSION GETCHGREPLY V9", "drsuapi.drsuapi_SupportedExtensionsExt.DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V9", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensionsExt_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V9_tfs), ( 0x00000100 ), NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensionsExt_DRSUAPI_SUPPORTED_EXTENSION_LH_BETA2,
+ { "DRSUAPI SUPPORTED EXTENSION LH BETA2", "drsuapi.drsuapi_SupportedExtensionsExt.DRSUAPI_SUPPORTED_EXTENSION_LH_BETA2", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensionsExt_DRSUAPI_SUPPORTED_EXTENSION_LH_BETA2_tfs), ( 0x00000002 ), NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensionsExt_DRSUAPI_SUPPORTED_EXTENSION_RECYCLE_BIN,
+ { "DRSUAPI SUPPORTED EXTENSION RECYCLE BIN", "drsuapi.drsuapi_SupportedExtensionsExt.DRSUAPI_SUPPORTED_EXTENSION_RECYCLE_BIN", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensionsExt_DRSUAPI_SUPPORTED_EXTENSION_RECYCLE_BIN_tfs), ( 0x00000004 ), NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensionsExt_DRSUAPI_SUPPORTED_EXTENSION_RPC_CORRELATIONID_1,
+ { "DRSUAPI SUPPORTED EXTENSION RPC CORRELATIONID 1", "drsuapi.drsuapi_SupportedExtensionsExt.DRSUAPI_SUPPORTED_EXTENSION_RPC_CORRELATIONID_1", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensionsExt_DRSUAPI_SUPPORTED_EXTENSION_RPC_CORRELATIONID_1_tfs), ( 0x00000400 ), NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_ADDENTRY,
+ { "DRSUAPI SUPPORTED EXTENSION ADDENTRY", "drsuapi.drsuapi_SupportedExtensions.DRSUAPI_SUPPORTED_EXTENSION_ADDENTRY", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_ADDENTRY_tfs), ( 0x00000080 ), NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_ADDENTRYREPLY_V3,
+ { "DRSUAPI SUPPORTED EXTENSION ADDENTRYREPLY V3", "drsuapi.drsuapi_SupportedExtensions.DRSUAPI_SUPPORTED_EXTENSION_ADDENTRYREPLY_V3", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_ADDENTRYREPLY_V3_tfs), ( 0x08000000 ), NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_ADDENTRY_V2,
+ { "DRSUAPI SUPPORTED EXTENSION ADDENTRY V2", "drsuapi.drsuapi_SupportedExtensions.DRSUAPI_SUPPORTED_EXTENSION_ADDENTRY_V2", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_ADDENTRY_V2_tfs), ( 0x00000200 ), NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_ADD_SID_HISTORY,
+ { "DRSUAPI SUPPORTED EXTENSION ADD SID HISTORY", "drsuapi.drsuapi_SupportedExtensions.DRSUAPI_SUPPORTED_EXTENSION_ADD_SID_HISTORY", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_ADD_SID_HISTORY_tfs), ( 0x00040000 ), NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_ASYNC_REPLICATION,
+ { "DRSUAPI SUPPORTED EXTENSION ASYNC REPLICATION", "drsuapi.drsuapi_SupportedExtensions.DRSUAPI_SUPPORTED_EXTENSION_ASYNC_REPLICATION", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_ASYNC_REPLICATION_tfs), ( 0x00000002 ), NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_BASE,
+ { "DRSUAPI SUPPORTED EXTENSION BASE", "drsuapi.drsuapi_SupportedExtensions.DRSUAPI_SUPPORTED_EXTENSION_BASE", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_BASE_tfs), ( 0x00000001 ), NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_CRYPTO_BIND,
+ { "DRSUAPI SUPPORTED EXTENSION CRYPTO BIND", "drsuapi.drsuapi_SupportedExtensions.DRSUAPI_SUPPORTED_EXTENSION_CRYPTO_BIND", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_CRYPTO_BIND_tfs), ( 0x00002000 ), NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_DCINFO_V01,
+ { "DRSUAPI SUPPORTED EXTENSION DCINFO V01", "drsuapi.drsuapi_SupportedExtensions.DRSUAPI_SUPPORTED_EXTENSION_DCINFO_V01", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_DCINFO_V01_tfs), ( 0x00010000 ), NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_DCINFO_V1,
+ { "DRSUAPI SUPPORTED EXTENSION DCINFO V1", "drsuapi.drsuapi_SupportedExtensions.DRSUAPI_SUPPORTED_EXTENSION_DCINFO_V1", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_DCINFO_V1_tfs), ( 0x00000020 ), NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_DCINFO_V2,
+ { "DRSUAPI SUPPORTED EXTENSION DCINFO V2", "drsuapi.drsuapi_SupportedExtensions.DRSUAPI_SUPPORTED_EXTENSION_DCINFO_V2", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_DCINFO_V2_tfs), ( 0x00000800 ), NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V5,
+ { "DRSUAPI SUPPORTED EXTENSION GETCHGREPLY V5", "drsuapi.drsuapi_SupportedExtensions.DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V5", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V5_tfs), ( 0x02000000 ), NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V6,
+ { "DRSUAPI SUPPORTED EXTENSION GETCHGREPLY V6", "drsuapi.drsuapi_SupportedExtensions.DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V6", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V6_tfs), ( 0x04000000 ), NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V7,
+ { "DRSUAPI SUPPORTED EXTENSION GETCHGREPLY V7", "drsuapi.drsuapi_SupportedExtensions.DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V7", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V7_tfs), ( 0x08000000 ), NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V10,
+ { "DRSUAPI SUPPORTED EXTENSION GETCHGREQ V10", "drsuapi.drsuapi_SupportedExtensions.DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V10", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V10_tfs), ( 0x20000000 ), NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V5,
+ { "DRSUAPI SUPPORTED EXTENSION GETCHGREQ V5", "drsuapi.drsuapi_SupportedExtensions.DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V5", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V5_tfs), ( 0x00100000 ), NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V6,
+ { "DRSUAPI SUPPORTED EXTENSION GETCHGREQ V6", "drsuapi.drsuapi_SupportedExtensions.DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V6", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V6_tfs), ( 0x00400000 ), NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V8,
+ { "DRSUAPI SUPPORTED EXTENSION GETCHGREQ V8", "drsuapi.drsuapi_SupportedExtensions.DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V8", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V8_tfs), ( 0x01000000 ), NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHG_COMPRESS,
+ { "DRSUAPI SUPPORTED EXTENSION GETCHG COMPRESS", "drsuapi.drsuapi_SupportedExtensions.DRSUAPI_SUPPORTED_EXTENSION_GETCHG_COMPRESS", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GETCHG_COMPRESS_tfs), ( 0x00000010 ), NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GET_MEMBERSHIPS2,
+ { "DRSUAPI SUPPORTED EXTENSION GET MEMBERSHIPS2", "drsuapi.drsuapi_SupportedExtensions.DRSUAPI_SUPPORTED_EXTENSION_GET_MEMBERSHIPS2", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GET_MEMBERSHIPS2_tfs), ( 0x00200000 ), NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GET_REPL_INFO,
+ { "DRSUAPI SUPPORTED EXTENSION GET REPL INFO", "drsuapi.drsuapi_SupportedExtensions.DRSUAPI_SUPPORTED_EXTENSION_GET_REPL_INFO", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_GET_REPL_INFO_tfs), ( 0x00004000 ), NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_INSTANCE_TYPE_NOT_REQ_ON_MOD,
+ { "DRSUAPI SUPPORTED EXTENSION INSTANCE TYPE NOT REQ ON MOD", "drsuapi.drsuapi_SupportedExtensions.DRSUAPI_SUPPORTED_EXTENSION_INSTANCE_TYPE_NOT_REQ_ON_MOD", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_INSTANCE_TYPE_NOT_REQ_ON_MOD_tfs), ( 0x00001000 ), NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_KCC_EXECUTE,
+ { "DRSUAPI SUPPORTED EXTENSION KCC EXECUTE", "drsuapi.drsuapi_SupportedExtensions.DRSUAPI_SUPPORTED_EXTENSION_KCC_EXECUTE", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_KCC_EXECUTE_tfs), ( 0x00000100 ), NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_LINKED_VALUE_REPLICATION,
+ { "DRSUAPI SUPPORTED EXTENSION LINKED VALUE REPLICATION", "drsuapi.drsuapi_SupportedExtensions.DRSUAPI_SUPPORTED_EXTENSION_LINKED_VALUE_REPLICATION", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_LINKED_VALUE_REPLICATION_tfs), ( 0x00000400 ), NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_MOVEREQ_V2,
+ { "DRSUAPI SUPPORTED EXTENSION MOVEREQ V2", "drsuapi.drsuapi_SupportedExtensions.DRSUAPI_SUPPORTED_EXTENSION_MOVEREQ_V2", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_MOVEREQ_V2_tfs), ( 0x00000008 ), NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_NONDOMAIN_NCS,
+ { "DRSUAPI SUPPORTED EXTENSION NONDOMAIN NCS", "drsuapi.drsuapi_SupportedExtensions.DRSUAPI_SUPPORTED_EXTENSION_NONDOMAIN_NCS", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_NONDOMAIN_NCS_tfs), ( 0x00800000 ), NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_POST_BETA3,
+ { "DRSUAPI SUPPORTED EXTENSION POST BETA3", "drsuapi.drsuapi_SupportedExtensions.DRSUAPI_SUPPORTED_EXTENSION_POST_BETA3", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_POST_BETA3_tfs), ( 0x00080000 ), NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_REMOVEAPI,
+ { "DRSUAPI SUPPORTED EXTENSION REMOVEAPI", "drsuapi.drsuapi_SupportedExtensions.DRSUAPI_SUPPORTED_EXTENSION_REMOVEAPI", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_REMOVEAPI_tfs), ( 0x00000004 ), NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_RESERVED_PART2,
+ { "DRSUAPI SUPPORTED EXTENSION RESERVED PART2", "drsuapi.drsuapi_SupportedExtensions.DRSUAPI_SUPPORTED_EXTENSION_RESERVED_PART2", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_RESERVED_PART2_tfs), ( 0x40000000 ), NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_RESERVED_PART3,
+ { "DRSUAPI SUPPORTED EXTENSION RESERVED PART3", "drsuapi.drsuapi_SupportedExtensions.DRSUAPI_SUPPORTED_EXTENSION_RESERVED_PART3", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_RESERVED_PART3_tfs), ( 0x80000000 ), NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_RESTORE_USN_OPTIMIZATION,
+ { "DRSUAPI SUPPORTED EXTENSION RESTORE USN OPTIMIZATION", "drsuapi.drsuapi_SupportedExtensions.DRSUAPI_SUPPORTED_EXTENSION_RESTORE_USN_OPTIMIZATION", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_RESTORE_USN_OPTIMIZATION_tfs), ( 0x00000040 ), NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_STRONG_ENCRYPTION,
+ { "DRSUAPI SUPPORTED EXTENSION STRONG ENCRYPTION", "drsuapi.drsuapi_SupportedExtensions.DRSUAPI_SUPPORTED_EXTENSION_STRONG_ENCRYPTION", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_STRONG_ENCRYPTION_tfs), ( 0x00008000 ), NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_TRANSITIVE_MEMBERSHIP,
+ { "DRSUAPI SUPPORTED EXTENSION TRANSITIVE MEMBERSHIP", "drsuapi.drsuapi_SupportedExtensions.DRSUAPI_SUPPORTED_EXTENSION_TRANSITIVE_MEMBERSHIP", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_TRANSITIVE_MEMBERSHIP_tfs), ( 0x00020000 ), NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_VERIFY_OBJECT,
+ { "DRSUAPI SUPPORTED EXTENSION VERIFY OBJECT", "drsuapi.drsuapi_SupportedExtensions.DRSUAPI_SUPPORTED_EXTENSION_VERIFY_OBJECT", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_VERIFY_OBJECT_tfs), ( 0x08000000 ), NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_XPRESS_COMPRESS,
+ { "DRSUAPI SUPPORTED EXTENSION XPRESS COMPRESS", "drsuapi.drsuapi_SupportedExtensions.DRSUAPI_SUPPORTED_EXTENSION_XPRESS_COMPRESS", FT_BOOLEAN, 32, TFS(&drsuapi_SupportedExtensions_DRSUAPI_SUPPORTED_EXTENSION_XPRESS_COMPRESS_tfs), ( 0x10000000 ), NULL, HFILL }},
{ &hf_drsuapi_drsuapi_VAR_SIZE_BUFFER_WITH_VERSION_buffer,
{ "Buffer", "drsuapi.drsuapi_VAR_SIZE_BUFFER_WITH_VERSION.buffer", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
{ &hf_drsuapi_drsuapi_VAR_SIZE_BUFFER_WITH_VERSION_buffer_size,
{ "Padding", "drsuapi.drsuapi_VAR_SIZE_BUFFER_WITH_VERSION.padding", FT_UINT64, BASE_DEC, NULL, 0, NULL, HFILL }},
{ &hf_drsuapi_drsuapi_VAR_SIZE_BUFFER_WITH_VERSION_version,
{ "Version", "drsuapi.drsuapi_VAR_SIZE_BUFFER_WITH_VERSION.version", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_WriteNgcKeyCtr1_ret_val,
+ { "Ret Val", "drsuapi.drsuapi_WriteNgcKeyCtr1.ret_val", FT_UINT32, BASE_DEC, VALS(WERR_errors), 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_WriteNgcKeyCtr_ctr1,
+ { "Ctr1", "drsuapi.drsuapi_WriteNgcKeyCtr.ctr1", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_WriteNgcKeyRequest1_account,
+ { "Account", "drsuapi.drsuapi_WriteNgcKeyRequest1.account", FT_STRING, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_WriteNgcKeyRequest1_ngc_key,
+ { "Ngc Key", "drsuapi.drsuapi_WriteNgcKeyRequest1.ngc_key", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_WriteNgcKeyRequest1_ngc_key_size,
+ { "Ngc Key Size", "drsuapi.drsuapi_WriteNgcKeyRequest1.ngc_key_size", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_WriteNgcKeyRequest_req1,
+ { "Req1", "drsuapi.drsuapi_WriteNgcKeyRequest.req1", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_WriteNgcKey_bind_handle,
+ { "Bind Handle", "drsuapi.drsuapi_WriteNgcKey.bind_handle", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_WriteNgcKey_ctr,
+ { "Ctr", "drsuapi.drsuapi_WriteNgcKey.ctr", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_WriteNgcKey_in_version,
+ { "In Version", "drsuapi.drsuapi_WriteNgcKey.in_version", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_WriteNgcKey_out_version,
+ { "Out Version", "drsuapi.drsuapi_WriteNgcKey.out_version", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
+ { &hf_drsuapi_drsuapi_WriteNgcKey_req,
+ { "Req", "drsuapi.drsuapi_WriteNgcKey.req", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
{ &hf_drsuapi_lsa_String_length,
{ "Length", "drsuapi.lsa_String.length", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
{ &hf_drsuapi_lsa_String_size,
&ett_drsuapi_drsuapi_DrsMoreOptions,
&ett_drsuapi_drsuapi_DrsUpdate,
&ett_drsuapi_drsuapi_VAR_SIZE_BUFFER_WITH_VERSION,
+ &ett_drsuapi_drsuapi_SupportedExtensions,
+ &ett_drsuapi_drsuapi_SupportedExtensionsExt,
+ &ett_drsuapi_drsuapi_DsBindInfo24,
+ &ett_drsuapi_drsuapi_DsBindInfo28,
+ &ett_drsuapi_drsuapi_DsBindInfo32,
+ &ett_drsuapi_drsuapi_DsBindInfo48,
+ &ett_drsuapi_drsuapi_DsBindInfo52,
+ &ett_drsuapi_drsuapi_DsBindInfoFallBack,
+ &ett_drsuapi_drsuapi_DsBindInfo,
&ett_drsuapi_drsuapi_DsBindInfoCtr,
&ett_drsuapi_drsuapi_DsReplicaObjectIdentifier,
&ett_drsuapi_drsuapi_DsReplicaSyncRequest1,
&ett_drsuapi_drsuapi_QuerySitesByCostCtr,
&ett_drsuapi_drsuapi_QuerySitesByCostRequest1,
&ett_drsuapi_drsuapi_QuerySitesByCostRequest,
+ &ett_drsuapi_drsuapi_InitDemotionRequest1,
+ &ett_drsuapi_drsuapi_InitDemotionRequest,
+ &ett_drsuapi_drsuapi_InitDemotionCtr1,
+ &ett_drsuapi_drsuapi_InitDemotionCtr,
+ &ett_drsuapi_drsuapi_ReplicaDemotionRequest1,
+ &ett_drsuapi_drsuapi_ReplicaDemotionRequest,
+ &ett_drsuapi_drsuapi_ReplicaDemotionCtr1,
+ &ett_drsuapi_drsuapi_ReplicaDemotionCtr,
+ &ett_drsuapi_drsuapi_FinishDemotionRequest1,
+ &ett_drsuapi_drsuapi_FinishDemotionRequest,
+ &ett_drsuapi_drsuapi_FinishDemotionCtr1,
+ &ett_drsuapi_drsuapi_FinishDemotionCtr,
+ &ett_drsuapi_drsuapi_AddCloneDCRequest1,
+ &ett_drsuapi_drsuapi_AddCloneDCRequest,
+ &ett_drsuapi_drsuapi_AddCloneDCCtr1,
+ &ett_drsuapi_drsuapi_AddCloneDCCtr,
+ &ett_drsuapi_drsuapi_WriteNgcKeyRequest1,
+ &ett_drsuapi_drsuapi_WriteNgcKeyRequest,
+ &ett_drsuapi_drsuapi_WriteNgcKeyCtr1,
+ &ett_drsuapi_drsuapi_WriteNgcKeyCtr,
+ &ett_drsuapi_drsuapi_ReadNgcKeyRequest1,
+ &ett_drsuapi_drsuapi_ReadNgcKeyRequest,
+ &ett_drsuapi_drsuapi_ReadNgcKeyCtr1,
+ &ett_drsuapi_drsuapi_ReadNgcKeyCtr,
};
proto_dcerpc_drsuapi = proto_register_protocol("Active Directory Replication", "DRSUAPI", "drsuapi");