1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-25 06:04:04 +03:00

209 Commits

Author SHA1 Message Date
Sam Liddicott
7d8f3cdbfc Let ntvfs request transport close via ntvfs_request state
[I can't swear that this covers all the smb2 cases, there are some reply
functions that I can't trace properly]

Add NTVFS_ASYNC_STATE_CLOSE bit to ntvfs_request->async_states->state
so that the ntvfs layer can signify that the client transport should
be closed, most useful for proxy servies, and most likely due to a
forwarding transport having been closed.

Signed-off-by: Sam Liddicott <sam@liddicott.com>
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2008-12-05 12:52:13 +01:00
Jelmer Vernooij
b034c519f5 Add gensec_settings structure. This wraps loadparm_context for now, but
should in the future only contain some settings required for gensec.
2008-11-02 02:05:48 +01:00
Jelmer Vernooij
23302413b3 Remove unused include param/param.h. 2008-10-24 16:37:56 +02:00
Jelmer Vernooij
922a29992e Remove iconv_convenience parameter from simple string push/pull
functions.
2008-10-24 03:40:09 +02:00
Andrew Tridgell
0cf7175126 we need different error handling for truncated packets in NETPROT and
other SMB2 operations.
2008-09-24 18:58:38 -07:00
Andrew Tridgell
eb5b3f50d1 we should terminate the connection on a bad negprot packet size 2008-09-24 18:10:23 -07:00
Andrew Tridgell
49c80cea0b cope with body_size zero in SMB2 receive 2008-09-24 18:10:23 -07:00
Andrew Tridgell
a3536c4c06 check for a 0 byte in the buffer in SMB2 read 2008-09-24 18:10:23 -07:00
Andrew Tridgell
7e57626d1d the offset is 16 bits in SMB2 fileinfo 2008-09-24 18:10:23 -07:00
Andrew Tridgell
71ae732669 fixed error code for bad keepalive 2008-09-24 18:10:22 -07:00
Andrew Tridgell
ff542275c3 stricter checking of SMB2 echo body (per the spec)
thanks to the bluearc test suite
2008-09-24 18:10:22 -07:00
Stefan Metzmacher
2a36568129 smb2srv: async replies with STATUS_PENDING are not signed
..., but the they may have the sign flag set.

metze
(This used to be commit 43e43dead030f6bffd06631007fdb162c3c6b2b5)
2008-08-14 13:13:50 +02:00
Stefan Metzmacher
0294c678c0 smb2srv: sign replies when the request was also signed
metze
(This used to be commit dd2f4f7a491debcc30e590f571272afd99e52940)
2008-08-14 13:13:50 +02:00
Stefan Metzmacher
4a214dba30 smb2srv: use defines instead of hex values
metze
(This used to be commit 7c4abf6614c47471ae005a12abe27d85890d867f)
2008-08-14 13:13:50 +02:00
Stefan Metzmacher
0251096a89 smb2srv: sign SMB2 Logoff replies
metze
(This used to be commit 2844e361730a6bc640ea89d0e10059deca1ca867)
2008-07-28 14:09:46 +02:00
Stefan Metzmacher
8623e2cc4c smb2srv: correctly hold the signing state per session
metze
(This used to be commit 5b3ba3f3556e8031133128853cd2324ee3852aa1)
2008-07-28 14:09:45 +02:00
Andrew Tridgell
e4ad580b99 fixed mandatory signing
Metze pointed out that if signing is mandatory in the server then we
need to reject packets without the signed flag if the packet contains
a session id.
(This used to be commit 056f16e664e581bab1c07759e99ad4f6685c58eb)
2008-06-07 08:14:25 -07:00
Andrew Tridgell
e97cf207fa added server side SMB2 signing
(This used to be commit 8e919dcb0826a5b25d037ee6144af5f7cb21f3ae)
2008-06-06 22:10:30 -07:00
Andrew Tridgell
405e64c437 more updates for new info levels
(This used to be commit 85d1873ee92fcc7df3addc42ddb8189144901f8b)
2008-06-02 11:05:06 +10:00
Andrew Tridgell
eb8634b2f0 check for requested buffer size in getinfo call
(This used to be commit ed8f16379d01d3dffd2645e2b275aa27507dfec9)
2008-05-31 13:39:51 +10:00
Andrew Tridgell
6ef9674caa the docs shows that this is a o16s32 blob
(This used to be commit a6d28e2b330a20e95b745966bb5eb153bdc58ed1)
2008-05-30 07:28:53 +10:00
Andrew Tridgell
de4c962638 fix from WSPP SMB2 test 11
(This used to be commit 81612b7854725837e8487bf97b87bff6548b6ad3)
2008-05-29 19:32:04 +10:00
Andrew Tridgell
c86dc11be6 added support for returning the maximal access MXAC tag in SMB2 create
(This used to be commit 4eb49335d5f0319f9aa47ded5215a2977d3336bf)
2008-05-29 19:16:26 +10:00
Andrew Tridgell
6b70726305 implement the documented SMB2 create blobs in the server
Not all of them are honoured yet, but they are all parsed and the ones
that have SMB equivalents are honoured
(This used to be commit 9fc70e2ed6a54f6d9a0530f4d37c0f8acadb6778)
2008-05-28 16:28:37 +10:00
Andrew Tridgell
72739ac0d0 badly formed SMB2 packets get NT_STATUS_INVALID_PARAMETER
(This used to be commit 1c5dd2d1b655218f875a4e512ed3e94fee624fe4)
2008-05-22 13:14:55 +10:00
Andrew Tridgell
aed93a238e fixed SMB2 flush call, and added flush to gentest_smb2
(This used to be commit c52fe1fe1c77636d87355d3c4baa66e052fe9008)
2008-05-21 22:51:21 +10:00
Andrew Tridgell
4d39976ddd fixed SMB2 locking
- SMB2 locking is different in several ways from SMB locking. To fix
  it properly we will need a new generic mapping structure for
  locking, but for now do a best effort mapping

- added locking to gentest_smb2
(This used to be commit ea6d9cf602302adafe0f9d5f5f90a9b26d1ead6f)
2008-05-21 22:12:20 +10:00
Andrew Tridgell
03eb236f20 Merge commit 'origin/v4-0-test' into vfs_smb2
(This used to be commit 733937e87a1adcc19492ea2bd138e705701901b6)
2008-05-19 11:40:25 +10:00
Jelmer Vernooij
4c70cda986 Fix a couple (well, little more than that..) of typos.
(This used to be commit a6b52119940a900fb0de3864b8bca94e2965cc24)
2008-05-18 23:02:47 +02:00
Jelmer Vernooij
4c8756f147 Create prototype headers from Makefile directory, without smb_build in the middle.
(This used to be commit f4a77b96f9c17d853348b70794026e5b9e384942)
2008-05-18 22:30:08 +02:00
Jelmer Vernooij
03643aec88 Use variables for source directory in a couple more places.
(This used to be commit c41bd3005f5f0b9cfd3709fc9217b4a401d265b4)
2008-05-18 19:54:27 +02:00
Andrew Tridgell
2994b483c8 fixed file_index reference
(This used to be commit edb4b38ed33b545d8024f45c602d3f5e4a74c511)
2008-05-16 12:46:16 +10:00
Andrew Tridgell
c0e247ab40 better match WSPP doc name for find flags
(This used to be commit 0e4b8602dec3ec87676c91a99371e5d77fe78196)
2008-05-15 20:46:43 +10:00
Stefan Metzmacher
8b5f03a225 smb_server/smb2: handle incoming oplock releases
metze
(This used to be commit 2306394dcc22ff2be8581256a5cf91eef4993078)
2008-04-19 01:54:45 +02:00
Andrew Tridgell
769ebe9171 make smb2 read and write size configurable
(This used to be commit 2090e75e0c28f8d2aada305059bdb455f42ed0d5)
2008-04-17 09:37:29 +02:00
Stefan Metzmacher
79b2980cf5 smb_server/smb2: initialize new create.in.blobs element untill it'll be supported
metze
(This used to be commit fbfbd74e65b1f3e185f08a538bdd50ba7c6ce9bf)
2008-04-17 02:39:29 +02:00
Jelmer Vernooij
e9017ba418 Use _OBJ_FILES variables in a couple more places.
(This used to be commit 92856d5054106894b65cd1a1b5119c0facfc4cff)
2008-04-14 17:22:58 +02:00
Andrew Tridgell
275f32ae2d fill in unknown fields in SMB2 READ call
(This used to be commit 9b686c138037f613da15168d0722786e00f023e5)
2008-04-14 11:31:17 +02:00
Jelmer Vernooij
afe3e8172d Install public header files again and include required prototypes.
(This used to be commit 47ffbbf67435904754469544390b67d34c958343)
2008-04-02 04:53:27 +02:00
Stefan Metzmacher
87f2925252 ntvfs: pass down the client capabilities into the ntvfs layer
Note that we don't use any protocol specific values here.

For now only NTVFS_CLIENT_CAP_LEVEL_II_OPLOCKS is defined
others should be defined, when we find out that the ntvfs
layer needs to know about it.

metze
(This used to be commit cc42cd5f6753ca582677fa6f403f0419eec5ab10)
2008-03-06 16:31:25 +01:00
Jelmer Vernooij
80cbff3d01 Fix build with partial linking.
(This used to be commit bfad9610c472e8d7e3656e19c8dbb6b85727dc13)
2008-02-18 16:02:33 +01:00
Andrew Tridgell
5fb241e5d3 3 places where the VFS backend doesn't handle NULL strings.
(This used to be commit cf109460aff5a8437ab7eba05e4d7316a131080e)
2008-02-18 14:54:14 +11:00
Jelmer Vernooij
e33177001c Remove type before variables in data.mk
(This used to be commit 3c1a7c0dcc56ed5595e31a8df023a04ae95bfca5)
2008-02-14 12:03:34 +01:00
Andrew Tridgell
b640f475be updated SMB2 code for getinfo according to WSPP docs
- Updated getinfo structures and field names
- also updated the protocol revision number handling to reflect
  new docs
(This used to be commit 3aaa2e86d94675c6c68d66d75292c3e34bfbc81b)
2008-02-14 17:11:36 +11:00
Andrew Tridgell
4a04a5e620 A better way to handle the different format of RenameInformation in SMB2
We now define a separate info level RAW_SFILEINFO_RENAME_INFORMATION_SMB2
and set that level when handling SMB2 packets. This makes the parsers clearer.
(This used to be commit f6cdf3f1177f63d80be757f007eb15380839b4f5)
2008-02-14 14:54:21 +11:00
Andrew Tridgell
839ab724dc Fixed SMB2 rename operations from Vista clients
We needed a flag in bufinfo to mark packets as SMB2, as it seems that
SMB2 uses a different format for the RenameInformation buffer than SMB
does

Also handle the fact that SMB2 clients give the full path to the
target file in the rename, not a relative path
(This used to be commit 52d7972d95ddc19d22a4187b4d4428a6c3ed32d5)
2008-02-14 12:30:31 +11:00
Andrew Tridgell
e870cfec9f Convert SMB and SMB2 code to use a common buffer handling structure
This converts our SMB and SMB2 code to use a common structure "struct
request_bufinfo" for information on the buffer bounds of a packet,
alignment information and string handling. This allows us to use a
common backend for SMB and SMB2 code, while still using all the same
string and blob handling functions.

Up to now we had been passing a NULL req handle into these common
routines from the SMB2 side of the server, which meant that we failed
any operation which did a bounds checked string extraction (such as a
RenameInformation setinfo call, which is what Vista uses for renaming
files)

There is still some more work to be done on this - for example we can
now remove many of the SMB2 specific buffer handling functions that we
had, and use the SMB ones.
(This used to be commit ca6d9be6cb6a403a81b18fa6e9a6a0518d7f0f68)
2008-02-14 10:12:33 +11:00
Andrew Tridgell
88d2e05227 updated SMB2 create operation to match WSPP.
Adding some defined for various new create options
(This used to be commit d037dc23ced3df6bce98cbf4810fb5f1247336bd)
2008-02-13 15:05:44 +11:00
Andrew Tridgell
e94d710b0b updated SMB2 tcon as per WSPP docs
(This used to be commit 5913e3e549e71affc66c28cacb6563331fb0c790)
2008-02-13 10:13:28 +11:00
Andrew Tridgell
cd2b003aba fixed crash when 0 dialects (thanks metze!)
(This used to be commit 252bcf207b8117f325075cbb7bd05063756ac283)
2008-02-12 20:29:31 +11:00