/illumos-gate/usr/src/uts/common/fs/smbsrv/ |
H A D | smb_process_exit.c | 57 smb_pre_process_exit(smb_request_t *sr) argument 59 DTRACE_SMB_1(op__ProcessExit__start, smb_request_t *, sr); 64 smb_post_process_exit(smb_request_t *sr) argument 66 DTRACE_SMB_1(op__ProcessExit__done, smb_request_t *, sr); 70 smb_com_process_exit(smb_request_t *sr) argument 74 sr->uid_user = smb_session_lookup_uid(sr->session, sr->smb_uid); 75 if (sr->uid_user == NULL) { 76 rc = smbsr_encode_empty_result(sr); [all...] |
H A D | smb_logoff_andx.c | 64 smb_pre_logoff_andx(smb_request_t *sr) argument 66 DTRACE_SMB_1(op__LogoffX__start, smb_request_t *, sr); 71 smb_post_logoff_andx(smb_request_t *sr) argument 73 DTRACE_SMB_1(op__LogoffX__done, smb_request_t *, sr); 77 smb_com_logoff_andx(smb_request_t *sr) argument 79 if (sr->uid_user == NULL) { 80 smbsr_error(sr, 0, ERRSRV, ERRbaduid); 84 smb_user_logoff(sr->uid_user); 86 if (smbsr_encode_result(sr, 2, 0, "bb.ww", 2, sr [all...] |
H A D | smb_close.c | 42 smb_pre_close(smb_request_t *sr) argument 46 rc = smbsr_decode_vwv(sr, "wl", &sr->smb_fid, &sr->arg.timestamp); 48 DTRACE_SMB_1(op__Close__start, smb_request_t *, sr); 53 smb_post_close(smb_request_t *sr) argument 55 DTRACE_SMB_1(op__Close__done, smb_request_t *, sr); 59 smb_com_close(smb_request_t *sr) argument 63 smbsr_lookup_file(sr); 64 if (sr 83 smb_pre_close_and_tree_disconnect(smb_request_t *sr) argument 94 smb_post_close_and_tree_disconnect(smb_request_t *sr) argument 100 smb_com_close_and_tree_disconnect(smb_request_t *sr) argument [all...] |
H A D | smb_seek.c | 81 smb_pre_seek(smb_request_t *sr) argument 83 DTRACE_SMB_1(op__Seek__start, smb_request_t *, sr); 88 smb_post_seek(smb_request_t *sr) argument 90 DTRACE_SMB_1(op__Seek__done, smb_request_t *, sr); 94 smb_com_seek(smb_request_t *sr) argument 101 if (smbsr_decode_vwv(sr, "wwl", &sr->smb_fid, &mode, &off) != 0) 104 smbsr_lookup_file(sr); 105 if (sr->fid_ofile == NULL) { 106 smbsr_error(sr, NT_STATUS_INVALID_HANDL [all...] |
H A D | smb_echo.c | 40 smb_pre_echo(smb_request_t *sr) argument 42 DTRACE_SMB_1(op__Echo__start, smb_request_t *, sr); 47 smb_post_echo(smb_request_t *sr) argument 49 DTRACE_SMB_1(op__Echo__done, smb_request_t *, sr); 55 smb_com_echo(struct smb_request *sr) argument 64 pid_hi = sr->smb_pid >> 16; 65 pid_lo = (uint16_t)sr->smb_pid; 67 if (smbsr_decode_vwv(sr, "w", &necho) != 0) 77 nbytes = sr->smb_bcc; 78 data = smb_srm_zalloc(sr, nbyte [all...] |
H A D | smb_tree_connect.c | 30 smb_tcon_puterror(smb_request_t *sr, uint32_t status) argument 37 smbsr_error(sr, 0, ERRSRV, ERRinvnetname); 41 smbsr_error(sr, status, ERRSRV, ERRaccess); 45 smbsr_error(sr, status, ERRDOS, ERROR_BAD_DEV_TYPE); 51 smbsr_error(sr, 0, ERRSRV, ERRsrverror); 89 smb_pre_tree_connect(smb_request_t *sr) argument 91 smb_arg_tcon_t *tcon = &sr->sr_tcon; 97 rc = smbsr_decode_data(sr, "%AAA", sr, &tcon->path, 103 DTRACE_SMB_2(op__TreeConnect__start, smb_request_t *, sr, 110 smb_post_tree_connect(smb_request_t *sr) argument 116 smb_com_tree_connect(smb_request_t *sr) argument 272 smb_pre_tree_connect_andx(smb_request_t *sr) argument 301 smb_post_tree_connect_andx(smb_request_t *sr) argument 307 smb_com_tree_connect_andx(smb_request_t *sr) argument 390 smb_pre_tree_disconnect(smb_request_t *sr) argument 400 smb_post_tree_disconnect(smb_request_t *sr) argument 417 smb_com_tree_disconnect(smb_request_t *sr) argument [all...] |
H A D | smb_unlock_byte_range.c | 57 smb_pre_unlock_byte_range(smb_request_t *sr) argument 59 DTRACE_SMB_1(op__UnlockByteRange__start, smb_request_t *, sr); 64 smb_post_unlock_byte_range(smb_request_t *sr) argument 66 DTRACE_SMB_1(op__UnlockByteRange__done, smb_request_t *, sr); 70 smb_com_unlock_byte_range(smb_request_t *sr) argument 76 if (smbsr_decode_vwv(sr, "wll", &sr->smb_fid, &Length, &Offset) != 0) 79 smbsr_lookup_file(sr); 80 if (sr->fid_ofile == NULL) { 81 smbsr_error(sr, NT_STATUS_INVALID_HANDL [all...] |
H A D | smb_rename.c | 62 smb_pre_rename(smb_request_t *sr) argument 64 smb_fqi_t *src_fqi = &sr->arg.dirop.fqi; 65 smb_fqi_t *dst_fqi = &sr->arg.dirop.dst_fqi; 68 if ((rc = smbsr_decode_vwv(sr, "w", &src_fqi->fq_sattr)) == 0) { 69 rc = smbsr_decode_data(sr, "%SS", sr, &src_fqi->fq_path.pn_path, 75 DTRACE_SMB_2(op__Rename__start, smb_request_t *, sr, 76 struct dirop *, &sr->arg.dirop); 82 smb_post_rename(smb_request_t *sr) argument 84 DTRACE_SMB_1(op__Rename__done, smb_request_t *, sr); 88 smb_com_rename(smb_request_t *sr) argument 133 smb_pre_nt_rename(smb_request_t *sr) argument 156 smb_post_nt_rename(smb_request_t *sr) argument 162 smb_com_nt_rename(smb_request_t *sr) argument 221 smb_nt_transact_rename(smb_request_t *sr, smb_xa_t *xa) argument [all...] |
H A D | smb_lock_byte_range.c | 63 smb_pre_lock_byte_range(smb_request_t *sr) argument 65 DTRACE_SMB_1(op__LockByteRange__start, smb_request_t *, sr); 70 smb_post_lock_byte_range(smb_request_t *sr) argument 72 DTRACE_SMB_1(op__LockByteRange__done, smb_request_t *, sr); 76 smb_com_lock_byte_range(struct smb_request *sr) argument 83 if (smbsr_decode_vwv(sr, "wll", &sr->smb_fid, &count, &off) != 0) 86 smbsr_lookup_file(sr); 87 if (sr->fid_ofile == NULL) { 88 smbsr_error(sr, NT_STATUS_INVALID_HANDL [all...] |
H A D | smb2_tree_disconn.c | 23 smb2_tree_disconn(smb_request_t *sr) argument 33 &sr->smb_data, "ww", 41 if (sr->uid_user == NULL || sr->tid_tree == NULL) 44 smb_session_cancel_requests(sr->session, sr->tid_tree, sr); 45 smb_tree_disconnect(sr->tid_tree, B_TRUE); 51 &sr->reply, "wwl",
|
H A D | smb_create.c | 36 smb_pre_create(smb_request_t *sr) argument 38 struct open_param *op = &sr->arg.open; 41 bzero(op, sizeof (sr->arg.open)); 43 rc = smbsr_decode_vwv(sr, "wl", &op->dattr, &op->mtime.tv_sec); 45 rc = smbsr_decode_data(sr, "%S", sr, &op->fqi.fq_path.pn_path); 50 DTRACE_SMB_2(op__Create__start, smb_request_t *, sr, 57 smb_post_create(smb_request_t *sr) argument 59 DTRACE_SMB_1(op__Create__done, smb_request_t *, sr); 63 smb_com_create(smb_request_t *sr) argument 79 smb_pre_create_new(smb_request_t *sr) argument 99 smb_post_create_new(smb_request_t *sr) argument 105 smb_com_create_new(smb_request_t *sr) argument 121 smb_pre_create_temporary(smb_request_t *sr) argument 142 smb_post_create_temporary(smb_request_t *sr) argument 148 smb_com_create_temporary(smb_request_t *sr) argument 180 smb_common_create(smb_request_t *sr) argument [all...] |
H A D | smb_directory.c | 55 smb_pre_create_directory(smb_request_t *sr) argument 59 rc = smbsr_decode_data(sr, "%S", sr, 60 &sr->arg.dirop.fqi.fq_path.pn_path); 62 DTRACE_SMB_2(op__CreateDirectory__start, smb_request_t *, sr, 63 struct dirop *, &sr->arg.dirop); 69 smb_post_create_directory(smb_request_t *sr) argument 71 DTRACE_SMB_1(op__CreateDirectory__done, smb_request_t *, sr); 75 smb_com_create_directory(smb_request_t *sr) argument 78 smb_pathname_t *pn = &sr 111 smb_common_create_directory(smb_request_t *sr) argument 202 smb_pre_delete_directory(smb_request_t *sr) argument 216 smb_post_delete_directory(smb_request_t *sr) argument 222 smb_com_delete_directory(smb_request_t *sr) argument 357 smb_pre_check_directory(smb_request_t *sr) argument 371 smb_post_check_directory(smb_request_t *sr) argument 377 smb_com_check_directory(smb_request_t *sr) argument [all...] |
H A D | smb_print.c | 56 smb_pre_open_print_file(smb_request_t *sr) argument 58 struct open_param *op = &sr->arg.open; 67 bzero(op, sizeof (sr->arg.open)); 68 rc = smbsr_decode_vwv(sr, "ww", &setup, &mode); 70 rc = smbsr_decode_data(sr, "%S", sr, &identifier); 73 path = smb_srm_zalloc(sr, MAXPATHLEN); 81 DTRACE_SMB_2(op__OpenPrintFile__start, smb_request_t *, sr, 88 smb_post_open_print_file(smb_request_t *sr) argument 90 DTRACE_SMB_1(op__OpenPrintFile__done, smb_request_t *, sr); 105 smb_com_open_print_file(smb_request_t *sr) argument 155 smb_pre_close_print_file(smb_request_t *sr) argument 166 smb_post_close_print_file(smb_request_t *sr) argument 183 smb_com_close_print_file(smb_request_t *sr) argument 210 smb_pre_get_print_queue(smb_request_t *sr) argument 217 smb_post_get_print_queue(smb_request_t *sr) argument 223 smb_com_get_print_queue(smb_request_t *sr) argument 247 smb_pre_write_print_file(smb_request_t *sr) argument 263 smb_post_write_print_file(smb_request_t *sr) argument 271 smb_com_write_print_file(smb_request_t *sr) argument [all...] |
H A D | smb2_dispatch.c | 151 smb2_invalid_cmd(smb_request_t *sr) argument 155 sr->session->ip_addr_str); 157 sr->smb2_status = NT_STATUS_INVALID_PARAMETER; 176 smb2sr_newrq(smb_request_t *sr) argument 182 magic = LE_IN32(sr->sr_request_buf); 184 smb_request_free(sr); 197 command = LE_IN16((uint8_t *)sr->sr_request_buf + 12); 199 rc = smb2sr_newrq_cancel(sr); 200 smb_request_free(sr); 208 sr 220 smb_request_t *sr; local 265 smb2sr_work(struct smb_request *sr) argument 797 smb2sr_do_async(smb_request_t *sr) argument 944 smb2sr_go_async(smb_request_t *sr, smb_sdrc_t (*async_func)(smb_request_t *)) argument 990 smb2_decode_header(smb_request_t *sr) argument 1032 smb2_encode_header(smb_request_t *sr, boolean_t overwrite) argument 1082 smb2_send_reply(smb_request_t *sr) argument 1097 smbsr_status_smb2(smb_request_t *sr, DWORD status) argument 1113 smb2sr_put_errno(struct smb_request *sr, int errnum) argument 1120 smb2sr_put_error(smb_request_t *sr, uint32_t status) argument 1129 smb2sr_put_error_data(smb_request_t *sr, uint32_t status, mbuf_chain_t *mbc) argument 1172 smb2sr_lookup_fid(smb_request_t *sr, smb2fid_t *fid) argument [all...] |
H A D | smb_session_setup_andx.c | 36 smb_pre_session_setup_andx(smb_request_t *sr) argument 43 sinfo = smb_srm_zalloc(sr, sizeof (smb_arg_sessionsetup_t)); 44 sr->sr_ssetup = sinfo; 51 if (sr->smb_wct < 10) { 60 rc = smbsr_decode_vwv(sr, "b.www6.", 61 &sr->andx_com, &sr->andx_off, 66 if (sr->session->dialect < NT_LM_0_12) { 71 rc = smbsr_decode_vwv(sr, "w4.", 76 sinfo->ssi_lmpwd = smb_srm_zalloc(sr, sinf 198 smb_post_session_setup_andx(smb_request_t *sr) argument 222 smb_com_session_setup_andx(smb_request_t *sr) argument [all...] |
H A D | smb_nt_cancel.c | 48 smb_pre_nt_cancel(smb_request_t *sr) argument 50 DTRACE_SMB_1(op__NtCancel__start, smb_request_t *, sr); 55 smb_post_nt_cancel(smb_request_t *sr) argument 57 DTRACE_SMB_1(op__NtCancel__done, smb_request_t *, sr); 61 smb_com_nt_cancel(smb_request_t *sr) argument 66 session = sr->session; 72 if ((req != sr) && 73 (req->smb_uid == sr->smb_uid) && 74 (req->smb_pid == sr->smb_pid) && 75 (req->smb_tid == sr [all...] |
H A D | smb_flush.c | 57 smb_pre_flush(smb_request_t *sr) argument 61 rc = smbsr_decode_vwv(sr, "w", &sr->smb_fid); 63 DTRACE_SMB_1(op__Flush__start, smb_request_t *, sr); 69 smb_post_flush(smb_request_t *sr) argument 71 DTRACE_SMB_1(op__Flush__done, smb_request_t *, sr); 75 smb_com_flush(smb_request_t *sr) argument 82 rc = smbsr_encode_empty_result(sr); 86 if (sr->smb_fid != 0xffff) { 87 smbsr_lookup_file(sr); [all...] |
H A D | smb_nt_transact_ioctl.c | 44 * smb_oplock_break(sr, node, SMB_OPLOCK_BREAK_TO_NONE); 48 uint32_t (*ioctl_func)(smb_request_t *sr, smb_xa_t *xa); 89 smb_nt_transact_ioctl(smb_request_t *sr, smb_xa_t *xa) argument 98 &fcode, &sr->smb_fid, &is_fsctl, &is_flags) != 0) { 99 smbsr_error(sr, NT_STATUS_INVALID_PARAMETER, 0, 0); 110 status = ioctl_ret_tbl[i].ioctl_func(sr, xa); 116 smbsr_error(sr, status, 0, 0); 126 smb_nt_trans_ioctl_noop(smb_request_t *sr, smb_xa_t *xa) argument 133 smb_nt_trans_ioctl_invalid_parm(smb_request_t *sr, smb_xa_t *xa) argument 149 smb_nt_trans_ioctl_set_sparse(smb_request_t *sr, smb_xa_ argument 229 smb_nt_trans_ioctl_set_zero_data(smb_request_t *sr, smb_xa_t *xa) argument 266 smb_nt_trans_ioctl_query_alloc_ranges(smb_request_t *sr, smb_xa_t *xa) argument 330 smb_nt_trans_ioctl_enum_snaps(smb_request_t *sr, smb_xa_t *xa) argument [all...] |
H A D | smb2_flush.c | 25 smb2_flush(smb_request_t *sr) argument 38 &sr->smb_data, "wwlqq", 49 status = smb2sr_lookup_fid(sr, &smb2fid); 51 smb2sr_put_error(sr, status); 55 smb_ofile_flush(sr, sr->fid_ofile); 61 &sr->reply, "wwl",
|
H A D | smb_trans2_create_directory.c | 61 smb_com_trans2_create_directory(struct smb_request *sr, struct smb_xa *xa) argument 64 smb_pathname_t *pn = &sr->arg.dirop.fqi.fq_path; 66 if (!STYPE_ISDSK(sr->tid_tree->t_res_type)) { 67 smbsr_error(sr, NT_STATUS_ACCESS_DENIED, 72 if (smb_mbc_decodef(&xa->req_param_mb, "%4.u", sr, &pn->pn_path) != 0) 75 smb_pathname_init(sr, pn, pn->pn_path); 76 if (!smb_pathname_validate(sr, pn) || 77 !smb_validate_dirname(sr, pn)) { 81 if ((rc = smb_common_create_directory(sr)) != 0) { 82 smbsr_errno(sr, r [all...] |
H A D | smb_notify.c | 98 smb_notify_common(smb_request_t *sr, mbuf_chain_t *mbc, argument 105 if (sr->fid_ofile == NULL) 108 node = sr->fid_ofile->f_node; 119 nc = &sr->sr_ncr; 128 smb_node_fcn_subscribe(node, sr); 137 mutex_enter(&sr->sr_mutex); 138 if (sr->sr_state == SMB_REQ_STATE_ACTIVE) 139 sr->sr_state = SMB_REQ_STATE_WAITING_EVENT; 140 while (sr->sr_state == SMB_REQ_STATE_WAITING_EVENT) { 141 cv_wait(&nc->nc_cv, &sr 219 smb_notify_encode_action(struct smb_request *sr, mbuf_chain_t *mbc, uint32_t action, char *fname) argument 250 smb_request_t *sr; local 310 smb_request_t *sr; local 393 smb_notify_sr(smb_request_t *sr, uint_t action, const char *name) argument [all...] |
H A D | smb2_logoff.c | 23 smb2_logoff(smb_request_t *sr) argument 33 &sr->smb_data, "ww", 41 if (sr->uid_user == NULL) 43 smb_user_logoff(sr->uid_user); 49 &sr->reply, "wwl",
|
H A D | smb2_cancel.c | 32 smb2sr_newrq_cancel(smb_request_t *sr) argument 39 if ((rc = smb2_decode_header(sr)) != 0) 42 if (sr->smb2_hdr_flags & SMB2_FLAGS_ASYNC_COMMAND) 43 smb2sr_cancel_async(sr); 45 smb2sr_cancel_sync(sr); 51 smb2sr_cancel_sync(smb_request_t *sr) argument 54 struct smb_session *session = sr->session; 61 if ((req != sr) && 62 (req->smb2_messageid == sr->smb2_messageid)) { 70 uint64_t, sr 76 smb2sr_cancel_async(smb_request_t *sr) argument [all...] |
H A D | smb2_query_info.c | 25 smb2_query_info(smb_request_t *sr) argument 44 &sr->smb_data, "wbblw..lllqq", 61 status = smb2sr_lookup_fid(sr, &smb2fid); 63 smb2sr_put_error(sr, status); 74 rc = MBC_SHADOW_CHAIN(&qi->in_data, &sr->smb_data, 75 sr->smb2_cmd_hdr + iBufOffset, iBufLength); 77 smb2sr_put_error(sr, NT_STATUS_INVALID_PARAMETER); 82 sr->raw_data.max_bytes = oBufLength; 86 status = smb2_qinfo_file(sr, qi); 89 status = smb2_qinfo_fs(sr, q [all...] |
H A D | smb_negotiate.c | 285 smb1_newrq_negotiate(smb_request_t *sr) argument 293 if (smb_mbc_decodef(&sr->command, SMB_HEADER_ED_FMT, 294 &sr->smb_com, 295 &sr->smb_rcls, 296 &sr->smb_reh, 297 &sr->smb_err, 298 &sr->smb_flg, 299 &sr->smb_flg2, 301 sr->smb_sig, 302 &sr 349 smb_pre_negotiate(smb_request_t *sr) argument 392 smb_post_negotiate(smb_request_t *sr) argument 403 smb_com_negotiate(smb_request_t *sr) argument [all...] |