svn commit: r309026 - head/lib/libc/sys

Jilles Tjoelker jilles at FreeBSD.org
Tue Nov 22 22:30:56 UTC 2016


Author: jilles
Date: Tue Nov 22 22:30:55 2016
New Revision: 309026
URL: https://svnweb.freebsd.org/changeset/base/309026

Log:
  open(2): Clarify non-POSIX error when opening a symlink with O_NOFOLLOW.
  
  We return [EMLINK] instead of [ELOOP] when trying to open a symlink with
  O_NOFOLLOW, so that the original case of [ELOOP] can be distinguished. Code
  like cmp -h and xz takes advantage of this.
  
  PR:		214633
  Reviewed by:	kib, imp
  MFC after:	1 week
  Differential Revision:	https://reviews.freebsd.org/D8586

Modified:
  head/lib/libc/sys/open.2

Modified: head/lib/libc/sys/open.2
==============================================================================
--- head/lib/libc/sys/open.2	Tue Nov 22 22:10:58 2016	(r309025)
+++ head/lib/libc/sys/open.2	Tue Nov 22 22:30:55 2016	(r309026)
@@ -28,7 +28,7 @@
 .\"     @(#)open.2	8.2 (Berkeley) 11/16/93
 .\" $FreeBSD$
 .\"
-.Dd September 30, 2016
+.Dd November 22, 2016
 .Dt OPEN 2
 .Os
 .Sh NAME
@@ -503,6 +503,22 @@ The
 .Fn openat
 function was introduced in
 .Fx 8.0 .
+.Sh STANDARDS
+These functions are specified by
+.St -p1003.1-2008 .
+.Fx
+sets
+.Va errno
+to
+.Er EMLINK instead of
+.Er ELOOP
+as specified by
+.Tn POSIX
+when
+.Dv O_NOFOLLOW
+is set in flags and the final component of pathname is a symbolic link
+to distinguish it from the case of too many symbolic link traversals
+in one of its non-final components.
 .Sh BUGS
 The Open Group Extended API Set 2 specification requires that the test
 for whether


More information about the svn-src-head mailing list