Author: jamie
Date: Thu Jun  9 20:39:57 2016
New Revision: 301758
URL: https://svnweb.freebsd.org/changeset/base/301758

Log:
  Clean up some logic in jail error messages, replacing a missing test and
  a redundant test with a single correct test.

Modified:
  head/sys/kern/kern_jail.c

Modified: head/sys/kern/kern_jail.c
==============================================================================
--- head/sys/kern/kern_jail.c   Thu Jun  9 20:23:30 2016        (r301757)
+++ head/sys/kern/kern_jail.c   Thu Jun  9 20:39:57 2016        (r301758)
@@ -1929,19 +1929,17 @@ kern_jail_set(struct thread *td, struct 
                vrele(root);
  done_errmsg:
        if (error) {
-               vfs_getopt(opts, "errmsg", (void **)&errmsg, &errmsg_len);
-               if (errmsg_len > 0) {
+               if (vfs_getopt(opts, "errmsg", (void **)&errmsg,
+                   &errmsg_len) == 0 && errmsg_len > 0) {
                        errmsg_pos = 2 * vfs_getopt_pos(opts, "errmsg") + 1;
-                       if (errmsg_pos > 0) {
-                               if (optuio->uio_segflg == UIO_SYSSPACE)
-                                       bcopy(errmsg,
-                                          optuio->uio_iov[errmsg_pos].iov_base,
-                                          errmsg_len);
-                               else
-                                       copyout(errmsg,
-                                          optuio->uio_iov[errmsg_pos].iov_base,
-                                          errmsg_len);
-                       }
+                       if (optuio->uio_segflg == UIO_SYSSPACE)
+                               bcopy(errmsg,
+                                   optuio->uio_iov[errmsg_pos].iov_base,
+                                   errmsg_len);
+                       else
+                               copyout(errmsg,
+                                   optuio->uio_iov[errmsg_pos].iov_base,
+                                   errmsg_len);
                }
        }
  done_free:
_______________________________________________
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to