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

53 Commits

Author SHA1 Message Date
Gary Lockyer
412afb2aef Fix ubsan null pointer passed as argument 2
Fix ubsan warning null pointer passed as argument 2 when the source
pointer is NULL.  The calls to memcpy are now guarded by an
if (len > 0)

Signed-off-by: Gary Lockyer <gary@catalyst.net.nz>
Reviewed-by: Andreas Schneider <asn@samba.org>

Autobuild-User(master): Gary Lockyer <gary@samba.org>
Autobuild-Date(master): Mon May 27 01:29:48 UTC 2019 on sn-devel-184
2019-05-27 01:29:48 +00:00
ouyang.xu
98ea4a2219 pvfs_open win10 fix, need return SMB2_CREATE_TAG_QFID
Signed-off-by: kkhaike <kkhaike@gmail.com>
Reviewed-by: Jeremy Allison <jra@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Reviewed-by: Uri Simchoni <uri@samba.org>

Autobuild-User(master): Uri Simchoni <uri@samba.org>
Autobuild-Date(master): Fri Aug 19 09:35:15 CEST 2016 on sn-devel-144
2016-08-19 09:35:14 +02:00
Jelmer Vernooij
f9ca9e46ad Finish removal of iconv_convenience in public API's. 2010-05-18 11:45:30 +02:00
Andrew Tridgell
80a37beb53 s4-pvfs: move the private ntcreatex flags to private_flags
Re-using two of the create_options bits was bound to eventually
cause problems, and indeed, Windows7 now uses one of those bits
when opening text files.

Fixes bug 7189
2010-03-05 16:12:05 +11:00
Matt Kraai
d8071e7ed7 Change uint_t to unsigned int in source4
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2010-02-02 07:18:18 +01:00
Andrew Tridgell
46b7938d7e s4-smbserver: removed bogus initialisation of two union arms
Thanks to Metze for spotting this.
2009-10-17 13:12:24 +11:00
Andrew Tridgell
d72b5a81ef s4-smb: fill in fnum as well for root_fid
This helps with the CIFS NTVFS backend, but doesn't solve all problems
2009-10-15 20:50:49 +11:00
Andrew Tridgell
dab799e569 s4-smbserver: fixed root_fid in nttrans create 2009-10-15 20:03:01 +11:00
Andrew Tridgell
3c028ff88b s4-smb: declare root_fid as a file handle
In order to implement root_fid in the s4 SMB server we need to declare
it as a handle type, just as for other fnum values in SMB. This
required some extensive (but simple) changes in many bits of code.
2009-10-15 20:03:00 +11: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
809632c3df initialise query_maximal_access here too
(This used to be commit 4b3af09450cf33c6785a3d8fddddc68047f2e388)
2008-07-24 14:21:31 +10:00
Stefan Metzmacher
8bf2127313 smb_server/smb: handle incoming multi fragmented nttrans requests
metze
(This used to be commit 9a5f7bf68b20e3b490b209b5cfc4408566320f2e)
2008-07-07 20:59:19 +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
903ea3d36d smb_server: pass down RAW_RENAME_NTTRANS to the ntvfs layer
metze
(This used to be commit 80711c03e0e8fba6f80261facd939ef00e06c7fd)
2008-03-11 20:16:51 +01:00
Amin Azez
17af5a9f42 Use 32 bit storage for nttrans counts
Erroneous 16bit storage for nttrans counts meant that nttrans behaved
"strangely" for sizes of over 64K

As 32 bit is used in the SMB message and specified in
http://us4.samba.org/samba/ftp/specs/draft-leach-cifs-v1-spec-02.txt
section 3.13.2
this fix changes storage to match.

Signed-off-by: Amin Azez <azez@ufomechanic.net>
(This used to be commit d66b6c3823f003875e3b7cdf63617a894cceadf9)
2008-03-07 12:10:48 +01: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
Amin Azez
a72a4efa69 Fix sending of large nttrans responses.
req_grow_data was growing the original req, not this_req which
was being used for the current fragment.
(This used to be commit 2ac47f5ab670f971f41f99700dbfb3655fd6737f)
2008-02-01 06:36:32 +01:00
Jelmer Vernooij
7d5f0e0893 r26639: librpc: Pass iconv convenience on from RPC connection to NDR library, so it can be overridden by OpenChange.
(This used to be commit 2f29f80e07adef1f020173f2cd6d947d0ef505ce)
2008-01-01 16:12:15 -06:00
Jelmer Vernooij
86dc05e99f r26638: libndr: Require explicitly specifying iconv_convenience for ndr_struct_push_blob().
(This used to be commit 61ad78ac98937ef7a9aa32075a91a1c95b7606b3)
2008-01-01 16:12:11 -06:00
Jelmer Vernooij
d891c0c74a r26429: Avoid use of global_smb_iconv_convenience.
(This used to be commit d37136b7abfbba75ef2e5ab855eb3382b9648b8c)
2007-12-21 05:49:56 +01:00
Jelmer Vernooij
39ee38d9c1 r26316: Use contexts for conversion functions.
(This used to be commit f6420d933b5b011d428974f3a2a57edf19e6f482)
2007-12-21 05:48:30 +01:00
Stefan Metzmacher
529763a9aa r25920: ndr: change NTSTAUS into enum ndr_err_code (samba4 callers)
lib/messaging/
lib/registry/
lib/ldb-samba/
librpc/rpc/
auth/auth_winbind.c
auth/gensec/
auth/kerberos/
dsdb/repl/
dsdb/samdb/
dsdb/schema/
torture/
cluster/ctdb/
kdc/
ntvfs/ipc/
torture/rap/
ntvfs/
utils/getntacl.c
ntptr/
smb_server/
libcli/wrepl/
wrepl_server/
libcli/cldap/
libcli/dgram/
libcli/ldap/
libcli/raw/
libcli/nbt/
libnet/
winbind/
rpc_server/

