Print this page
NEX-16818 Add fksmbcl development tool
NEX-17264 SMB client test tp_smbutil_013 fails after NEX-14666
Reviewed by: Evan Layton <evan.layton@nexenta.com>
Reviewed by: Matt Barden <matt.barden@nexenta.com>
and: (fix ref leaks)
NEX-3738 Should support SMB2_CAP_LARGE_MTU
Reviewed by: Alek Pinchuk <alek@nexenta.com>
Reviewed by: Bayard Bell <bayard.bell@nexenta.com>
Reviewed by: Kevin Crowe <kevin.crowe@nexenta.com>
Reviewed by: Matt Barden <Matt.Barden@nexenta.com>
SMB-50 User-mode SMB server
 Includes work by these authors:
 Thomas Keiser <thomas.keiser@nexenta.com>
 Albert Lee <trisk@nexenta.com>

Split Close
Expand all
Collapse all
          --- old/usr/src/lib/libfakekernel/common/uio.c
          +++ new/usr/src/lib/libfakekernel/common/uio.c
↓ open down ↓ 2 lines elided ↑ open up ↑
   3    3   * Common Development and Distribution License ("CDDL"), version 1.0.
   4    4   * You may only use this file in accordance with the terms of version
   5    5   * 1.0 of the CDDL.
   6    6   *
   7    7   * A full copy of the text of the CDDL should have accompanied this
   8    8   * source.  A copy of the CDDL is also available via the Internet at
   9    9   * http://www.illumos.org/license/CDDL.
  10   10   */
  11   11  
  12   12  /*
  13      - * Copyright 2015 Nexenta Systems, Inc.  All rights reserved.
       13 + * Copyright 2017 Nexenta Systems, Inc.  All rights reserved.
  14   14   */
  15   15  
  16   16  #include <sys/types.h>
  17   17  #include <sys/sysmacros.h>
  18   18  #include <sys/param.h>
  19   19  #include <sys/systm.h>
  20   20  #include <sys/uio.h>
  21   21  #include <sys/errno.h>
  22   22  
  23   23  /*
↓ open down ↓ 11 lines elided ↑ open up ↑
  35   35          while (n && uio->uio_resid) {
  36   36                  iov = uio->uio_iov;
  37   37                  cnt = MIN(iov->iov_len, n);
  38   38                  if (cnt == 0L) {
  39   39                          uio->uio_iov++;
  40   40                          uio->uio_iovcnt--;
  41   41                          continue;
  42   42                  }
  43   43                  switch (uio->uio_segflg) {
  44   44  
  45      -                case UIO_USERSPACE:
  46   45                  case UIO_USERISPACE:
  47   46                          return (EINVAL);
  48   47  
       48 +                case UIO_USERSPACE:
  49   49                  case UIO_SYSSPACE:
  50   50                          if (rw == UIO_READ)
  51   51                                  bcopy(p, iov->iov_base, cnt);
  52   52                          else
  53   53                                  bcopy(iov->iov_base, p, cnt);
  54   54                          break;
  55   55                  }
  56   56                  iov->iov_base += cnt;
  57   57                  iov->iov_len -= cnt;
  58   58                  uio->uio_resid -= cnt;
↓ open down ↓ 31 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX