1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-11 05:18:09 +03:00
Commit Graph

204 Commits

Author SHA1 Message Date
Stefan Metzmacher
13dbef241b smbXcli: add support for SMBreadBraw
metze
2011-11-29 16:00:08 +01:00
Stefan Metzmacher
e450c45e67 smbXcli: add smb1cli_conn_server_{readbraw,writebraw,lockread,writeunlock}()
metze
2011-11-29 16:00:08 +01:00
Stefan Metzmacher
51a7201a12 smb1cli_trans: add support for tevent_req_cancel()
metze
2011-11-29 16:00:08 +01:00
Stefan Metzmacher
524d06615f smb1cli_trans: return the status from the server if possible
metze
2011-11-29 16:00:08 +01:00
Stefan Metzmacher
f0d8038ed8 smbXcli: rebuild smb1.recv_iov array if we expect more than one response
metze
2011-11-29 16:00:07 +01:00
Stefan Metzmacher
8c7e7ee91b smbXcli: allow up to 10 iovec elements for the bytes in smb1cli_req_create()
The smb1cli_trans_* code uses up to 6 elements, which was too much for
the current limit of 5.

metze
2011-11-29 16:00:07 +01:00
Stefan Metzmacher
3453665bcb smbXcli: s/smb2cli_writev_done/smb2cli_req_writev_done
This is a better name and it matches smb1cli_req_writev_done

metze
2011-11-29 16:00:07 +01:00
Stefan Metzmacher
c9ca3bb492 smbXcli: call tevent_queue_stop() for the outgoing queue on disconnect
metze
2011-11-29 16:00:07 +01:00
Stefan Metzmacher
91cb09fa0c smbXcli: use talloc_stackframe() instead of talloc_tos() in smb1cli_conn_signv()
metze
2011-11-29 16:00:07 +01:00
Stefan Metzmacher
9f6454af39 libcli/smb: remove unused smb_signing_set_bsrspyl() prototype
metze
2011-11-29 16:00:07 +01:00
Volker Lendecke
7491bd78d6 Fix Coverity ID 2638: OVERRUN_STATIC 2011-11-28 14:52:32 +01:00
Volker Lendecke
f094cc3ade Fix Coverity ID 2639: UNUSED_VALUE 2011-11-28 14:52:31 +01:00
Volker Lendecke
d287fe5399 s3:libsmb: Fix a typo 2011-11-24 19:02:33 +01:00
Stefan Metzmacher
a210d9fa05 s3:smbXcli: keep two fd per connection in order to work with the epoll tevent backend
metze
2011-11-24 19:02:33 +01:00
Stefan Metzmacher
da2027faf7 smbXcli: rework smb1cli_trans.c to use smbXcli_conn/smbXcli_req
metze
2011-11-24 19:02:32 +01:00
Stefan Metzmacher
c1db4a0d9f smbXcli: cp source3/libsmb/clitrans.c libcli/smb/smb1cli_trans.c
metze
2011-11-24 19:02:32 +01:00
Stefan Metzmacher
bda3d491b4 smbXcli: add smb2cli_req_set_notify_async()
That can be used if the caller wants to be notified if
the async interim response arrives.

metze
2011-11-24 19:02:31 +01:00
Stefan Metzmacher
0995d68d59 smbXcli: add support for tevent_req_cancel() on smbXcli_req
metze
2011-11-24 19:02:31 +01:00
Stefan Metzmacher
91ffe696aa smbXcli: fix smb signing for SMBntcancel
metze
2011-11-24 19:02:31 +01:00
Stefan Metzmacher
c2a39f4ecd smbXcli: add smb2cli_session_create_channel()
This makes it possible to implement SMB 2.22 Multi-Channel
for testing.

