use error code path instead of return early without calling VOP_ABORTOP() and
authorsemarie <semarie@openbsd.org>
Sun, 26 Jun 2016 14:27:14 +0000 (14:27 +0000)
committersemarie <semarie@openbsd.org>
Sun, 26 Jun 2016 14:27:14 +0000 (14:27 +0000)
vrele()/vput().

ok deraadt@

sys/kern/vfs_syscalls.c

index 8cf313f..ffaaefa 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: vfs_syscalls.c,v 1.256 2016/06/01 22:54:45 millert Exp $      */
+/*     $OpenBSD: vfs_syscalls.c,v 1.257 2016/06/26 14:27:14 semarie Exp $      */
 /*     $NetBSD: vfs_syscalls.c,v 1.71 1996/04/23 10:29:02 mycroft Exp $        */
 
 /*
@@ -1254,7 +1254,8 @@ domknodat(struct proc *p, int fd, const char *path, mode_t mode, dev_t dev)
                        break;
                case S_IFIFO:
 #ifndef FIFO
-                       return (EOPNOTSUPP);
+                       error = EOPNOTSUPP;
+                       break;
 #else
                        if (dev == 0) {
                                vattr.va_type = VFIFO;