Print this page
NEX-15069 smtorture smb2.create.blob is failed
Reviewed by: Matt Barden <matt.barden@nexenta.com>
Reviewed by: Evan Layton <evan.layton@nexenta.com>
NEX-15069 smtorture smb2.create.blob is failed
Reviewed by: Matt Barden <matt.barden@nexenta.com>
Reviewed by: Evan Layton <evan.layton@nexenta.com>
NEX-1643 dtrace provider for smbsrv
Reviewed by: Evan Layton <evan.layton@nexenta.com>
Reviewed by: Matt Barden <matt.barden@nexenta.com>
SMB-65 SMB server in non-global zones (use zone_kcred())
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...
@@ -20,11 +20,11 @@
*/
/*
* Copyright 2010 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*
- * Copyright 2013 Nexenta Systems, Inc. All rights reserved.
+ * Copyright 2017 Nexenta Systems, Inc. All rights reserved.
*/
#include <smbsrv/smb_kproto.h>
#include <smbsrv/smbinfo.h>
#include <smbsrv/smb_fsops.h>
@@ -57,20 +57,19 @@
int rc;
rc = smbsr_decode_data(sr, "%S", sr,
&sr->arg.dirop.fqi.fq_path.pn_path);
- DTRACE_SMB_2(op__CreateDirectory__start, smb_request_t *, sr,
- struct dirop *, &sr->arg.dirop);
+ DTRACE_SMB_START(op__CreateDirectory, smb_request_t *, sr);
return ((rc == 0) ? SDRC_SUCCESS : SDRC_ERROR);
}
void
smb_post_create_directory(smb_request_t *sr)
{
- DTRACE_SMB_1(op__CreateDirectory__done, smb_request_t *, sr);
+ DTRACE_SMB_DONE(op__CreateDirectory, smb_request_t *, sr);
}
smb_sdrc_t
smb_com_create_directory(smb_request_t *sr)
{
@@ -204,20 +203,19 @@
int rc;
rc = smbsr_decode_data(sr, "%S", sr,
&sr->arg.dirop.fqi.fq_path.pn_path);
- DTRACE_SMB_2(op__DeleteDirectory__start, smb_request_t *, sr,
- struct dirop *, &sr->arg.dirop);
+ DTRACE_SMB_START(op__DeleteDirectory, smb_request_t *, sr);
return ((rc == 0) ? SDRC_SUCCESS : SDRC_ERROR);
}
void
smb_post_delete_directory(smb_request_t *sr)
{
- DTRACE_SMB_1(op__DeleteDirectory__done, smb_request_t *, sr);
+ DTRACE_SMB_DONE(op__DeleteDirectory, smb_request_t *, sr);
}
smb_sdrc_t
smb_com_delete_directory(smb_request_t *sr)
{
@@ -250,14 +248,10 @@
}
rc = smb_fsop_lookup(sr, sr->user_cr, SMB_FOLLOW_LINKS,
tnode, fqi->fq_dnode, fqi->fq_last_comp, &fqi->fq_fnode);
if (rc != 0) {
- if (rc == ENOENT)
- smbsr_error(sr, NT_STATUS_OBJECT_NAME_NOT_FOUND,
- ERRDOS, ERROR_FILE_NOT_FOUND);
- else
smbsr_errno(sr, rc);
smb_node_release(fqi->fq_dnode);
return (SDRC_ERROR);
}
@@ -359,20 +353,19 @@
int rc;
rc = smbsr_decode_data(sr, "%S", sr,
&sr->arg.dirop.fqi.fq_path.pn_path);
- DTRACE_SMB_2(op__CheckDirectory__start, smb_request_t *, sr,
- struct dirop *, &sr->arg.dirop);
+ DTRACE_SMB_START(op__CheckDirectory, smb_request_t *, sr);
return ((rc == 0) ? SDRC_SUCCESS : SDRC_ERROR);
}
void
smb_post_check_directory(smb_request_t *sr)
{
- DTRACE_SMB_1(op__CheckDirectory__done, smb_request_t *, sr);
+ DTRACE_SMB_DONE(op__CheckDirectory, smb_request_t *, sr);
}
smb_sdrc_t
smb_com_check_directory(smb_request_t *sr)
{
@@ -415,14 +408,10 @@
rc = smb_fsop_lookup(sr, sr->user_cr, SMB_FOLLOW_LINKS,
tnode, fqi->fq_dnode, fqi->fq_last_comp, &fqi->fq_fnode);
smb_node_release(fqi->fq_dnode);
if (rc != 0) {
- if (rc == ENOENT)
- smbsr_error(sr, NT_STATUS_OBJECT_NAME_NOT_FOUND,
- ERRDOS, ERROR_PATH_NOT_FOUND);
- else
smbsr_errno(sr, rc);
return (SDRC_ERROR);
}
node = fqi->fq_fnode;