metze
(This used to be commit 6223c7fddc972687eb577e04fc1c8e0604c35435)
2007-12-21 05:45:02 +01:00
Andrew Tridgell
0479a2f1cb r23792: convert Samba4 to GPLv3
There are still a few tidyups of old FSF addresses to come (in both s3
and s4). More commits soon.
(This used to be commit fcf38a38ac691abd0fa51b89dc951a08e89fdafa)
2007-10-10 14:59:12 -05:00
Andrew Tridgell
21650cf377 r21206: - a couple more nttrans places were a memcpy() should be used
- changed the setup array in nttrans to be a uint8 array, instead of a
  uint16 array. This makes it clearer that it is the job of the caller
  to do any byte swapping within that data
(This used to be commit fa3c9b29ae1c7c6a9bc97484cc386aeec9b5d266)
2007-10-10 14:44:45 -05:00
Volker Lendecke
2342219d69 r21183: Commit the big/little endian fix for nttrans setup[] handling.
Please check!

For code symmetry reasons, trans2 might also see this fix, but this is left to
the interested reader :-)

Volker
(This used to be commit f2d364ebe69fc5d624e456cc7d941071811a5567)
2007-10-10 14:44:43 -05:00
Stefan Metzmacher
a8958391e8 r16980: - make struct smb_notify a union and add levels RAW_NOTIFY_NTTRANS,RAW_NOTIFY_SMB2
- parse SMB2 Notify reponse

metze
(This used to be commit de50e0ccddfad16ad7b254770f4c52c1abe707b9)
2007-10-10 14:10:06 -05:00
Stefan Metzmacher
9ef33f5f5c r15734: This is a major change to the NTVFS subsystem:
- to use a struct ntvfs_handle instead of a uint16_t fnum.
  (to make it independend from the frontend protocol)
- the allocation of handles now is provided by the frontend
  (smbsrv_*) via callbacks and not by each backend module
- this also makes sure that file handles are only passed
  to the ntvfs subsystem when the tcon and session matches,
  so modules can rely on this and need to check this.
- this allows multiple modules in the ntvfs module chain
  to allocate file handles. This can be used for virtual
  files like "\\$Extend\\$Quota:$Q:$INDEX_ALLOCATION"...
- also this will make SMB2 with 128 bit file handles possible

metze
(This used to be commit 287fc1c22d670f6e568014b420f7f4cb31dc7958)
2007-10-10 14:08:10 -05:00
Stefan Metzmacher
82fd602cf0 r15714: fix async handling of ntioctl calls and push the DATA_BLOB into the reply
metze
(This used to be commit 0ac9a49f42719914e63758ea4e53cab65dcdd317)
2007-10-10 14:08:08 -05:00
Stefan Metzmacher
5445415b82 r15711: - make use of nttrans_setup_reply()
metze
(This used to be commit a870c084f6a97fc4f165510e9d447d97f0ee328f)
2007-10-10 14:08:08 -05:00
Stefan Metzmacher
2adbcc3965 r15710: - we no longer need to set the nttrans out fields to zero
in the backends
- some whitespace cleanups

metze
(This used to be commit 6a0c24c73e1060824576d60459d4636848f2173a)
2007-10-10 14:08:07 -05:00
Stefan Metzmacher
0fc977c54d r15709: - return an error is better than ignoring a non supported request
- zero nttrans output fields before calling the backends

metze
(This used to be commit b21d98a87590b00c63ccc47b71518f1714ecb29d)
2007-10-10 14:08:07 -05:00
Stefan Metzmacher
a3cc3c9c1f r15708: setup count is 8bit and param_count and data_count are 32bit
metze
(This used to be commit 6bc89b422ccdfca6d383b8474452d57b55dfaed6)
2007-10-10 14:08:07 -05:00
Stefan Metzmacher
5ff4b74df3 r15656: for NT IOCTL's we need to control the max_data field for some calls
metze
(This used to be commit 3cab02f6f513cf7eb3d8863e62952766bb4d908f)
2007-10-10 14:08:04 -05:00
Stefan Metzmacher
410fb90322 r15640: - NT IOCTL calls also have an 'in' data_blob
- fix the receive code of NT IOCTL's we only need the NTTRANS data payload
  not the SMB payload here