metze
2011-11-24 19:02:31 +01:00
Stefan Metzmacher
99b3d57fc3 s3:smb2cli: make use of smbXcli_session and setup the session key for SMB2 signing
metze
2011-11-24 19:02:31 +01:00
Stefan Metzmacher
396d7a7dd3 smbXcli: add support for smb2 signing
metze
2011-11-24 19:02:31 +01:00
Stefan Metzmacher
3fd54b57c1 smbXcli: add smbXcli_session infrastructure
metze
2011-11-24 19:02:31 +01:00
Stefan Metzmacher
4435dad827 smbXcli: add support for PROTOCOL_SMB2_22 in smbXcli_negprot()
metze
2011-11-24 19:02:31 +01:00
Stefan Metzmacher
9d06e0fcc7 smbXcli: add support for SMB2 multi-credit requests
metze
2011-11-24 19:02:31 +01:00
Stefan Metzmacher
d533543166 smbXcli: add support for 2.??? negprot and PROTOCOL_SMB2_10
metze
2011-11-24 19:02:31 +01:00
Stefan Metzmacher
1cfeb3f8a0 smbXcli: pass client_guid to smbXcli_conn_create()
metze
2011-11-24 19:02:31 +01:00
Stefan Metzmacher
ceb063ca7d smbXcli: add smbXcli_negprot_*
This supports negotiation of any SMB1 or SMB2 dialect.

metze
2011-11-24 19:02:30 +01:00
Stefan Metzmacher
b958498c2a smbXcli: add helper functions to access the negotiated features
metze
2011-11-24 19:02:30 +01:00
Stefan Metzmacher
1a0ce02a23 smbXcli: also notify chained requests about broken connections
metze
2011-11-24 19:02:30 +01:00
Stefan Metzmacher
4d8e151779 smbXcli: simplify smb1cli_req_chain_submit()
We should hang everything on the first request in the chain,
as that's the one that gets added to the pending array.

metze
2011-11-24 19:02:30 +01:00
Stefan Metzmacher
e2912fa853 smbXcli: remove unused smb1cli_have_andx_command()
metze
2011-11-24 19:02:30 +01:00
Stefan Metzmacher
fee3a0a657 smbXcli: reorder smb1cli_conn_dispatch_incoming() to avoid too much nesting
metze
2011-11-24 19:02:30 +01:00
Stefan Metzmacher
0f194e35a6 smbXcli: rework smb1cli_req_recv() to expose an iov with 3 elements
Each smb1cli_req has 3 iov elements
[SMB HDR, SMB Parameter Block, SMB Data Block].

The 'inbuf' is still exposed if the caller requires it
(until we fix all legacy callers).

The can now pass an array of expected [status,wct] combinations,
instead of just one expected min_wct.

metze
2011-11-24 19:02:30 +01:00
Stefan Metzmacher
ce224f4d25 smbXcli: use smb1cli_inbuf_parse_chain() and remember more details per chain response
metze
2011-11-24 19:02:30 +01:00
Stefan Metzmacher
7c5651c3f6 smbXcli: add smb1cli_inbuf_parse_chain()
metze
2011-11-24 19:02:30 +01:00
Stefan Metzmacher
94cb738dd4 smbXcli: pass hdr to smb1cli_pull_raw_error()
metze
2011-11-24 19:02:30 +01:00
Stefan Metzmacher
4529395d3c smbXcli: add state->smb1.recv_{cmd,status,iov}
In the following commits we will need to remember a few more things.

metze
2011-11-24 19:02:30 +01:00
Stefan Metzmacher
5e7cf194d2 smbXcli: split out a smb1cli_req_flags() function
metze
2011-11-24 19:02:30 +01:00
Stefan Metzmacher
2a570e6305 smbXcli: set message id to UINT64_MAX for BREAK in smb2cli_req_create()
This way the caller can register an oplock handler.

Note that smb2cli_req_compound_submit() will overwrite this
if a request is send over the wire.

metze
2011-11-24 19:02:30 +01:00
Stefan Metzmacher
349977e1a0 s3:smb2cli: replace smb2cli_base.c code with the more generic smbXcli_base.c code
metze
2011-11-24 19:02:30 +01:00
Stefan Metzmacher
84806eceb2 smbXcli: rework smb2cli_req to smbXcli_conn/smbXcli_req
metze
2011-11-24 19:02:30 +01:00
Stefan Metzmacher
21b5f1c185 libcli/smb: copy smb2cli_req_* code to smbXcli_base.c
metze
2011-11-24 19:02:29 +01:00
Stefan Metzmacher
26892a9783 smbXcli: rework smbXcli_base.c to use smbXcli_conn/smbXcli_req
This splits the low level smb code from 'struct cli_state'
and makes it much more generic and useful for testing.

metze
2011-11-24 19:02:29 +01:00
Stefan Metzmacher
012dee3803 smbXcli: cp source3/libsmb/async_smb.c libcli/smb/smbXcli_base.c
metze
2011-11-24 19:02:29 +01:00
Stefan Metzmacher
22344f3e03 libcli/smb: use the same values for SMB_SIGNING_* as the source3 code uses
The source3 code currently uses:
 #define Undefined (-1)
 #define False false
 #define True true
 #define Required (3)

