svn commit: r341809 - in head: lib/libc/sys sys/kern

Konstantin Belousov kib at FreeBSD.org
Tue Dec 11 02:48:50 UTC 2018


Author: kib
Date: Tue Dec 11 02:48:49 2018
New Revision: 341809
URL: https://svnweb.freebsd.org/changeset/base/341809

Log:
  Remove special case handling for getfhat(fd, NULL, handle).
  
  There is no reason for it to behave differently from openat(fd, NULL).
  Also the handling did not worked because the substituted path was from
  the system address space, causing EFAULT.
  
  Submitted by:	Jack Halford <jack at gandi.net>
  MFC after:	1 week
  Differential revision:	https://reviews.freebsd.org/D18501

Modified:
  head/lib/libc/sys/getfh.2
  head/sys/kern/vfs_syscalls.c

Modified: head/lib/libc/sys/getfh.2
==============================================================================
--- head/lib/libc/sys/getfh.2	Tue Dec 11 02:16:27 2018	(r341808)
+++ head/lib/libc/sys/getfh.2	Tue Dec 11 02:48:49 2018	(r341809)
@@ -29,7 +29,7 @@
 .\"	@(#)getfh.2	8.1 (Berkeley) 6/9/93
 .\" $FreeBSD$
 .\"
-.Dd December 7, 2018
+.Dd December 11, 2018
 .Dt GETFH 2
 .Os
 .Sh NAME
@@ -76,12 +76,12 @@ and
 .Fn lgetfh
 except when the
 .Fa path
-specifies a relative or NULL path, or the
+specifies a relative path, or the
 .Dv AT_BENEATH
 flag is provided.
 For
 .Fn getfhat
-and relative or NULL
+and relative
 .Fa path ,
 the status is retrieved from a file relative to
 the directory associated with the file descriptor

Modified: head/sys/kern/vfs_syscalls.c
==============================================================================
--- head/sys/kern/vfs_syscalls.c	Tue Dec 11 02:16:27 2018	(r341808)
+++ head/sys/kern/vfs_syscalls.c	Tue Dec 11 02:48:49 2018	(r341809)
@@ -4196,8 +4196,8 @@ sys_getfhat(struct thread *td, struct getfhat_args *ua
 
 	if ((uap->flags & ~(AT_SYMLINK_NOFOLLOW | AT_BENEATH)) != 0)
 	    return (EINVAL);
-	return (kern_getfhat(td, uap->flags, uap->fd, uap->path ? uap->path : ".",
-	    UIO_USERSPACE, uap->fhp));
+	return (kern_getfhat(td, uap->flags, uap->fd, uap->path, UIO_USERSPACE,
+	    uap->fhp));
 }
 
 static int


More information about the svn-src-head mailing list