NDIS_SWITCH_GROW_NET_BUFFER_LIST_DESTINATIONS 콜백 함수(ndis.h)

GrowNetBufferListDestinations 함수는 추가 Hyper-V 확장 가능한 스위치 대상 포트를 위한 공간을 NET_BUFFER_LIST 구조로 지정된 패킷에 추가합니다.

구문

NDIS_SWITCH_GROW_NET_BUFFER_LIST_DESTINATIONS NdisSwitchGrowNetBufferListDestinations;

NDIS_STATUS NdisSwitchGrowNetBufferListDestinations(
  [in]  NDIS_SWITCH_CONTEXT NdisSwitchContext,
        PNET_BUFFER_LIST NetBufferList,
  [in]  UINT32 NumberOfNewDestinations,
  [out] PNDIS_SWITCH_FORWARDING_DESTINATION_ARRAY *Destinations
)
{...}

매개 변수

[in] NdisSwitchContext

Hyper-V 확장 가능 스위치 확장이 연결된 확장 가능한 스위치 모듈의 핸들을 포함하는 NDIS_SWITCH_CONTEXT 값입니다. 확장이 NdisFGetOptionalSwitchHandlers를 호출하면 이 핸들은 NdisSwitchContext 매개 변수를 통해 반환됩니다.

NetBufferList

NET_BUFFER_LIST 구조체의 연결된 목록에 대한 포인터입니다.

참고 이 구조체에는 확장 가능한 스위치 전달 컨텍스트가 포함되어야 합니다. 확장이 패킷을 만들거나 복제한 경우 AllocateNetBufferListForwardingContext 함수를 호출하여 이전에 이 구조를 할당했어야 합니다. 확장 가능한 스위치 전달 컨텍스트에 대한 자세한 내용은 Hyper-V 확장 가능한 전환 전달 컨텍스트를 참조하세요.
 

[in] NumberOfNewDestinations

패킷에 추가할 새 대상 포트 수를 지정하는 UINT32 값입니다.

[out] Destinations

NDIS_SWITCH_FORWARDING_DESTINATION_ARRAY 구조체에 대한 포인터입니다. 이 구조체는 패킷의 확장 가능한 스위치 대상 포트를 지정합니다.

반환 값

호출이 성공하면 함수는 NDIS_STATUS_SUCCESS 반환합니다. 그렇지 않으면 Ndis.h에 정의된 NDIS_STATUS_Xxx 오류 코드를 반환합니다.

설명

확장 가능한 스위치 확장은 GrowNetBufferListDestinations 함수를 호출하여 패킷의 대상 포트에 대한 공간을 추가합니다. 포트 대상은 NDIS_SWITCH_FORWARDING_DESTINATION_ARRAY 구조를 통해 지정됩니다.

패킷에 대상 포트를 추가하는 방법에 대한 자세한 내용은 패킷에 확장 가능한 스위치 대상 포트 데이터 추가를 참조하세요.

참고NetBufferList 매개 변수에 여러 NET_BUFFER_LIST 구조의 연결된 목록에 대한 포인터가 포함된 경우 추가 대상 포트의 공간은 목록의 첫 번째 NET_BUFFER_LIST 구조에만 추가됩니다.
 

요구 사항

요구 사항
지원되는 최소 클라이언트 NDIS 6.30 이상에서 지원됩니다.
대상 플랫폼 데스크톱
머리글 ndis.h(Ndis.h 포함)
IRQL <= DISPATCH_LEVEL

추가 정보

AllocateNetBufferListForwardingContext

NDIS_SWITCH_FORWARDING_DESTINATION_ARRAY

NDIS_SWITCH_PORT_DESTINATION

NET_BUFFER

NET_BUFFER_LIST

NdisFGetOptionalSwitchHandlers

UpdateNetBufferListDestinations