In order to make the rewrite easier we should match the values.

metze
2011-11-03 16:55:12 +01:00
Stefan Metzmacher
812c3dc80a libcli/smb: remove unused SMB_SIGNING_SUPPORTED
metze
2011-11-03 16:55:12 +01:00
Stefan Metzmacher
a4ac06a4be libcli/smb: add SMB_SIGNING_IF_REQUIRED as replacement for SMB_SIGNING_SUPPORTED
metze
2011-11-03 16:55:12 +01:00
Stefan Metzmacher
feace943d5 libcli/smb: SMB_SIGNING_AUTO is no longer used
metze
2011-11-03 16:55:12 +01:00
Stefan Metzmacher
18205ac7ad libcli/smb: add SMB_SIGNING_DEFAULT
metze
2011-11-03 16:55:11 +01:00
Stefan Metzmacher
5f520e7717 libcli/smb: add smb_buffer_oob() helper
A copy of trans_oob().

metze
2011-10-26 15:33:30 +02:00
Stefan Metzmacher
0d9bd56afb libcli/smb: merge NEGOTIATE_SECURITY_* flags to smb_constants.h
metze

Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Wed Oct 26 11:27:12 CEST 2011 on sn-devel-104
2011-10-26 11:27:12 +02:00
Stefan Metzmacher
1fa7300037 libcli/smb: move smb_signing.[ch] to the toplevel
metze
2011-10-25 01:47:21 +02:00
Stefan Metzmacher
d76758ab9f libcli/smb: remove unused includes from read_smb.h
metze
2011-10-25 00:24:07 +02:00
Stefan Metzmacher
f3c25bc6a5 libcli/smb: merge LOCKING_ANDX_* and OPLOCK_* defines to smb_constants.h
metze

Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Mon Oct 24 17:46:47 CEST 2011 on sn-devel-104
2011-10-24 17:46:47 +02:00
Stefan Metzmacher
ec7cc700b2 libcli/smb: move more defines to smb_constants.h
metze
2011-10-24 16:10:36 +02:00
Stefan Metzmacher
6fef69562b libcli/smb: move CAP_* defines to smb_constants.h
metze
2011-10-24 16:10:36 +02:00
Andrew Bartlett
59e838a1c4 libcli/smb Move smb_seal.h include to files that use it.
This is required because at the moment, smb_seal.h includes references to gssapi structures
and this causes issues with header dependencies on subsystems that otherwise do not need
a gssapi dependency.

Andrew Bartlett

Signed-off-by: Stefan Metzmacher <metze@samba.org>
2011-10-24 13:56:52 +02:00
Stefan Metzmacher
7ebd4337ac libcli/smb: move source3/libsmb/read_smb.* to the toplevel
metze

Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Mon Oct 24 10:18:06 CEST 2011 on sn-devel-104
2011-10-24 10:18:06 +02:00
Günther Deschner
80741d98d8 libcli: remove unneeded com_err.h and fix the build here.
Guenther

Autobuild-User: Günther Deschner <gd@samba.org>
Autobuild-Date: Fri Oct 21 15:52:36 CEST 2011 on sn-devel-104
2011-10-21 15:52:36 +02:00
Stefan Metzmacher
75d146d3ed libcli/smb: move smb_seal.c to the toplevel
metze

Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Fri Oct 21 10:22:39 CEST 2011 on sn-devel-104
2011-10-21 10:22:39 +02:00
Stefan Metzmacher
e03b312b12 libcli/smb: add smb_setlen_[nbt|tcp] macros
metze
2011-10-21 08:42:59 +02:00
Stefan Metzmacher
32938ce60d libcli/smb: move some common defines to smb_constants.h
metze
2011-10-21 08:42:59 +02:00
Stefan Metzmacher
cd22763440 libcli/smb: add smb_[set]len_[nbt|tcp]() macros
metze
2011-10-19 15:44:29 +02:00
David Disseldorp
b711de287f libcli: Move smb2 fsctl fn defs into common code
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2011-10-19 15:44:29 +02:00
David Disseldorp
d5ea379428 s3: Remove duplicate fsctl function definitions
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2011-10-19 15:44:29 +02:00
David Disseldorp
281fc93c6b libcli: move ioctl function field defs to smb_constants
Currently there are a lot of duplicate ioctl function field definitions
between source3 and source4.

