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>
| Split |
Close |
| Expand all |
| Collapse all |
--- old/usr/src/lib/smbsrv/libfksmbsrv/Makefile.com
+++ new/usr/src/lib/smbsrv/libfksmbsrv/Makefile.com
1 1 #
2 2 # CDDL HEADER START
3 3 #
4 4 # The contents of this file are subject to the terms of the
5 5 # Common Development and Distribution License (the "License").
6 6 # You may not use this file except in compliance with the License.
7 7 #
8 8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 9 # or http://www.opensolaris.org/os/licensing.
10 10 # See the License for the specific language governing permissions
11 11 # and limitations under the License.
12 12 #
13 13 # When distributing Covered Code, include this CDDL HEADER in each
14 14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
|
↓ open down ↓ |
14 lines elided |
↑ open up ↑ |
15 15 # If applicable, add the following below this CDDL HEADER, with the
16 16 # fields enclosed by brackets "[]" replaced with your own identifying
17 17 # information: Portions Copyright [yyyy] [name of copyright owner]
18 18 #
19 19 # CDDL HEADER END
20 20 #
21 21 #
22 22 # Copyright 2008 Sun Microsystems, Inc. All rights reserved.
23 23 # Use is subject to license terms.
24 24 #
25 -# Copyright 2014 Nexenta Systems, Inc. All rights reserved.
25 +# Copyright 2018 Nexenta Systems, Inc. All rights reserved.
26 26 #
27 27
28 28 LIBRARY = libfksmbsrv.a
29 29 VERS = .1
30 30
31 31 OBJS_LOCAL = \
32 + fksmb_audit.o \
32 33 fksmb_cred.o \
33 - fksmb_dt.o \
34 + fksmb_encrypt_pkcs.o \
34 35 fksmb_fem.o \
35 36 fksmb_idmap.o \
36 37 fksmb_init.o \
37 38 fksmb_kdoor.o \
38 39 fksmb_sign_pkcs.o \
39 40 fake_lookup.o \
40 41 fake_nblk.o \
41 42 fake_vfs.o \
42 43 fake_vnode.o \
43 44 fake_vop.o \
44 45 fake_xattr.o \
45 46 reparse.o \
46 47 vncache.o
|
↓ open down ↓ |
3 lines elided |
↑ open up ↑ |
47 48
48 49 # See also: $SRC/uts/common/Makefile.files
49 50 # NB: Intentionally ommitted, compared w/ the above:
50 51 # smb_cred, smb_fem, smb_idmap, smb_init, smb_kdoor
51 52 #
52 53 OBJS_FS_SMBSRV = \
53 54 smb_acl.o \
54 55 smb_alloc.o \
55 56 smb_authenticate.o \
56 57 smb_close.o \
58 + smb_cmn_oplock.o \
57 59 smb_cmn_rename.o \
58 60 smb_cmn_setfile.o \
59 61 smb_common_open.o \
60 62 smb_common_transact.o \
61 63 smb_create.o \
62 64 smb_delete.o \
63 65 smb_dfs.o \
64 66 smb_directory.o \
65 67 smb_dispatch.o \
66 68 smb_echo.o \
67 69 smb_errno.o \
68 70 smb_find.o \
69 71 smb_flush.o \
70 72 smb_fsinfo.o \
71 73 smb_fsops.o \
72 74 smb_kshare.o \
73 75 smb_kutil.o \
74 76 smb_lock.o \
75 77 smb_lock_byte_range.o \
76 78 smb_locking_andx.o \
77 79 smb_logoff_andx.o \
78 80 smb_mangle_name.o \
79 81 smb_mbuf_marshaling.o \
80 82 smb_mbuf_util.o \
81 83 smb_negotiate.o \
82 84 smb_net.o \
83 85 smb_node.o \
84 86 smb_notify.o \
85 87 smb_nt_cancel.o \
86 88 smb_nt_create_andx.o \
87 89 smb_nt_transact_create.o \
88 90 smb_nt_transact_ioctl.o \
89 91 smb_nt_transact_notify_change.o \
90 92 smb_nt_transact_quota.o \
91 93 smb_nt_transact_security.o \
92 94 smb_odir.o \
93 95 smb_ofile.o \
94 96 smb_open_andx.o \
95 97 smb_opipe.o \
96 98 smb_oplock.o \
97 99 smb_pathname.o \
98 100 smb_print.o \
99 101 smb_process_exit.o \
100 102 smb_query_fileinfo.o \
|
↓ open down ↓ |
34 lines elided |
↑ open up ↑ |
101 103 smb_quota.o \
102 104 smb_read.o \
103 105 smb_rename.o \
104 106 smb_sd.o \
105 107 smb_seek.o \
106 108 smb_server.o \
107 109 smb_session.o \
108 110 smb_session_setup_andx.o \
109 111 smb_set_fileinfo.o \
110 112 smb_signing.o \
113 + smb_srv_oplock.o \
111 114 smb_thread.o \
112 115 smb_tree.o \
113 116 smb_trans2_create_directory.o \
114 117 smb_trans2_dfs.o \
115 118 smb_trans2_find.o \
116 119 smb_tree_connect.o \
117 120 smb_unlock_byte_range.o \
118 121 smb_user.o \
119 - smb_vfs.o \
120 122 smb_vops.o \
121 123 smb_vss.o \
122 124 smb_write.o \
123 125 \
126 + smb2_aapl.o \
124 127 smb2_dispatch.o \
128 + smb2_durable.o \
125 129 smb2_cancel.o \
126 130 smb2_change_notify.o \
127 131 smb2_close.o \
128 132 smb2_create.o \
129 133 smb2_echo.o \
130 134 smb2_flush.o \
135 + smb2_fsctl_copychunk.o \
136 + smb2_fsctl_fs.o \
137 + smb2_fsctl_odx.o \
138 + smb2_fsctl_sparse.o \
131 139 smb2_ioctl.o \
140 + smb2_lease.o \
132 141 smb2_lock.o \
133 142 smb2_logoff.o \
134 143 smb2_negotiate.o \
135 144 smb2_ofile.o \
136 145 smb2_oplock.o \
137 146 smb2_qinfo_file.o \
138 147 smb2_qinfo_fs.o \
139 148 smb2_qinfo_sec.o \
140 149 smb2_qinfo_quota.o \
141 150 smb2_query_dir.o \
142 151 smb2_query_info.o \
|
↓ open down ↓ |
1 lines elided |
↑ open up ↑ |
143 152 smb2_read.o \
144 153 smb2_session_setup.o \
145 154 smb2_set_info.o \
146 155 smb2_setinfo_file.o \
147 156 smb2_setinfo_fs.o \
148 157 smb2_setinfo_quota.o \
149 158 smb2_setinfo_sec.o \
150 159 smb2_signing.o \
151 160 smb2_tree_connect.o \
152 161 smb2_tree_disconn.o \
153 - smb2_write.o
162 + smb2_write.o \
163 + \
164 + smb3_encrypt.o
154 165
155 166 # Can't just link with -lsmb because of user vs kernel API
156 167 # i.e. can't call free with mem from kmem_alloc, which is
157 168 # what happens if we just link with -lsmb
158 169 OBJS_CMN_SMBSRV = \
170 + smb_cfg_util.o \
159 171 smb_inet.o \
160 172 smb_match.o \
161 173 smb_msgbuf.o \
162 174 smb_native.o \
163 175 smb_netbios_util.o \
164 176 smb_oem.o \
165 177 smb_sid.o \
166 178 smb_string.o \
167 179 smb_token.o \
168 180 smb_token_xdr.o \
169 181 smb_utf8.o \
170 182 smb_xdr.o
171 183
172 184 OBJS_MISC = \
173 185 acl_common.o \
174 186 pathname.o \
175 187 refstr.o \
176 188 smb_status2winerr.o \
177 189 xattr_common.o
178 190
191 +# This one can't be in OBJECTS, as it has to depend on
192 +# all of those for the COMPILE.d rule (which processes
193 +# all those objects collecting probe instances).
194 +DTRACE_OBJS = fksmb_dt.o
195 +
179 196 OBJECTS = \
180 197 $(OBJS_LOCAL) \
181 198 $(OBJS_FS_SMBSRV) \
182 199 $(OBJS_CMN_SMBSRV) \
183 200 $(OBJS_MISC)
184 201
185 202 include ../../../Makefile.lib
186 203 include ../../Makefile.lib
187 204
188 205 # Force SOURCEDEBUG
189 206 CSOURCEDEBUGFLAGS = -g
190 207 CCSOURCEDEBUGFLAGS = -g
191 208 STRIP_STABS = :
192 209
193 210
194 211 # Note: need our sys includes _before_ ENVCPPFLAGS, proto etc.
212 +# Also, like Makefile.uts, reset CPPFLAGS
195 213 CPPFLAGS.first += -I../../../libfakekernel/common
196 214 CPPFLAGS.first += -I../common
215 +CPPFLAGS = $(CPPFLAGS.first)
197 216
198 217 INCS += -I$(SRC)/uts/common
199 218 INCS += -I$(SRC)/common/smbsrv
200 219 INCS += -I$(SRC)/common
201 220
202 221 LINTCHECKFLAGS += -erroff=E_INCONS_ARG_DECL2
203 222 LINTCHECKFLAGS += -erroff=E_INCONS_VAL_TYPE_DECL2
204 223 LINTCHECKFLAGS += -erroff=E_INCONS_VAL_TYPE_USED2
205 224
206 225 LDLIBS += $(MACH_LDLIBS)
207 226 LDLIBS += -lfakekernel -lidmap -lcmdutils
208 227 LDLIBS += -lavl -lnvpair -lnsl -lpkcs11 -lreparse -lc
209 228
210 229 CPPFLAGS += $(INCS) -D_REENTRANT -D_FAKE_KERNEL
211 230 CPPFLAGS += -D_FILE_OFFSET_BITS=64
212 231 # Always want DEBUG here
213 232 CPPFLAGS += -DDEBUG
214 233
215 -CERRWARN += -_gcc=-Wno-parentheses
216 234 CERRWARN += -_gcc=-Wno-switch
217 235
218 236 SRCS= $(OBJS_LOCAL:%.o=$(SRCDIR)/%.c) \
219 237 $(OBJS_FS_SMBSRV:%.o=$(SRC)/uts/common/fs/smbsrv/%.c) \
220 238 $(OBJS_CMN_SMBSRV:%.o=$(SRC)/common/smbsrv/%.c)
221 239
222 240 all:
223 241
224 242 pics/%.o: $(SRC)/uts/common/fs/smbsrv/%.c
225 243 $(COMPILE.c) -o $@ $<
226 244 $(POST_PROCESS_O)
227 245
228 246 pics/acl_common.o: $(SRC)/common/acl/acl_common.c
229 247 $(COMPILE.c) -o $@ $(SRC)/common/acl/acl_common.c
230 248 $(POST_PROCESS_O)
231 249
232 -pics/smb_status2winerr.o: $(SRC)/common/smbclnt/smb_status2winerr.c
233 - $(COMPILE.c) -o $@ $(SRC)/common/smbclnt/smb_status2winerr.c
234 - $(POST_PROCESS_O)
235 -
236 250 pics/pathname.o: $(SRC)/uts/common/fs/pathname.c
237 251 $(COMPILE.c) -o $@ $(SRC)/uts/common/fs/pathname.c
238 252 $(POST_PROCESS_O)
239 253
240 254 pics/refstr.o: $(SRC)/uts/common/os/refstr.c
241 255 $(COMPILE.c) -o $@ $(SRC)/uts/common/os/refstr.c
242 256 $(POST_PROCESS_O)
243 257
258 +pics/smb_status2winerr.o: $(SRC)/common/smbclnt/smb_status2winerr.c
259 + $(COMPILE.c) -o $@ $(SRC)/common/smbclnt/smb_status2winerr.c
260 + $(POST_PROCESS_O)
261 +
244 262 pics/xattr_common.o: $(SRC)/common/xattr/xattr_common.c
245 263 $(COMPILE.c) -o $@ $(SRC)/common/xattr/xattr_common.c
246 264 $(POST_PROCESS_O)
247 265
248 266 # Makefile.targ has rule for $(SRC)/common/smbsrv/%.c
249 267
250 268 .KEEP_STATE:
251 269
252 270 include ../../Makefile.targ
253 271 include ../../../Makefile.targ
272 +
273 +EXTPICS= $(DTRACE_OBJS:%=pics/%)
274 +CLEANFILES += $(EXTPICS)
275 +
276 +$(OBJS) $(PICS) : ../common/fksmb_dt.h
277 +
278 +pics/fksmb_dt.o: ../common/fksmb_dt.d $(PICS)
279 + $(COMPILE.d) -C -s ../common/fksmb_dt.d -o $@ $(PICS)
280 + $(POST_PROCESS_O)
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX