Lines Matching defs:TCP_Server_Info
677 struct TCP_Server_Info { struct
678 struct list_head tcp_ses_list;
679 struct list_head smb_ses_list;
680 spinlock_t srv_lock; /* protect anything here that is not protected */
681 __u64 conn_id; /* connection identifier (useful for debugging) */
682 int srv_count; /* reference counter */
684 char server_RFC1001_name[RFC1001_NAME_LEN_WITH_NULL];
685 struct smb_version_operations *ops;
686 struct smb_version_values *vals;
688 enum statusEnum tcpStatus; /* what we think the status is */
689 char *hostname; /* hostname portion of UNC string */
690 struct socket *ssocket;
691 struct sockaddr_storage dstaddr;
692 struct sockaddr_storage srcaddr; /* locally bind to this IP */
694 struct net *net;
696 wait_queue_head_t response_q;
697 wait_queue_head_t request_q; /* if more than maxmpx to srvr must block*/
698 spinlock_t mid_lock; /* protect mid queue and it's entries */
699 struct list_head pending_mid_q;
700 bool noblocksnd; /* use blocking sendmsg */
701 bool noautotune; /* do not autotune send buf sizes */
702 bool nosharesock;
703 bool tcp_nodelay;
704 bool terminate;
705 unsigned int credits; /* send no more requests at once */
706 unsigned int max_credits; /* can override large 32000 default at mnt */
707 unsigned int in_flight; /* number of requests on the wire to server */
708 unsigned int max_in_flight; /* max number of requests that were on wire */
709 spinlock_t req_lock; /* protect the two values above */
710 struct mutex _srv_mutex;
711 unsigned int nofs_flag;
712 struct task_struct *tsk;
713 char server_GUID[16];
714 __u16 sec_mode;
715 bool sign; /* is signing enabled on this connection? */
716 bool ignore_signature:1; /* skip validation of signatures in SMB2/3 rsp */
717 bool session_estab; /* mark when very first sess is established */
718 int echo_credits; /* echo reserved slots */
719 int oplock_credits; /* oplock break reserved slots */
720 bool echoes:1; /* enable echoes */
721 __u8 client_guid[SMB2_CLIENT_GUID_SIZE]; /* Client GUID */
722 u16 dialect; /* dialect index that server chose */
723 bool oplocks:1; /* enable oplocks */
724 unsigned int maxReq; /* Clients should submit no more */
727 unsigned int maxBuf; /* maxBuf specifies the maximum */
731 unsigned int max_rw; /* maxRw specifies the maximum */
734 unsigned int capabilities; /* selective disabling of caps by smb sess */
735 int timeAdj; /* Adjust for difference in server time zone in sec */
736 __u64 CurrentMid; /* multiplex id - rotating counter, protected by GlobalMid_Lock */
737 char cryptkey[CIFS_CRYPTO_KEY_SIZE]; /* used by ntlm, ntlmv2 etc */
739 char workstation_RFC1001_name[RFC1001_NAME_LEN_WITH_NULL];
740 __u32 sequence_number; /* for signing, protected by srv_mutex */
741 __u32 reconnect_instance; /* incremented on each reconnect */
742 struct session_key session_key;
743 unsigned long lstrp; /* when we got last response from this server */
744 struct cifs_secmech secmech; /* crypto sec mech functs, descriptors */
747 char negflavor; /* NEGOTIATE response flavor */
749 bool sec_ntlmssp; /* supports NTLMSSP */
750 bool sec_kerberosu2u; /* supports U2U Kerberos */
751 bool sec_kerberos; /* supports plain Kerberos */
752 bool sec_mskerberos; /* supports legacy MS Kerberos */
753 bool sec_iakerb; /* supports pass-through auth for Kerberos (krb5 proxy) */
754 bool large_buf; /* is current buffer large? */
756 bool rdma;
758 struct smbd_connection *smbd_conn;
759 struct delayed_work echo; /* echo ping workqueue job */
760 char *smallbuf; /* pointer to current "small" buffer */
761 char *bigbuf; /* pointer to current "big" buffer */
763 unsigned int pdu_size;
764 unsigned int total_read; /* total amount of data read in this pass */
765 atomic_t in_send; /* requests trying to send */
766 atomic_t num_waiters; /* blocked waiting to get in sendrecv */
768 atomic_t num_cmds[NUMBER_OF_SMB2_COMMANDS]; /* total requests by cmd */
769 atomic_t smb2slowcmd[NUMBER_OF_SMB2_COMMANDS]; /* count resps > 1 sec */
770 __u64 time_per_cmd[NUMBER_OF_SMB2_COMMANDS]; /* total time per cmd */
771 __u32 slowest_cmd[NUMBER_OF_SMB2_COMMANDS];
772 __u32 fastest_cmd[NUMBER_OF_SMB2_COMMANDS];
774 unsigned int max_read;
775 unsigned int max_write;
776 unsigned int min_offload;
777 unsigned int retrans;
778 struct {
782 } compression;
783 __u16 signing_algorithm;
807 struct TCP_Server_Info *primary_server; argument
808 __u16 channel_sequence_num; /* incremented on primary channel on each chan reconnect */
832 static inline bool is_smb1(struct TCP_Server_Info *server) in is_smb1() argument