Signed-off-by: Stefan Metzmacher <metze@samba.org>
2011-10-19 15:44:29 +02:00
Andrew Bartlett
26de383c42 libcli/smb Move CSC_POLICY_* definition to smb_constants.h
This removes the duplicate definition between smb.h and lib/param/loadparm.c
which in turn allows this file to be compiled with the s3 includes.h

Andrew Bartlett
2011-10-11 13:41:34 +11:00
Andrew Bartlett
b21b012756 lib/param move source4 param code to the top level
This is done so that the lpcfg_ functions are available across the whole
build, either with the struct loadparm_context loaded from an smb.conf directly
or as a wrapper around the source3 param code.

This is not the final, merged loadparm, but simply one step to make
it easier to solve other problems while we make our slow progress
on this difficult problem.

Andrew Bartlett
2011-10-11 13:41:34 +11:00
Jelmer Vernooij
3358239a57 smb_unix_ext.h: Protect against multiple inclusion. 2011-09-28 12:05:54 +02:00
Jelmer Vernooij
2660a465c3 Install headers included by smb_common.h. 2011-09-28 11:32:36 +02:00
Kai Blin
8eb80a9d83 libcli/smb: Get rid of set but unused variable 2011-09-24 21:46:05 -07:00
Jeremy Allison
e99a18cdc0 Remove extraneous debug code.
Autobuild-User: Jeremy Allison <jra@samba.org>
Autobuild-Date: Thu Sep 22 00:22:12 CEST 2011 on sn-devel-104
2011-09-22 00:22:12 +02:00
Jeremy Allison
d89bbe9b0a Fix bug #8474 - SMB2 create doesn't cope with an Apple client using NULL blob in create
Cope with zero length data_offset and data_length values.

Autobuild-User: Jeremy Allison <jra@samba.org>
Autobuild-Date: Wed Sep 21 22:12:40 CEST 2011 on sn-devel-104
2011-09-21 22:12:40 +02:00
Stefan Metzmacher
62d4a317f9 libcli/smb: add SMB2_DIALECT_REVISION_222
metze

Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Fri Sep 16 19:51:47 CEST 2011 on sn-devel-104
2011-09-16 19:51:47 +02:00
Stefan Metzmacher
f6217aa7d1 libcli/smb: add PROTOCOL_SMB2_22
metze
2011-09-16 16:44:14 +02:00
Stefan Metzmacher
258ffddf1c libcli/smb: s/FLAGS2_UNKNOWN_BIT4/FLAGS2_SMB_SECURITY_SIGNATURES_REQUIRED
metze

Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Sat Sep 10 00:34:50 CEST 2011 on sn-devel-104
2011-09-10 00:34:50 +02:00
Stefan Metzmacher
dd3c1b740c smb2_constants: add SMB2_WRITEFLAG_WRITE_THROUGH define
metze
2011-09-06 15:28:00 +02:00
Stefan Metzmacher
d7eb4a4c85 libcli/smb: add PROTOCOL_SMB2_10
metze

Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Mon Sep  5 14:57:06 CEST 2011 on sn-devel-104
2011-09-05 14:57:06 +02:00
Stefan Metzmacher
7fd075f91b libcli/smb: remove PROTOCOL_SMB2 alias of PROTOCOL_SMB2_02
metze
2011-09-05 13:25:01 +02:00
Stefan Metzmacher
0ed0a66956 libcli/smb: move smb2_signing.c to the toplevel
metze
2011-09-05 13:17:32 +02:00
Stefan Metzmacher
480a031c5b smb2_constants: add SMB2_HDR_CREDIT_CHARGE
SMB2_HDR_EPOCH was never used and SMB 2.10 uses it as
SMB2_HDR_CREDIT_CHARGE.

We keep SMB2_HDR_EPOCH as alias for now, until all callers
are fixed.

