s3:libsmb: implement cli_state based functions on top of smbXcli_conn/smbXcli_req
[gd/samba-autobuild/.git] / source3 / libsmb / smb2cli_base.h
1 /*
2    Unix SMB/CIFS implementation.
3    smb2 client routines
4    Copyright (C) Volker Lendecke 2011
5
6    This program is free software; you can redistribute it and/or modify
7    it under the terms of the GNU General Public License as published by
8    the Free Software Foundation; either version 3 of the License, or
9    (at your option) any later version.
10
11    This program is distributed in the hope that it will be useful,
12    but WITHOUT ANY WARRANTY; without even the implied warranty of
13    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14    GNU General Public License for more details.
15
16    You should have received a copy of the GNU General Public License
17    along with this program.  If not, see <http://www.gnu.org/licenses/>.
18 */
19
20 #ifndef __SMB2CLI_BASE_H__
21 #define __SMB2CLI_BASE_H__
22
23 #include "../libcli/smb/smbXcli_base.h"
24
25 static inline struct tevent_req *cli_state_smb2cli_req_send(TALLOC_CTX *mem_ctx,
26                                     struct tevent_context *ev,
27                                     struct cli_state *cli,
28                                     uint16_t cmd,
29                                     uint32_t additional_flags,
30                                     uint32_t clear_flags,
31                                     uint32_t timeout_msec,
32                                     uint32_t pid,
33                                     uint32_t tid,
34                                     struct smbXcli_session *session,
35                                     const uint8_t *fixed,
36                                     uint16_t fixed_len,
37                                     const uint8_t *dyn,
38                                     uint32_t dyn_len)
39 {
40         return smb2cli_req_send(mem_ctx, ev,
41                                 cli->conn, cmd,
42                                 additional_flags, clear_flags,
43                                 timeout_msec,
44                                 pid, tid, session,
45                                 fixed, fixed_len,
46                                 dyn, dyn_len);
47 }
48
49 #define smb2cli_req_send(mem_ctx, ev, cli, cmd, \
50                          additional_flags, clear_flags, \
51                          timeout_msec, \
52                          pid, tid, session, \
53                          fixed, fixed_len, dyn, dyn_len) \
54         cli_state_smb2cli_req_send(mem_ctx, ev, cli, cmd, \
55                          additional_flags, clear_flags, \
56                          timeout_msec, \
57                          pid, tid, session, \
58                          fixed, fixed_len, dyn, dyn_len)
59
60 #endif