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-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-16763 Catch up with illumos SMB client 1575 ... (fix rebuild)
NEX-9808 SMB3 persistent handles
Reviewed by: Matt Barden <matt.barden@nexenta.com>
Reviewed by: Evan Layton <evan.layton@nexenta.com>
NEX-15578 SMB2 durable handle redesign
Reviewed by: Matt Barden <matt.barden@nexenta.com>
Reviewed by: Evan Layton <evan.layton@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>
NEX-9808 SMB3 persistent handles
Reviewed by: Matt Barden <matt.barden@nexenta.com>
Reviewed by: Evan Layton <evan.layton@nexenta.com>
NEX-15578 SMB2 durable handle redesign
Reviewed by: Matt Barden <matt.barden@nexenta.com>
Reviewed by: Evan Layton <evan.layton@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>
NEX-1643 dtrace provider for smbsrv
Reviewed by: Evan Layton <evan.layton@nexenta.com>
Reviewed by: Matt Barden <matt.barden@nexenta.com>
NEX-9864 Some SMB cancel races remain after NEX-5845
Revert (part of) "NEX-5845 rework SMB immediate cancel"
reverts (part of) commit 7a5da69f6d42b17ebcc95ca3d02925d07a01343e.
Reviewed by: Matt Barden <matt.barden@nexenta.com>
Reviewed by: Evan Layton <evan.layton@nexenta.com>
NEX-5273 SMB 3 Encryption
Reviewed by: Gordon Ross <gordon.ross@nexenta.com>
Reviewed by: Evan Layton <evan.layton@nexenta.com>
Reviewed by: Roman Strashkin <roman.strashkin@nexenta.com>
NEX-5664 Offload Data Transfer (ODX) support for Hyper-V
Reviewed by: Evan Layton <evan.layton@nexenta.com>
Reviewed by: Kevin Crowe <kevin.crowe@nexenta.com>
Reviewed by: Matt Barden <matt.barden@nexenta.com>
NEX-6276 SMB sparse file support
Reviewed by: Kevin Crowe <kevin.crowe@nexenta.com>
Reviewed by: Matt Barden <matt.barden@nexenta.com>
Reviewed by: Evan Layton <evan.layton@nexenta.com>
NEX-5844 want SMB2 ioctl FSCTL_SRV_COPYCHUNK
NEX-6124 smb_fsop_read/write should allow file != sr->fid_ofile
NEX-6125 smbtorture invalid response with smb2.ioctl
Reviewed by: Evan Layton <evan.layton@nexenta.com>
Reviewed by: Matt Barden <matt.barden@nexenta.com>
NEX-6096 Enable compile warnings re. parentheses in smbsrv
Reviewed by: Matt Barden <matt.barden@nexenta.com>
Reviewed by: Rick McNeal <rick.mcneal@nexenta.com>
Reviewed by: Josef 'Jeff' Sipek <josef.sipek@nexenta.com>
Reviewed by: Evan Layton <evan.layton@nexenta.com>
Reviewed by: Jean McCormack <jean.mccormack@nexenta.com>
NEX-3733 Want SMB2 Apple extensions
Reviewed by: Kevin Crowe <kevin.crowe@nexenta.com>
Reviewed by: Matt Barden <Matt.Barden@nexenta.com>
NEX-4598 SMB2 credit shortage with Mac client
Reviewed by: Bayard Bell <bayard.bell@nexenta.com>
Reviewed by: Kevin Crowe <kevin.crowe@nexenta.com>
Reviewed by: Matt Barden <Matt.Barden@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-3728 SMB1 signing should use KCF like SMB2/3
Reviewed by: Matt Barden <matt.barden@nexenta.com>
Reviewed by: Dan Fields <dan.fields@nexenta.com>
NEX-3610 CLONE NEX-3591 SMB3 signing
Reviewed by: Gordon Ross <gwr@nexenta.com>
Reviewed by: Dan Fields <dan.fields@nexenta.com>
NEX-3487 Fix fallout from illumos 5688 ELF tools need to be more careful with dwarf data
NEX-2460 libfksmbd should not link with libsmb
SMB-55 SMB2 signing
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-69 read-raw, write-raw are dead code
SMB-56 extended security NTLMSSP, inbound
SMB-39 Use AF_UNIX pipes for RPC
SMB-50 User-mode SMB server
 Includes work by these authors:
 Thomas Keiser <thomas.keiser@nexenta.com>
 Albert Lee <trisk@nexenta.com>

