Print this page
NEX-13644 File access audit logging
Reviewed by: Gordon Ross <gordon.ross@nexenta.com>
Reviewed by: Roman Strashkin <roman.strashkin@nexenta.com>
Reviewed by: Saso Kiselkov <saso.kiselkov@nexenta.com>
Reviewed by: Rick McNeal <rick.mcneal@nexenta.com>
Reviewed by: Yuri Pankov <yuri.pankov@nexenta.com>
NEX-18380 Catch up with illumos SMB fix 9769
Reviewed by: Matt Barden <matt.barden@nexenta.com>
Reviewed by: Rick McNeal <rick.mcneal@nexenta.com>
Reviewed by: Evan Layton <evan.layton@nexenta.com>
Reviewed by: Yuri Pankov <yuri.pankov@nexenta.com>
9769 SMB domain logon fails with I18N user name
9774 libmlrpc changes in 1575 missed some things
Reviewed by: Toomas Soome <tsoome@me.com>
Reviewed by: Andy Fiddaman <omnios@citrus-it.co.uk>
Approved by: Robert Mustacchi <rm@joyent.com>
NEX-17589 Get "too high" smbd error when copy big file to cifs share (redo)
Reviewed by: Matt Barden <matt.barden@nexenta.com>
Reviewed by: Evan Layton <evan.layton@nexenta.com>
NEX-17558 add mdb walker for smbd share cache
Reviewed by: Matt Barden <matt.barden@nexenta.com>
Reviewed by: Joyce McIntosh <joyce.mcintosh@nexenta.com>
1575 untangle libmlrpc from SMB server
Reviewed by: Matt Barden <matt.barden@nexenta.com>
Reviewed by: Evan Layton <evan.layton@nexenta.com>
Reviewed by: Toomas Soome <tsoome@me.com>
Approved by: Richard Lowe <richlowe@richlowe.net>
NEX-9808 SMB3 persistent handles
Reviewed by: Matt Barden <matt.barden@nexenta.com>
Reviewed by: Evan Layton <evan.layton@nexenta.com>
NEX-15554 make-smbsrv needs updates
Reviewed by: Matt Barden <matt.barden@nexenta.com>
Reviewed by: Evan Layton <evan.layton@nexenta.com>
NEX-9808 SMB3 persistent handles
Reviewed by: Matt Barden <matt.barden@nexenta.com>
Reviewed by: Evan Layton <evan.layton@nexenta.com>
NEX-15554 make-smbsrv needs updates
Reviewed by: Matt Barden <matt.barden@nexenta.com>
Reviewed by: Evan Layton <evan.layton@nexenta.com>
NEX-4083 Upstream changes from illumos 5917 and 5995
Reviewed by: Matt Barden <matt.barden@nexenta.com>
Reviewed by: Kevin Crowe <kevin.crowe@nexenta.com>
Reviewed by: Yuri Pankov <yuri.pankov@nexenta.com>
NEX-2702 want make-smbsrv clean to be more selective
OS-266 sync v8 mdb module to illumos-joyent f1ab5c2
NEX-1633 smb_open_attr_only() does not return true if READ_CONTROL is set
NEX-1810 extended security Kerberos (inbound)
NEX-1638 Updated DC Locator
 Includes work by: matt.barden@nexenta.com, kevin.crowe@nexenta.com
NEX-1456 Cannot receive incremental stream for dataset shared via SMB: destination dataset has been modified. part 1
SMB-153 Quota tab for the Share does not work
SMB-123 misleading log messages from smb_logon
SMB-113 Some dtrace scripts for SMB
SMB-95 improve smbsrv developer tools
SMB-11 SMB2 message parse & dispatch
SMB-12 SMB2 Negotiate Protocol
SMB-13 SMB2 Session Setup
SMB-14 SMB2 Logoff
SMB-15 SMB2 Tree Connect
SMB-16 SMB2 Tree Disconnect
SMB-17 SMB2 Create
SMB-18 SMB2 Close
SMB-19 SMB2 Flush
SMB-20 SMB2 Read
SMB-21 SMB2 Write
SMB-22 SMB2 Lock/Unlock
SMB-23 SMB2 Ioctl
SMB-24 SMB2 Cancel
SMB-25 SMB2 Echo
SMB-26 SMB2 Query Dir
SMB-27 SMB2 Change Notify
SMB-28 SMB2 Query Info
SMB-29 SMB2 Set Info
SMB-30 SMB2 Oplocks
SMB-53 SMB2 Create Context options
(SMB2 code review cleanup 1, 2, 3)
SMB-72 Improve startup/shudown debug features
SMB-50 User-mode SMB server
 Includes work by these authors:
 Thomas Keiser <thomas.keiser@nexenta.com>
 Albert Lee <trisk@nexenta.com>