metze
(This used to be commit 358d03143f0a78344c1af720e33ebe2619df09df)
2007-10-10 14:07:25 -05:00
Andrew Tridgell
11963877ab r14807: fixed the format of notify responses (forgot to commit this earlier)
(This used to be commit fb91a37e926963acfc90fe276a33c7a329a023e8)
2007-10-10 13:59:22 -05:00
Stefan Metzmacher
8ae3773bc4 r14638: we need to call smbsrv_setup_reply() before using smbsrv_setup_error()
tridge: can you please check if the whole function ok?

jelmer: this fixes a crash bug, when asking for Security Descriptors
        and should be in the TP2

metze
(This used to be commit b5edcde79339be0fec94e440a87c8191cf53e937)
2007-10-10 13:59:03 -05:00
Stefan Metzmacher
61fa658ebc r14541: separate smbsrv_request and ntvfs_request,
with this it's now possible to write a
ntvfs_test programm like the vfstest in samba3

also smb2 support will be possible later

metze
(This used to be commit 7253153691e35cd206346fbd4e9b9f95c042f602)
2007-10-10 13:58:41 -05:00
Andrew Tridgell
9225c02aee r14539: get rid of a pointless union layer in struct smb_notify
(This used to be commit 1e1c5593817e84c59c1a10b5a3c1957e363e5198)
2007-10-10 13:58:41 -05:00
Jelmer Vernooij
8528016978 r14464: Don't include ndr_BASENAME.h files unless strictly required, instead
try to include just the BASENAME.h files (containing only structs)
(This used to be commit 3dd477ca5147f28a962b8437e2611a8222d706bd)
2007-10-10 13:57:27 -05:00
Stefan Metzmacher
a1b295ed48 r14256: - rename smb_file -> smb_handle
- move it into the in/out substructs again
- allow file.path only on smb_fileinfo/smb_setfileinfo

metze
(This used to be commit be6d5298a2cdb7e7c61d70471bad445645af5963)
2007-10-10 13:57:06 -05:00
Stefan Metzmacher
307e43bb56 r14173: change smb interface structures to always use
a union smb_file, to abtract
- const char *path fot qpathinfo and setpathinfo
- uint16_t fnum for SMB
- smb2_handle handle for SMB2

the idea is to later add a struct ntvfs_handle *ntvfs
so that the ntvfs subsystem don't need to know the difference between SMB and SMB2

metze
(This used to be commit 2ef3f5970901b5accdb50f0d0115b5d46b0c788f)
2007-10-10 13:56:57 -05:00
Stefan Metzmacher
86497db611 r14157: - pass a struct ntvfs_request to the ntvfs layer
(for now we just do #define ntvfs_request smbsrv_request,
   but it's the first step...)
- rename ntvfs_openfile() -> ntvfs_open()
- fix the talloc hierachie in some places in the ntvfs_map_*() code

metze
(This used to be commit ed9ed1f48f602354810937c0b0de850b44322191)
2007-10-10 13:56:55 -05:00
Andrew Tridgell
9259790df7 r14142: fixed ascii padding of nttrans create in server too
(This used to be commit 2cd4cd1674b7491abf796f625ee098bb2c03e631)
2007-10-10 13:56:54 -05:00
Andrew Tridgell
276162cc9d r14013: added construction of the notify reply buffer in the nttrans server
code

the RAW-NOTIFY test now passes against the CIFS backend
(This used to be commit e03a2e2de2ad7cd7e692248a681a46ffc1447541)
2007-10-10 13:52:36 -05:00
Andrew Tridgell
418befec18 r14011: - added a ntvfs_notify op to allow backends to support change notify
- converted the nttrans server side code to be async (needed for change notify)

This is the start of some work on supporting change notify via a new
approach. More soon.
(This used to be commit 0ad70bfd83b4a03c0e67f11f63822b833be67aa1)
2007-10-10 13:52:36 -05:00
Stefan Metzmacher
edd5b847bc r13877: remove smbsrv_send_dos_error() and use smbsrv_send_error(..,NT_STATUS_DOS())
metze
(This used to be commit 60d7920527cd0e4142427fa59b9e617d99e3d984)
2007-10-10 13:52:19 -05:00
Stefan Metzmacher
a0e66eac7d r13870: prefix more functions with smbsrv_
metze
(This used to be commit e6275db7b926d3660ad4a0f40041a5129001427a)
2007-10-10 13:52:19 -05:00
Stefan Metzmacher
b58f6e543d r13865: prefix functions with smbsrv_
metze
(This used to be commit 2af96632757ee4bb0261b1871100008b48c5fd4d)
2007-10-10 13:52:18 -05:00
Jelmer Vernooij
d4de4c2d21 r12608: Remove some unused #include lines.
(This used to be commit 70e7449318aa0e9d2639c76730a7d1683b2f4981)
2007-10-10 13:49:03 -05:00