1// Copyright 2024 The Go Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style 3// license that can be found in the LICENSE file. 4 5//go:build unix && !dragonfly && !freebsd && !netbsd 6 7package unix 8 9import "syscall" 10 11// POSIX.1-2008 says it's ELOOP. Most platforms follow: 12// 13// - aix: O_NOFOLLOW not documented (https://www.ibm.com/docs/ssw_aix_73/o_bostechref/open.html), assuming ELOOP 14// - android: see linux 15// - darwin: https://github.com/apple/darwin-xnu/blob/main/bsd/man/man2/open.2 16// - hurd: who knows if it works at all (https://www.gnu.org/software/hurd/open_issues/open_symlink.html) 17// - illumos: https://illumos.org/man/2/open 18// - ios: see darwin 19// - linux: https://man7.org/linux/man-pages/man2/openat.2.html 20// - openbsd: https://man.openbsd.org/open.2 21// - solaris: https://docs.oracle.com/cd/E23824_01/html/821-1463/open-2.html 22const noFollowErrno = syscall.ELOOP 23