NDIS_STATUS natpPnPNetEventReconfigure( IN PFILTER_ADAPTER pAdapt, IN PNET_PNP_EVENT pNetPnPEvent ) { if (pAdapt == NULL) NdisReEnumerateProtocolBindings (ProtHandle); return NDIS_STATUS_SUCCESS; }
NDIS_STATUS PtPnPNetEventReconfigure( IN PADAPT pAdapt, IN PNET_PNP_EVENT pNetPnPEvent ) /*++ Routine Description: This routine is called from NDIS to notify our protocol edge of a reconfiguration of parameters for either a specific binding (pAdapt is not NULL), or global parameters if any (pAdapt is NULL). Arguments: pAdapt - Pointer to our adapter structure. pNetPnPEvent - the reconfigure event Return Value: NDIS_STATUS_SUCCESS --*/ { NDIS_STATUS ReconfigStatus = NDIS_STATUS_SUCCESS; NDIS_STATUS ReturnStatus = NDIS_STATUS_SUCCESS; do { // // Is this is a global reconfiguration notification ? // if (pAdapt == NULL) { // // An important event that causes this notification to us is if // one of our upper-edge miniport instances was enabled after being // disabled earlier, e.g. from Device Manager in Win2000. Note that // NDIS calls this because we had set up an association between our // miniport and protocol entities by calling NdisIMAssociateMiniport. // // Since we would have torn down the lower binding for that miniport, // we need NDIS' assistance to re-bind to the lower miniport. The // call to NdisReEnumerateProtocolBindings does exactly that. // NdisReEnumerateProtocolBindings (ProtHandle); break; } #ifdef NDIS51 // // Pass on this notification to protocol(s) above before doing anything // with it. // if (pAdapt->MiniportHandle) { ReturnStatus = NdisIMNotifyPnPEvent(pAdapt->MiniportHandle, pNetPnPEvent); } #endif // NDIS51 ReconfigStatus = NDIS_STATUS_SUCCESS; } while(FALSE); DBGPRINT(("<==PtPNPNetEventReconfigure: pAdapt %p\n", pAdapt)); #ifdef NDIS51 // // Overwrite status with what upper-layer protocol(s) returned. // ReconfigStatus = ReturnStatus; #endif return ReconfigStatus; }