Lines Matching defs:smb_version_operations
270 struct smb_version_operations { struct
271 int (*send_cancel)(struct TCP_Server_Info *, struct smb_rqst *,
273 bool (*compare_fids)(struct cifsFileInfo *, struct cifsFileInfo *);
275 struct mid_q_entry *(*setup_request)(struct cifs_ses *,
279 struct mid_q_entry *(*setup_async_request)(struct TCP_Server_Info *,
282 int (*check_receive)(struct mid_q_entry *, struct TCP_Server_Info *,
284 void (*add_credits)(struct TCP_Server_Info *server,
287 void (*set_credits)(struct TCP_Server_Info *, const int);
288 int * (*get_credits_field)(struct TCP_Server_Info *, const int);
289 unsigned int (*get_credits)(struct mid_q_entry *);
290 __u64 (*get_next_mid)(struct TCP_Server_Info *);
291 void (*revert_current_mid)(struct TCP_Server_Info *server,
294 unsigned int (*read_data_offset)(char *);
302 unsigned int (*read_data_length)(char *, bool in_remaining);
304 int (*map_error)(char *, bool);
306 struct mid_q_entry * (*find_mid)(struct TCP_Server_Info *, char *);
307 void (*dump_detail)(void *buf, struct TCP_Server_Info *ptcp_info);
308 void (*clear_stats)(struct cifs_tcon *);
309 void (*print_stats)(struct seq_file *m, struct cifs_tcon *);
310 void (*dump_share_caps)(struct seq_file *, struct cifs_tcon *);
312 int (*check_message)(char *, unsigned int, struct TCP_Server_Info *);
313 bool (*is_oplock_break)(char *, struct TCP_Server_Info *);
314 int (*handle_cancelled_mid)(struct mid_q_entry *, struct TCP_Server_Info *);
315 void (*downgrade_oplock)(struct TCP_Server_Info *server,
319 bool (*check_trans2)(struct mid_q_entry *, struct TCP_Server_Info *,
322 bool (*need_neg)(struct TCP_Server_Info *);
324 int (*negotiate)(const unsigned int xid,
328 unsigned int (*negotiate_wsize)(struct cifs_tcon *tcon, struct smb3_fs_context *ctx);
330 unsigned int (*negotiate_rsize)(struct cifs_tcon *tcon, struct smb3_fs_context *ctx);
332 int (*sess_setup)(const unsigned int, struct cifs_ses *,
336 int (*logoff)(const unsigned int, struct cifs_ses *);
338 int (*tree_connect)(const unsigned int, struct cifs_ses *, const char *,
341 int (*tree_disconnect)(const unsigned int, struct cifs_tcon *);
343 int (*get_dfs_refer)(const unsigned int, struct cifs_ses *,
347 void (*qfs_tcon)(const unsigned int, struct cifs_tcon *,
350 int (*is_path_accessible)(const unsigned int, struct cifs_tcon *,
353 int (*query_path_info)(const unsigned int xid,
359 int (*query_file_info)(const unsigned int xid, struct cifs_tcon *tcon,
362 int (*query_reparse_point)(const unsigned int xid,
369 int (*get_srv_inum)(const unsigned int xid, struct cifs_tcon *tcon,
373 int (*set_path_size)(const unsigned int, struct cifs_tcon *,
376 int (*set_file_size)(const unsigned int, struct cifs_tcon *,
379 int (*set_file_info)(struct inode *, const char *, FILE_BASIC_INFO *,
381 int (*set_compression)(const unsigned int, struct cifs_tcon *,
384 bool (*can_echo)(struct TCP_Server_Info *);
386 int (*echo)(struct TCP_Server_Info *);
388 int (*posix_mkdir)(const unsigned int xid, struct inode *inode,
392 int (*mkdir)(const unsigned int xid, struct inode *inode, umode_t mode,
396 void (*mkdir_setinfo)(struct inode *, const char *,
400 int (*rmdir)(const unsigned int, struct cifs_tcon *, const char *,
403 int (*unlink)(const unsigned int, struct cifs_tcon *, const char *,
406 int (*rename_pending_delete)(const char *, struct dentry *,
409 int (*rename)(const unsigned int xid,
415 int (*create_hardlink)(const unsigned int xid,
421 int (*query_symlink)(const unsigned int xid,
427 int (*open)(const unsigned int xid, struct cifs_open_parms *oparms, __u32 *oplock,
430 void (*set_fid)(struct cifsFileInfo *, struct cifs_fid *, __u32);
432 void (*close)(const unsigned int, struct cifs_tcon *,
435 void (*close_getattr)(const unsigned int xid, struct cifs_tcon *tcon,
438 int (*flush)(const unsigned int, struct cifs_tcon *, struct cifs_fid *);
440 int (*async_readv)(struct cifs_readdata *);
442 int (*async_writev)(struct cifs_writedata *,
445 int (*sync_read)(const unsigned int, struct cifs_fid *,
449 int (*sync_write)(const unsigned int, struct cifs_fid *,
453 int (*query_dir_first)(const unsigned int, struct cifs_tcon *,
458 int (*query_dir_next)(const unsigned int, struct cifs_tcon *,
462 int (*close_dir)(const unsigned int, struct cifs_tcon *,
465 unsigned int (*calc_smb_size)(void *buf);
467 bool (*is_status_pending)(char *buf, struct TCP_Server_Info *server);
469 bool (*is_session_expired)(char *);
471 int (*oplock_response)(struct cifs_tcon *tcon, __u64 persistent_fid, __u64 volatile_fid,
474 int (*queryfs)(const unsigned int, struct cifs_tcon *,
477 int (*mand_lock)(const unsigned int, struct cifsFileInfo *, __u64,
480 int (*mand_unlock_range)(struct cifsFileInfo *, struct file_lock *,
483 int (*push_mand_locks)(struct cifsFileInfo *);
485 void (*get_lease_key)(struct inode *, struct cifs_fid *);
487 void (*set_lease_key)(struct inode *, struct cifs_fid *);
489 void (*new_lease_key)(struct cifs_fid *);
490 int (*generate_signingkey)(struct cifs_ses *ses,
492 int (*calc_signature)(struct smb_rqst *, struct TCP_Server_Info *,
494 int (*set_integrity)(const unsigned int, struct cifs_tcon *tcon,
496 int (*enum_snapshots)(const unsigned int xid, struct cifs_tcon *tcon,
498 int (*notify)(const unsigned int xid, struct file *pfile,
500 int (*query_mf_symlink)(unsigned int, struct cifs_tcon *,
503 int (*create_mf_symlink)(unsigned int, struct cifs_tcon *,
507 bool (*is_read_op)(__u32);
509 void (*set_oplock_level)(struct cifsInodeInfo *, __u32, unsigned int,
512 char * (*create_lease_buf)(u8 *lease_key, u8 oplock);
514 __u8 (*parse_lease_buf)(void *buf, unsigned int *epoch, char *lkey);
515 ssize_t (*copychunk_range)(const unsigned int,
519 int (*duplicate_extents)(const unsigned int, struct cifsFileInfo *src,
522 int (*validate_negotiate)(const unsigned int, struct cifs_tcon *);
523 ssize_t (*query_all_EAs)(const unsigned int, struct cifs_tcon *,
526 int (*set_EA)(const unsigned int, struct cifs_tcon *, const char *,
529 struct cifs_ntsd * (*get_acl)(struct cifs_sb_info *, struct inode *,
531 struct cifs_ntsd * (*get_acl_by_fid)(struct cifs_sb_info *,
533 int (*set_acl)(struct cifs_ntsd *, __u32, struct inode *, const char *,
536 unsigned int (*wp_retry_size)(struct inode *);
538 int (*wait_mtu_credits)(struct TCP_Server_Info *, unsigned int,
541 int (*adjust_credits)(struct TCP_Server_Info *server,
545 bool (*dir_needs_close)(struct cifsFileInfo *);
546 long (*fallocate)(struct file *, struct cifs_tcon *, int, loff_t,
549 int (*init_transform_rq)(struct TCP_Server_Info *, int num_rqst,
551 int (*is_transform_hdr)(void *buf);
552 int (*receive_transform)(struct TCP_Server_Info *,
554 enum securityEnum (*select_sectype)(struct TCP_Server_Info *,
556 int (*next_header)(struct TCP_Server_Info *server, char *buf,
559 int (*ioctl_query_info)(const unsigned int xid,
565 int (*make_node)(unsigned int xid,
573 int (*fiemap)(struct cifs_tcon *tcon, struct cifsFileInfo *,
576 loff_t (*llseek)(struct file *, struct cifs_tcon *, loff_t, int);
578 bool (*is_status_io_timeout)(char *buf);
580 bool (*is_network_name_deleted)(char *buf, struct TCP_Server_Info *srv);
581 int (*parse_reparse_point)(struct cifs_sb_info *cifs_sb,
584 int (*create_reparse_symlink)(const unsigned int xid,