Print this page
NEX-14666 Need to provide SMB 2.1 Client
NEX-17187 panic in smbfs_acl_store
NEX-17231 smbfs create xattr files finds wrong file
NEX-17224 smbfs lookup EINVAL should be ENOENT
NEX-17260 SMB1 client fails to list directory after NEX-14666
Reviewed by: Evan Layton <evan.layton@nexenta.com>
Reviewed by: Matt Barden <matt.barden@nexenta.com>
Reviewed by: Rick McNeal <rick.mcneal@nexenta.com>
Reviewed by: Saso Kiselkov <saso.kiselkov@nexenta.com>
Reviewed by: Joyce McIntosh <joyce.mcintosh@nexenta.com>
and: (cleanup)
NEX-5665 SMB2 oplock leases
Reviewed by: Matt Barden <matt.barden@nexenta.com>
Reviewed by: Evan Layton <evan.layton@nexenta.com>
Reviewed by: Roman Strashkin <roman.strashkin@nexenta.com>
NEX-5665 SMB2 oplock leases
Reviewed by: Matt Barden <matt.barden@nexenta.com>
Reviewed by: Evan Layton <evan.layton@nexenta.com>
Reviewed by: Roman Strashkin <roman.strashkin@nexenta.com>
SMB-136 Snapshots not visible in Windows previous versions
SMB-65 SMB server in non-global zones (use zone_kcred())
SMB-65 SMB server in non-global zones (data structure changes)
Many things move to the smb_server_t object, and
many functions gain an sv arg (which server).
re #14152 Race between ipmi_submit_driver_request() and kcs_loop() (sync with illumos fix 3902)
SMB-46 File handle leaks exposed by mtime fixes (rm 7815)
re #7815 SMB server delivers old modification time...
        
*** 18,32 ****
   *
   * CDDL HEADER END
   */
  /*
   * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
!  * Copyright 2014 Nexenta Systems, Inc.  All rights reserved.
   */
  
  #include <smbsrv/smb_kproto.h>
! #include <smbsrv/winioctl.h>
  
  
  static uint32_t smb_nt_trans_ioctl_noop(smb_request_t *, smb_xa_t *);
  static uint32_t smb_nt_trans_ioctl_invalid_parm(smb_request_t *, smb_xa_t *);
  static uint32_t smb_nt_trans_ioctl_set_sparse(smb_request_t *, smb_xa_t *);
--- 18,32 ----
   *
   * CDDL HEADER END
   */
  /*
   * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
!  * Copyright 2018 Nexenta Systems, Inc.  All rights reserved.
   */
  
  #include <smbsrv/smb_kproto.h>
! #include <smb/winioctl.h>
  
  
  static uint32_t smb_nt_trans_ioctl_noop(smb_request_t *, smb_xa_t *);
  static uint32_t smb_nt_trans_ioctl_invalid_parm(smb_request_t *, smb_xa_t *);
  static uint32_t smb_nt_trans_ioctl_set_sparse(smb_request_t *, smb_xa_t *);
*** 36,49 ****
  static uint32_t smb_nt_trans_ioctl_enum_snaps(smb_request_t *, smb_xa_t *);
  
  /*
   * This table defines the list of FSCTL values for which we'll
   * call a funtion to perform specific processing.
-  *
-  * Note: If support is added for FSCTL_SET_ZERO_DATA, it must break
-  * any oplocks on the file to none:
-  *   smb_oplock_break(sr, node, SMB_OPLOCK_BREAK_TO_NONE);
   */
  static const struct {
          uint32_t fcode;
          uint32_t (*ioctl_func)(smb_request_t *sr, smb_xa_t *xa);
  } ioctl_ret_tbl[] = {
--- 36,45 ----
*** 220,230 ****
  
  /*
   * smb_nt_trans_ioctl_set_zero_data
   *
   * Check that the request is valid on the specified file.
!  * The implementation is a noop.
   */
  /* ARGSUSED */
  static uint32_t
  smb_nt_trans_ioctl_set_zero_data(smb_request_t *sr, smb_xa_t *xa)
  {
--- 216,231 ----
  
  /*
   * smb_nt_trans_ioctl_set_zero_data
   *
   * Check that the request is valid on the specified file.
!  * The implementation is a noop. XXX - bug!
!  * XXX: We have this in the fsclt module now.  Call that.
!  *
!  * Note: When support is added for FSCTL_SET_ZERO_DATA, it must
!  * break any oplocks on the file to none:
!  *      (void) smb_oplock_break_WRITE(node, ofile);
   */
  /* ARGSUSED */
  static uint32_t
  smb_nt_trans_ioctl_set_zero_data(smb_request_t *sr, smb_xa_t *xa)
  {