다음을 통해 공유


V_NET_ROOT 구조체

V_NET_ROOT 구조는 공유에 매핑하는 메커니즘을 제공합니다(예: 연결된 공유 지점의 루트 아래를 가리키는 사용자 드라이브 매핑). V_NET_ROOT 이름은 다음 형식 중 하나일 수 있습니다.

\server\share\d1\d2
\;m:\server\share\d1\d2

이름의 형식은 이 V_NET_ROOT 구조와 연결된 로컬 디바이스(예: "X:")가 있는지 여부에 따라 달라집니다. 예를 들어 로컬 드라이브 매핑(예: d1\d2)의 경우 로컬 드라이브 매핑은 이 V_NET_ROOT 구조에서 열리는 각 CreateFile 에 접두사를 붙입니다.

V_NET_ROOT 구조는 대체 자격 증명을 제공하는 데도 사용됩니다. 이러한 종류의 V_NET_ROOT 구조의 목적은 대체 자격 증명을 기본값으로 NET_ROOT 전파하는 것입니다. 이렇게 하려면 다른 참조가 없어야 합니다.

각 NET_ROOT RDBSS에서 V_NET_ROOT 구조 목록을 유지 관리합니다. 각 V_NET_ROOT 구조에는 다른 RDBSS 구조와 공통적인 몇 가지 요소와 V_NET_ROOT 구조체에 고유한 요소가 있습니다. V_NET_ROOT 구조를 관리하는 RDBSS 루틴은 다음 요소만 수정합니다.

  • 서명 및 참조 수

  • 연결된 NET_ROOT 구조체 및 링크에 대한 포인터

  • 테이블 조회의 이름 정보(접두사)

  • 사용자가 보는 이름에 추가할 접두사 이름입니다(실제 NET_ROOT 구조의 루트에 매핑되지 않은 NET_ROOT 구조를 시뮬레이션하기 위한 것입니다.)

V_NET_ROOT 구조체의 종료는 다음 두 부분으로 구성됩니다.

  1. 모든 SRV_OPEN 구조와의 연결 제거

  2. 메모리 해제

이러한 두 작업 사이에 지연이 있을 수 있으며 V_NET_ROOT 구조의 필드는 첫 번째 단계가 중복되지 않도록 합니다.