Ignore:
Timestamp:
Nov 24, 2016, 1:14:11 PM (9 years ago)
Author:
Silvan Scherrer
Message:

Samba Server: update vendor to version 4.4.3

File:
1 edited

Legend:

Unmodified
Added
Removed
  • vendor/current/source3/include/client.h

    r740 r988  
    2323#define _CLIENT_H
    2424
    25 /* the client asks for a smaller buffer to save ram and also to get more
    26    overlap on the wire. This size gives us a nice read/write size, which
    27    will be a multiple of the page size on almost any system */
    28 #define CLI_BUFFER_SIZE (0xFFFF)
    29 #define CLI_SAMBA_MAX_LARGE_READX_SIZE (127*1024) /* Works for Samba servers */
    30 #define CLI_SAMBA_MAX_LARGE_WRITEX_SIZE (127*1024) /* Works for Samba servers */
    31 #define CLI_WINDOWS_MAX_LARGE_READX_SIZE ((64*1024)-2) /* Windows servers are broken.... */
    32 #define CLI_WINDOWS_MAX_LARGE_WRITEX_SIZE ((64*1024)-2) /* Windows servers are broken.... */
    33 #define CLI_SAMBA_MAX_POSIX_LARGE_READX_SIZE (0xFFFF00) /* 24-bit len. */
    34 #define CLI_SAMBA_MAX_POSIX_LARGE_WRITEX_SIZE (0xFFFF00) /* 24-bit len. */
     25#define CLI_BUFFER_SIZE SMB_BUFFER_SIZE_MAX
     26
     27/* default client timeout to 20 seconds on most commands */
     28#define CLIENT_TIMEOUT (20 * 1000)
    3529
    3630/*
     
    3933
    4034struct print_job_info {
    41         uint16 id;
    42         uint16 priority;
     35        uint16_t id;
     36        uint16_t priority;
    4337        size_t size;
    4438        fstring user;
     
    4741};
    4842
    49 struct cli_state_seqnum {
    50         struct cli_state_seqnum *prev, *next;
    51         uint16_t mid;
    52         uint32_t seqnum;
    53         bool persistent;
    54 };
     43struct smbXcli_conn;
     44struct smbXcli_session;
    5545
    5646struct cli_state {
     
    5949         */
    6050        struct cli_state *prev, *next;
    61         int port;
    62         int fd;
    63         /* Last read or write error. */
    64         enum smb_read_errors smb_rw_error;
    65         uint16 cnum;
    66         uint16 pid;
    67         uint16 mid;
    68         uint16 vuid;
    69         int protocol;
    70         int sec_mode;
    7151        int rap_error;
    72         int privileges;
    73 
    74         char *desthost;
    75 
    76         /* The credentials used to open the cli_state connection. */
    77         char *domain;
    78         char *user_name;
    79         char *password; /* Can be null to force use of zero NTLMSSP session key. */
     52        NTSTATUS raw_status; /* maybe via NT_STATUS_DOS() */
     53        bool map_dos_errors;
    8054
    8155        /*
     
    9064        char *share;
    9165        char *dev;
    92         struct nmb_name called;
    93         struct nmb_name calling;
    94         struct sockaddr_storage dest_ss;
    9566
    96         DATA_BLOB secblob; /* cryptkey or negTokenInit */
    97         uint32 sesskey;
    98         int serverzone;
    99         uint32 servertime;
    100         int readbraw_supported;
    101         int writebraw_supported;
    10267        int timeout; /* in milliseconds. */
    103         size_t max_xmit;
    104         size_t max_mux;
    105         char *outbuf;
    106         struct cli_state_seqnum *seqnum;
    107         char *inbuf;
    108         unsigned int bufsize;
    10968        int initialised;
    11069        int win95;
    111         bool is_samba;
    112         bool is_guestlogin;
    113         uint32 capabilities;
    11470        /* What the server offered. */
    11571        uint32_t server_posix_capabilities;
    11672        /* What the client requested. */
    11773        uint32_t requested_posix_capabilities;
    118         bool dfsroot;
    119 
    120         struct smb_signing_state *signing_state;
    121 
    122         struct smb_trans_enc_state *trans_enc_state; /* Setup if we're encrypting SMB's. */
    123 
    124         /* the session key for this CLI, outside
    125            any per-pipe authenticaion */
    126         DATA_BLOB user_session_key;
     74        bool backup_intent;
    12775
    12876        /* The list of pipes currently open on this connection. */
     
    13179        bool use_kerberos;
    13280        bool fallback_after_kerberos;
    133         bool use_spnego;
    13481        bool use_ccache;
     82        bool pw_nt_hash;
    13583        bool got_kerberos_mechanism; /* Server supports krb5 in SPNEGO. */
    13684
    13785        bool use_oplocks; /* should we use oplocks? */
    138         bool use_level_II_oplocks; /* should we use level II oplocks? */
    139 
    140         /* a oplock break request handler */
    141         NTSTATUS (*oplock_handler)(struct cli_state *cli, uint16_t fnum, unsigned char level);
    142 
    143         bool force_dos_errors;
    144         bool case_sensitive; /* False by default. */
    14586
    14687        /* Where (if anywhere) this is mounted under DFS. */
    14788        char *dfs_mountpoint;
    14889
    149         struct tevent_queue *outgoing;
    150         struct tevent_req **pending;
     90        struct smbXcli_conn *conn;
     91        const char *remote_realm;
     92
     93        struct {
     94                uint16_t pid;
     95                uint16_t vc_num;
     96                struct smbXcli_session *session;
     97                struct smbXcli_tcon *tcon;
     98        } smb1;
     99
     100        struct {
     101                struct smbXcli_session *session;
     102                struct smbXcli_tcon *tcon;
     103                struct idr_context *open_handles;
     104        } smb2;
    151105};
    152106
    153107struct file_info {
    154108        uint64_t size;
    155         uint16 mode;
     109        uint16_t mode;
    156110        uid_t uid;
    157111        gid_t gid;
     
    161115        struct timespec ctime_ts;
    162116        char *name;
    163         char short_name[13*3]; /* the *3 is to cope with multi-byte */
     117        char *short_name;
    164118};
    165119
     
    171125#define CLI_FULL_CONNECTION_LEVEL_II_OPLOCKS 0x0020
    172126#define CLI_FULL_CONNECTION_USE_CCACHE 0x0040
     127#define CLI_FULL_CONNECTION_FORCE_DOS_ERRORS 0x0080
     128#define CLI_FULL_CONNECTION_FORCE_ASCII 0x0100
     129#define CLI_FULL_CONNECTION_USE_NT_HASH 0x0200
    173130
    174131#endif /* _CLIENT_H */
Note: See TracChangeset for help on using the changeset viewer.