OS-3 Convenience scripts to build/clean smbsrv, zfs

*** 9,23 **** # source. A copy of the CDDL is also available via the Internet at # http://www.illumos.org/license/CDDL. # # ! # Copyright 2014 Nexenta Systems, Inc. All rights reserved. # ! # Use distributed make (dmake) by default. ! make=${MAKE:-dmake} CLOSED_IS_PRESENT=no export CLOSED_IS_PRESENT # Do this if you want to use dbx or gdb --- 9,23 ---- # source. A copy of the CDDL is also available via the Internet at # http://www.illumos.org/license/CDDL. # # ! # Copyright 2018 Nexenta Systems, Inc. All rights reserved. # ! # Use normal make (not dmake) by default. ! make=${MAKE:-make} CLOSED_IS_PRESENT=no export CLOSED_IS_PRESENT # Do this if you want to use dbx or gdb
*** 30,45 **** cpu=`uname -p` case $cpu in i386) x=intel mdb_arch="ia32 amd64" arch64=amd64 ;; sparc) x=sparc ! mdb_arch=v9 arch64=sparcv9 ;; *) echo "Huh?" ; exit 1;; esac --- 30,47 ---- cpu=`uname -p` case $cpu in i386) x=intel + kmdb_arch="amd64" mdb_arch="ia32 amd64" arch64=amd64 ;; sparc) x=sparc ! kmdb_arch=v9 ! mdb_arch="v7 v9" arch64=sparcv9 ;; *) echo "Huh?" ; exit 1;; esac
*** 76,101 **** # ... stuff under $SRC test -f $SRC/uts/common/sys/priv_names.h || (cd $SRC/uts && $make -k all_h) test -f $SRC/head/rpcsvc/nispasswd.h || ! (cd $SRC/head && $make -k install_h) # ... stuff under $ROOT (proto area) test -d $ROOT/usr/include/sys || (cd $SRC && $make rootdirs) test -f $ROOT/usr/include/sys/types.h || ! (cd $SRC/uts && $make -k install_h) test -f $ROOT/usr/include/rpcsvc/daemon_utils.h || ! (cd $SRC/head && $make install_h) # always update the smbsrv headers to be safe ! (cd $SRC/uts/common/gssapi && $make -k install_h) ! (cd $SRC/uts/common/sys && $make -k install_h) ! (cd $SRC/uts/common/smb && $make -k install_h) ! (cd $SRC/uts/common/smbsrv && $make -k install_h) fi # Need some library headers too... for lib in \ libads \ --- 78,110 ---- # ... stuff under $SRC test -f $SRC/uts/common/sys/priv_names.h || (cd $SRC/uts && $make -k all_h) test -f $SRC/head/rpcsvc/nispasswd.h || ! (cd $SRC/head && $make -k $targ) # ... stuff under $ROOT (proto area) test -d $ROOT/usr/include/sys || (cd $SRC && $make rootdirs) test -f $ROOT/usr/include/sys/types.h || ! (cd $SRC/uts && $make -k $targ) test -f $ROOT/usr/include/rpcsvc/daemon_utils.h || ! (cd $SRC/head && $make $targ) # always update the smbsrv headers to be safe ! (cd $SRC/uts/common/gssapi && $make -k $targ) ! (cd $SRC/uts/common/sys && $make -k $targ) ! (cd $SRC/uts/common/smb && $make -k $targ) ! (cd $SRC/uts/common/smbsrv && $make -k $targ) ! (cd $SRC/uts/common/c2 && $make -k $targ) ! fi + if [ "$targ" = lint ] + then + targ=check + (cd $SRC/uts/common/smb && $make -k $targ) + (cd $SRC/uts/common/smbsrv && $make -k $targ) fi # Need some library headers too... for lib in \ libads \
*** 103,122 **** libcmdutils \ libcryptoutil \ libdevid \ libfakekernel \ libgss \ - libkrb5 \ libidmap \ libpam \ libsec \ libscf \ libshare \ libsmbfs \ libsqlite \ libuutil \ passwdutil \ smbsrv do (cd $SRC/lib/$lib && $make $targ) done } --- 112,135 ---- libcmdutils \ libcryptoutil \ libdevid \ libfakekernel \ libgss \ libidmap \ + libkrb5 \ + libmlrpc \ libpam \ libsec \ libscf \ libshare \ libsmbfs \ libsqlite \ libuutil \ + libzfs_core \ + libzfs \ passwdutil \ + pkcs11 \ smbsrv do (cd $SRC/lib/$lib && $make $targ) done }
*** 160,170 **** do_lib2() { for lib in \ libfakekernel \ libads \ ! libsmbfs do (cd $SRC/lib/$lib && $make $1) done (cd $SRC/lib/libshare && $make $1 PLUGINS=smb) --- 173,184 ---- do_lib2() { for lib in \ libfakekernel \ libads \ ! libsmbfs \ ! libmlrpc do (cd $SRC/lib/$lib && $make $1) done (cd $SRC/lib/libshare && $make $1 PLUGINS=smb)
*** 180,203 **** case $1 in install) # mount programs need fslib.o (cd $SRC/cmd/fs.d && $make fslib.o) - (cd $SRC/cmd/fs.d/smbclnt && $make $1 catalog) ;; clean|clobber) - (cd $SRC/cmd/fs.d/smbclnt && $make $1) (cd $SRC/cmd/fs.d && $make ${1}_local) ;; esac - (cd $SRC/cmd/devfsadm && $make $1) (cd $SRC/cmd/smbsrv && $make $1) # Build the MDB modules, WITH the linktest (cd $SRC/cmd/mdb/tools && $make $1) ! for a in $mdb_arch do case $1 in install|lint) (cd $SRC/cmd/mdb/$x/$a/kmdb && $make kmdb_modlinktest.o ) --- 194,216 ---- case $1 in install) # mount programs need fslib.o (cd $SRC/cmd/fs.d && $make fslib.o) ;; clean|clobber) (cd $SRC/cmd/fs.d && $make ${1}_local) ;; esac (cd $SRC/cmd/smbsrv && $make $1) # Build the MDB modules, WITH the linktest (cd $SRC/cmd/mdb/tools && $make $1) ! ! # kmdb_arch is 64-bit only ! for a in $kmdb_arch do case $1 in install|lint) (cd $SRC/cmd/mdb/$x/$a/kmdb && $make kmdb_modlinktest.o )
*** 205,240 **** clean|clobber) (cd $SRC/cmd/mdb/$x/$a/kmdb && $make -k $1 ) ;; esac - (cd $SRC/cmd/mdb/$x/$a/nsmb && $make $1 KMDB_LINKTEST_ENABLE= ) (cd $SRC/cmd/mdb/$x/$a/smbfs && $make $1 KMDB_LINKTEST_ENABLE= ) (cd $SRC/cmd/mdb/$x/$a/smbsrv && $make $1 KMDB_LINKTEST_ENABLE= ) - (cd $SRC/cmd/mdb/$x/$a/libfksmbsrv && - $make $1 KMDB_LINKTEST_ENABLE= ) - - # We build these libraries (to the proto area), so we need to - # build the mdb modules too so mdb will load them. - (cd $SRC/cmd/mdb/$x/$a/libcmdutils && - $make $1 ) - (cd $SRC/cmd/mdb/$x/$a/libavl && - $make $1 ) - done ! (cd $SRC/cmd/Adm/sun && $make $1) ! # Deal with mode 0400 file annoyance... ! # See usr/src/cmd/Adm/sun/Makefile ! if [ $1 = install ]; then ! chmod a+r $ROOT/var/smb/smbpasswd ! fi } ################################################################ # This builds $SRC/TAGS (and cscope.files) in a helpful order. --- 218,247 ---- clean|clobber) (cd $SRC/cmd/mdb/$x/$a/kmdb && $make -k $1 ) ;; esac (cd $SRC/cmd/mdb/$x/$a/nsmb && $make $1 KMDB_LINKTEST_ENABLE= ) (cd $SRC/cmd/mdb/$x/$a/smbfs && $make $1 KMDB_LINKTEST_ENABLE= ) (cd $SRC/cmd/mdb/$x/$a/smbsrv && $make $1 KMDB_LINKTEST_ENABLE= ) done ! # mdb_arch is both 32-bit & 64-bit ! for a in $mdb_arch ! do ! # We build these libraries (to the proto area), so we need to ! # build the mdb modules for all dependent libraries too. ! for lib in libfksmbsrv libmlsvc libcmdutils libavl ! do ! (cd $SRC/cmd/mdb/$x/$a/$lib && $make $1 ) ! ! done ! done } ################################################################ # This builds $SRC/TAGS (and cscope.files) in a helpful order.
*** 247,263 **** find uts/common/smb -name '*.[ch]' -print |sort find uts/common/smbsrv -name '*.ndl' -print |sort find uts/common/smbsrv -name '*.[ch]' -print |sort find uts/common/fs/smbsrv -name '*.[ch]' -print |sort find uts/common/gssapi -name '*.[ch]' -print |sort find head -name '*.h' -print |sort find lib/smbsrv -name '*.[ch]' -print |sort find lib/libsmbfs -name '*.[ch]' -print |sort find lib/libads -name '*.[ch]' -print |sort find lib/libgss -name '*.[ch]' -print |sort find cmd/smbsrv -name '*.[ch]' -print |sort - find common/smbsrv -name '*.[ch]' -print |sort ) > $SRC/cscope.files (cd $SRC ; exctags -e --langmap=c:+.ndl -h ndl -L - < cscope.files cscope -b ) --- 254,272 ---- find uts/common/smb -name '*.[ch]' -print |sort find uts/common/smbsrv -name '*.ndl' -print |sort find uts/common/smbsrv -name '*.[ch]' -print |sort find uts/common/fs/smbsrv -name '*.[ch]' -print |sort find uts/common/gssapi -name '*.[ch]' -print |sort + find common/smbsrv -name '*.[ch]' -print |sort find head -name '*.h' -print |sort find lib/smbsrv -name '*.[ch]' -print |sort find lib/libsmbfs -name '*.[ch]' -print |sort + find lib/libmlrpc -name '*.ndl' -print |sort + find lib/libmlrpc -name '*.[ch]' -print |sort find lib/libads -name '*.[ch]' -print |sort find lib/libgss -name '*.[ch]' -print |sort find cmd/smbsrv -name '*.[ch]' -print |sort ) > $SRC/cscope.files (cd $SRC ; exctags -e --langmap=c:+.ndl -h ndl -L - < cscope.files cscope -b )
*** 269,295 **** do_tar() { git_rev=`git rev-parse --short=8 HEAD` files=" lib/svc/manifest/network/smb/server.xml usr/kernel/drv/$arch64/smbsrv - usr/kernel/drv/smbsrv usr/kernel/kmdb/$arch64/smbsrv - usr/kernel/kmdb/smbsrv usr/lib/fs/smb/$arch64/libshare_smb.so.1 usr/lib/fs/smb/libshare_smb.so.1 usr/lib/libsmbfs.so.1 usr/lib/mdb/kvm/$arch64/smbsrv.so usr/lib/mdb/kvm/smbsrv.so usr/lib/reparse/libreparse_smb.so.1 usr/lib/security/pam_smb_passwd.so.1 usr/lib/smbsrv/dtrace ! usr/lib/smbsrv/libmlrpc.so.1 usr/lib/smbsrv/libmlsvc.so.1 usr/lib/smbsrv/libsmb.so.1 usr/lib/smbsrv/libsmbns.so.1 usr/lib/smbsrv/smbd - usr/sbin/devfsadm usr/sbin/smbadm usr/sbin/smbstat " (cd $ROOT && tar cfj ../../smbsrv-${git_rev}.tar.bz2 $files) --- 278,303 ---- do_tar() { git_rev=`git rev-parse --short=8 HEAD` files=" lib/svc/manifest/network/smb/server.xml usr/kernel/drv/$arch64/smbsrv usr/kernel/kmdb/$arch64/smbsrv usr/lib/fs/smb/$arch64/libshare_smb.so.1 usr/lib/fs/smb/libshare_smb.so.1 usr/lib/libsmbfs.so.1 usr/lib/mdb/kvm/$arch64/smbsrv.so usr/lib/mdb/kvm/smbsrv.so + usr/lib/mdb/proc/libmlsvc.so usr/lib/reparse/libreparse_smb.so.1 usr/lib/security/pam_smb_passwd.so.1 usr/lib/smbsrv/dtrace ! usr/lib/libmlrpc.so.2 usr/lib/smbsrv/libmlsvc.so.1 usr/lib/smbsrv/libsmb.so.1 usr/lib/smbsrv/libsmbns.so.1 + usr/lib/smbsrv/nvlprint usr/lib/smbsrv/smbd usr/sbin/smbadm usr/sbin/smbstat " (cd $ROOT && tar cfj ../../smbsrv-${git_rev}.tar.bz2 $files)
*** 314,323 **** --- 322,332 ---- do_lib1 $arg do_lib2 $arg do_cmds $arg ;; lint) + do_hdrs $arg do_kern $arg do_lib1 $arg do_lib2 $arg do_cmds $arg ;;