사용자 경로는 resolve 뒤 normalize하고 허용 루트 안인지 확인한다

문자열이 workspace로 시작해도 .. 계산 뒤 바깥을 가리킬 수 있습니다.

  1. 1

    root

    absolute normalize

  2. 2

    resolve

    사용자 조각 결합

  3. 3

    normalize

    .·.. 계산

  4. 4

    real parent

    link 해석

  5. 5

    startsWith root

    허용·거부

핵심: 기존 대상은 real path, 새 대상은 부모 real path까지 확인해 symbolic link 우회를 다룹니다.