*** 20,38 **** # # # Copyright 2008 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # ! # Copyright 2014 Nexenta Systems, Inc. All rights reserved. # LIBRARY = libfksmbsrv.a VERS = .1 OBJS_LOCAL = \ fksmb_cred.o \ ! fksmb_dt.o \ fksmb_fem.o \ fksmb_idmap.o \ fksmb_init.o \ fksmb_kdoor.o \ fksmb_sign_pkcs.o \ --- 20,39 ---- # # # Copyright 2008 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # ! # Copyright 2018 Nexenta Systems, Inc. All rights reserved. # LIBRARY = libfksmbsrv.a VERS = .1 OBJS_LOCAL = \ + fksmb_audit.o \ fksmb_cred.o \ ! fksmb_encrypt_pkcs.o \ fksmb_fem.o \ fksmb_idmap.o \ fksmb_init.o \ fksmb_kdoor.o \ fksmb_sign_pkcs.o \
*** 52,61 **** --- 53,63 ---- OBJS_FS_SMBSRV = \ smb_acl.o \ smb_alloc.o \ smb_authenticate.o \ smb_close.o \ + smb_cmn_oplock.o \ smb_cmn_rename.o \ smb_cmn_setfile.o \ smb_common_open.o \ smb_common_transact.o \ smb_create.o \
*** 106,136 **** smb_server.o \ smb_session.o \ smb_session_setup_andx.o \ smb_set_fileinfo.o \ smb_signing.o \ smb_thread.o \ smb_tree.o \ smb_trans2_create_directory.o \ smb_trans2_dfs.o \ smb_trans2_find.o \ smb_tree_connect.o \ smb_unlock_byte_range.o \ smb_user.o \ - smb_vfs.o \ smb_vops.o \ smb_vss.o \ smb_write.o \ \ smb2_dispatch.o \ smb2_cancel.o \ smb2_change_notify.o \ smb2_close.o \ smb2_create.o \ smb2_echo.o \ smb2_flush.o \ smb2_ioctl.o \ smb2_lock.o \ smb2_logoff.o \ smb2_negotiate.o \ smb2_ofile.o \ smb2_oplock.o \ --- 108,145 ---- smb_server.o \ smb_session.o \ smb_session_setup_andx.o \ smb_set_fileinfo.o \ smb_signing.o \ + smb_srv_oplock.o \ smb_thread.o \ smb_tree.o \ smb_trans2_create_directory.o \ smb_trans2_dfs.o \ smb_trans2_find.o \ smb_tree_connect.o \ smb_unlock_byte_range.o \ smb_user.o \ smb_vops.o \ smb_vss.o \ smb_write.o \ \ + smb2_aapl.o \ smb2_dispatch.o \ + smb2_durable.o \ smb2_cancel.o \ smb2_change_notify.o \ smb2_close.o \ smb2_create.o \ smb2_echo.o \ smb2_flush.o \ + smb2_fsctl_copychunk.o \ + smb2_fsctl_fs.o \ + smb2_fsctl_odx.o \ + smb2_fsctl_sparse.o \ smb2_ioctl.o \ + smb2_lease.o \ smb2_lock.o \ smb2_logoff.o \ smb2_negotiate.o \ smb2_ofile.o \ smb2_oplock.o \
*** 148,163 **** smb2_setinfo_quota.o \ smb2_setinfo_sec.o \ smb2_signing.o \ smb2_tree_connect.o \ smb2_tree_disconn.o \ ! smb2_write.o # Can't just link with -lsmb because of user vs kernel API # i.e. can't call free with mem from kmem_alloc, which is # what happens if we just link with -lsmb OBJS_CMN_SMBSRV = \ smb_inet.o \ smb_match.o \ smb_msgbuf.o \ smb_native.o \ smb_netbios_util.o \ --- 157,175 ---- smb2_setinfo_quota.o \ smb2_setinfo_sec.o \ smb2_signing.o \ smb2_tree_connect.o \ smb2_tree_disconn.o \ ! smb2_write.o \ ! \ ! smb3_encrypt.o # Can't just link with -lsmb because of user vs kernel API # i.e. can't call free with mem from kmem_alloc, which is # what happens if we just link with -lsmb OBJS_CMN_SMBSRV = \ + smb_cfg_util.o \ smb_inet.o \ smb_match.o \ smb_msgbuf.o \ smb_native.o \ smb_netbios_util.o \
*** 174,183 **** --- 186,200 ---- pathname.o \ refstr.o \ smb_status2winerr.o \ xattr_common.o + # This one can't be in OBJECTS, as it has to depend on + # all of those for the COMPILE.d rule (which processes + # all those objects collecting probe instances). + DTRACE_OBJS = fksmb_dt.o + OBJECTS = \ $(OBJS_LOCAL) \ $(OBJS_FS_SMBSRV) \ $(OBJS_CMN_SMBSRV) \ $(OBJS_MISC)
*** 190,201 **** --- 207,220 ---- CCSOURCEDEBUGFLAGS = -g STRIP_STABS = : # Note: need our sys includes _before_ ENVCPPFLAGS, proto etc. + # Also, like Makefile.uts, reset CPPFLAGS CPPFLAGS.first += -I../../../libfakekernel/common CPPFLAGS.first += -I../common + CPPFLAGS = $(CPPFLAGS.first) INCS += -I$(SRC)/uts/common INCS += -I$(SRC)/common/smbsrv INCS += -I$(SRC)/common
*** 210,220 **** CPPFLAGS += $(INCS) -D_REENTRANT -D_FAKE_KERNEL CPPFLAGS += -D_FILE_OFFSET_BITS=64 # Always want DEBUG here CPPFLAGS += -DDEBUG - CERRWARN += -_gcc=-Wno-parentheses CERRWARN += -_gcc=-Wno-switch SRCS= $(OBJS_LOCAL:%.o=$(SRCDIR)/%.c) \ $(OBJS_FS_SMBSRV:%.o=$(SRC)/uts/common/fs/smbsrv/%.c) \ $(OBJS_CMN_SMBSRV:%.o=$(SRC)/common/smbsrv/%.c) --- 229,238 ----
*** 227,248 **** pics/acl_common.o: $(SRC)/common/acl/acl_common.c $(COMPILE.c) -o $@ $(SRC)/common/acl/acl_common.c $(POST_PROCESS_O) - pics/smb_status2winerr.o: $(SRC)/common/smbclnt/smb_status2winerr.c - $(COMPILE.c) -o $@ $(SRC)/common/smbclnt/smb_status2winerr.c - $(POST_PROCESS_O) - pics/pathname.o: $(SRC)/uts/common/fs/pathname.c $(COMPILE.c) -o $@ $(SRC)/uts/common/fs/pathname.c $(POST_PROCESS_O) pics/refstr.o: $(SRC)/uts/common/os/refstr.c $(COMPILE.c) -o $@ $(SRC)/uts/common/os/refstr.c $(POST_PROCESS_O) pics/xattr_common.o: $(SRC)/common/xattr/xattr_common.c $(COMPILE.c) -o $@ $(SRC)/common/xattr/xattr_common.c $(POST_PROCESS_O) # Makefile.targ has rule for $(SRC)/common/smbsrv/%.c --- 245,266 ---- pics/acl_common.o: $(SRC)/common/acl/acl_common.c $(COMPILE.c) -o $@ $(SRC)/common/acl/acl_common.c $(POST_PROCESS_O) pics/pathname.o: $(SRC)/uts/common/fs/pathname.c $(COMPILE.c) -o $@ $(SRC)/uts/common/fs/pathname.c $(POST_PROCESS_O) pics/refstr.o: $(SRC)/uts/common/os/refstr.c $(COMPILE.c) -o $@ $(SRC)/uts/common/os/refstr.c $(POST_PROCESS_O) + pics/smb_status2winerr.o: $(SRC)/common/smbclnt/smb_status2winerr.c + $(COMPILE.c) -o $@ $(SRC)/common/smbclnt/smb_status2winerr.c + $(POST_PROCESS_O) + pics/xattr_common.o: $(SRC)/common/xattr/xattr_common.c $(COMPILE.c) -o $@ $(SRC)/common/xattr/xattr_common.c $(POST_PROCESS_O) # Makefile.targ has rule for $(SRC)/common/smbsrv/%.c
*** 249,253 **** --- 267,280 ---- .KEEP_STATE: include ../../Makefile.targ include ../../../Makefile.targ + + EXTPICS= $(DTRACE_OBJS:%=pics/%) + CLEANFILES += $(EXTPICS) + + $(OBJS) $(PICS) : ../common/fksmb_dt.h + + pics/fksmb_dt.o: ../common/fksmb_dt.d $(PICS) + $(COMPILE.d) -C -s ../common/fksmb_dt.d -o $@ $(PICS) + $(POST_PROCESS_O)