metze

Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Tue Aug 30 23:49:56 CEST 2011 on sn-devel-104
2011-08-30 23:49:56 +02:00
Jelmer Vernooij
97afeaceda smb_common: Fix include paths.
Autobuild-User: Jelmer Vernooij <jelmer@samba.org>
Autobuild-Date: Thu Aug 18 16:54:01 CEST 2011 on sn-devel-104
2011-08-18 16:54:01 +02:00
Jelmer Vernooij
f0d15e8ffa smb_common: Install some more headers. 2011-08-18 13:43:42 +02:00
Jelmer Vernooij
23cbfef542 cli_smb_common: Lowercase name. 2011-07-26 13:31:08 +02:00
Stefan Metzmacher
86fb61a4aa libcli/smb: add NBSS message types
metze
2011-07-12 09:44:04 +02:00
Stefan Metzmacher
cc2a5d23ae libcli/smb: add PROTOCOL_SMB2_02 constant
metze
2011-07-12 08:17:59 +02:00
Andrew Bartlett
7891848357 libcli/smb move FILE_TYPE constants in common
This allows us to remove another _SAMBA_BUILD_ conditional

Andrew Bartlett
2011-07-06 05:32:59 +02:00
Andrew Bartlett
6543987139 libcli/smb move enum protocol_types to a common header 2011-07-06 05:32:51 +02:00
Andrew Bartlett
2fc342c20a waf-build: Add more libraries to avoid duplicate symbols
The new source of duplicates is calling libnetapi from inside smbtorture.

Andrew Bartlett
2011-05-18 16:12:07 +02:00
Andrew Bartlett
e3b858496f libcli/smb Move cifs posix helper functions and headers in common
unix_perms_to_wire() was a duplicate symbol in the top level build.

Andrew Bartlett
2011-05-06 07:51:24 +02:00
Andrew Bartlett
6021af4fd3 libcli/smb Move attrib_string in common 2011-04-29 16:38:14 +10:00
Andrew Bartlett
9f75b7cbb3 libcli/smb Move FILE_ATTRIBUTE defines to the top level 2011-04-29 16:38:12 +10:00
Andrew Tridgell
5a20325c86 libcli: created smb_constants.h
this starts the (long!) process of moving some of the SMB constants
into common files. This just moves the FLAGS2_ defines, which are
needed for common string routines (for FLAGS2_UNICODE_STRINGS)
2011-03-25 04:37:06 +01:00
Jeremy Allison
ed3ae87830 Implement the SMB2 close flag SMB2_CLOSE_FLAGS_FULL_INFORMATION (and move definition to correct place).
Thanks to Nick Meier @ Microsoft for finding this @ Connectathon.

Jeremy.

Autobuild-User: Jeremy Allison <jra@samba.org>
Autobuild-Date: Fri Feb 25 00:40:52 CET 2011 on sn-devel-104
2011-02-25 00:40:52 +01:00
Jelmer Vernooij
3deece5591 s4: Remove the old perl/m4/make/mk-based build system.
The new waf-based build system now has all the same functionality, and
the old build system has been broken for quite some time.

Autobuild-User: Jelmer Vernooij <jelmer@samba.org>
Autobuild-Date: Sun Oct 31 02:01:44 UTC 2010 on sn-devel-104
2010-10-31 02:01:44 +00:00
Steven Danneman
bf1a4b2bc4 s4:libcli:smb2 Rename pending_id to async_id and make 64-bit
Match MS-SMB2 - 2.2.1.1   SMB2 Packet Header - ASYNC
2010-09-22 17:52:53 -07:00
Jeremy Allison
b2a7ad8c95 Make DFS work over SMB2.
Jeremy.
2010-05-21 16:56:10 -07:00
Andrew Tridgell
b690fedef5 s4-waf: removed the AUTOGENERATED markers
we won't be using the mk -> wscript generator again
2010-04-06 20:27:16 +10:00
Andrew Tridgell
f9eae32f4b s4-waf: mark the wscript files as python so vim/emacs knows how to highlight them 2010-04-06 20:27:11 +10:00
Andrew Tridgell
845e0cbe6f build: commit all the waf build files in the tree 2010-04-06 20:26:48 +10:00
Stefan Metzmacher
e2845b8089 libcli/smb: add smb2_create_blob_find()
metze
2009-08-15 10:46:35 +02:00
Stefan Metzmacher
1d75a6e224 libcli/smb: move smb2_create_blob code to libcli/smb/
I want to use this in source3/smbd/

metze
2009-08-12 19:22:06 +02:00
Stefan Metzmacher
1df883aa39 libcli: move some common SMB and SMB2 stuff into libcli/smb/
This will hold code that's shared between source3 and source4.

metze
2009-08-12 18:28:32 +02:00