BdaStartChanges function (bdasup.h)

The BdaStartChanges function initiates the setting of new BDA topology changes.

Syntax

NTSTATUS BdaStartChanges(
  [in] PIRP pIrp
);

Parameters

[in] pIrp

Points to the IRP for the request to initiate changes. The BDA minidriver receives this IRP with the KSMETHOD_BDA_START_CHANGES request.

Return value

Returns STATUS_SUCCESS or an appropriate error code.

Remarks

A BDA minidriver calls the BdaStartChanges function to initiate the setting of new BDA topology changes after the minidriver receives a KSMETHOD_BDA_START_CHANGES request of the KSMETHODSETID_BdaChangeSync method set from the network provider. BDA minidrivers define dispatch and filter-automation tables so that those minidrivers either dispatch the BdaStartChanges function directly or intercept this request using an internal method (KStrMethodHandler), which then calls the BdaStartChanges function. For example, BDA minidrivers that intercept this request can obtain a pointer to the BDA filter from the passed IRP so that they can subsequently reset pending filter resources to the new requirements and set the change state of the filter to BDA_CHANGES_COMPLETE. See Defining Automation Tables and Changing BDA Filter Properties for more information.

Calling the BdaStartChanges function causes any previously requested topology changes that have not yet been committed to be ignored.

Requirements

Requirement Value
Target Platform Desktop
Header bdasup.h (include Bdasup.h)
Library Bdasup.lib
IRQL PASSIVE_LEVEL

See also

BDA_CHANGE_STATE

BdaCommitChanges

KSMETHODSETID_BdaChangeSync

KSMETHOD_BDA_START_CHANGES

KStrMethodHandler