Age | Commit message (Collapse) | Author | Files | Lines |
|
(This used to be commit 67290e0ad69df2f2fe651249c6550b8e32dd641b)
|
|
The approach I have used is as set out in
https://www.securecoding.cert.org/confluence/display/seccode/ARR38-C.+Do+not+add+or+subtract+an+integer+to+a+pointer+if+the+resulting+value+does+not+refer+to+an+element+within+the+array
(This used to be commit 92d5fb531db39be655f0cbd2d75b5f675a0a4cfa)
|
|
(This used to be commit 66d0502228b31533b5d93731128a681992c22eda)
|
|
SMB2. Thanks to Metze for spotting this.
(This used to be commit fbcf3e65b9284e5d1862c98706d7f148a36afe47)
|
|
- Updated getinfo structures and field names
- also updated the protocol revision number handling to reflect
new docs
(This used to be commit 3aaa2e86d94675c6c68d66d75292c3e34bfbc81b)
|
|
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)
|
|
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)
|
|
(This used to be commit d2c6ad55eca27f50a38fc6e2a85032eddb3f0aae)
|
|
(This used to be commit d37136b7abfbba75ef2e5ab855eb3382b9648b8c)
|
|
(This used to be commit f6420d933b5b011d428974f3a2a57edf19e6f482)
|
|
(This used to be commit 566aa14139510788548a874e9213d91317f83ca9)
|
|
number in more places.
(This used to be commit df9cebcb97e20564359097148665bd519f31bc6f)
|
|
(This used to be commit 5085c53fcfade614e83d21fc2c1a5bc43bb2a729)
|
|
(This used to be commit 08bb1ef643ab906f1645cf6f32763dc73b1884e4)
|
|
(This used to be commit 925abf74fa1ed5ae726bae8781ec549302786b39)
|
|
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)
|
|
the windows explorer in longhorn beta3 work.
metze
(This used to be commit 2390c9f24daccec917608cac0870890cdc73cb1c)
|
|
* Move dlinklist.h, smb.h to subsystem-specific directories
* Clean up ads.h and move what is left of it to dsdb/
(only place where it's used)
(This used to be commit f7afa1cb77f3cfa7020b57de12e6003db7cfcc42)
|
|
- the 0xffffffffffffffff seqnum is reserved for SMB2 Break (oplock breaks)
so don't use it in a request. we should someday try to test this...
metze
(This used to be commit 730cdc4475822e28cb400116641294a7f98ad0b5)
|
|
preallocated
- body_size doesn't contain the preallocated byte so don't remove it
metze
(This used to be commit 3cf50e26b7dc11d85c46ef81a36c74acf97085c0)
|
|
is no padding...
the following patch is needed for vista beta2 to connect to samba4
metze
(This used to be commit 58baae8fc463cd2c4e4ce532c153ad80313b03eb)
|
|
as we setup the 1 padding byte for non present dynamic part,
we need to overwrite it when we're getting a real dynamic part,
so we need to remove the buf->size +=1 when we do the first
push to the dynamic part (when buf->dynamic is still but->body + buf->body_fixed)
metze
(This used to be commit f309209629ad1b63a76fc06163a3eeb07dce4c86)
|
|
metze
(This used to be commit 81702c36c28e9e32860c5d91887d2ad2121ce306)
|
|
dynamic size if 0
metze
(This used to be commit c7e8e79d75fd53fa37e9220e5bc9cac7ab574ff6)
|
|
but it's valid in this case
metze
(This used to be commit 92c19b1ba4e89bd1e973e084b254087c98ceac18)
|
|
also if the dynamic flag should be set
metze
(This used to be commit 7829100e1ee79f4f5d24004af221288e19c09b3e)
|
|
(This used to be commit 7af59357b94e3819415b3a9257be0ced745ce130)
|
|
(This used to be commit 507def57cb83a3e12a3c8d60eb833fe47e9ec9e8)
|
|
(This used to be commit 70e7449318aa0e9d2639c76730a7d1683b2f4981)
|
|
request that the server return its own MxAc blob which contains the
maximum allowed access_mask for the returned file handle
(This used to be commit c0288aa8cd46ca384074f89430c226d725c39475)
|
|
an ACL
(This used to be commit ff197092988cee64742f83df23c43ae664a196f9)
|
|
- added a smb2_setinfo call
- added smb2_setinfo_file*() calls
(This used to be commit da0b6fb93683331134ef2f4abd8707e0c3fc6d9d)
|
|
the rest of the packet construction code
(This used to be commit 387ec2b17ff30a1c040b460b498c8fa7d8770593)
|
|
request size, including dynamic portion)
(This used to be commit 1b5cdf92cc7793b08d7c46ef00d4ff696b31c15e)
|
|
- let us push empty strings
metze
(This used to be commit 17c4b6298d757f2e53fe764608504bf737005cbe)
|
|
metze
(This used to be commit e985ab117c6afb2ea575b55bfaa97b0795ec5745)
|
|
of the fixed body part, and +1 if there's a dynamic part
- there're 3 types of dynamic blobs
with uint16_t offset/uint16_t size
with uint16_t offset/uint32_t size
with uint32_t offset/uint32_t size /* aligned to 8 bytes */
- strings are transmitted in UTF-16 with no termination and
packet into a uint16/uint16 blob
metze
(This used to be commit 79103c51e5c752fbdb4d25a0047b65002828df89)
|
|
and the pull ones also a TALLOC_CTX, then we can reuse this functions
in the server later
metze
(This used to be commit 9b616516cae269f0870e9b9a9cecd8ee3f0a9095)
|
|
(This used to be commit d760583e388157ff25e317da06c57e5a42f171bd)
|
|
(This used to be commit d3556cbfa38447d2d385b697c1855b3c13d42744)
|
|
- added a SMB2-SCANGETINFO test for scanning for available info levels
- added names for the info levels I recognise to smb2.h
(This used to be commit fe5986067e2aaca039d70393ccc8761434f18fe6)
|
|
simplies the torture code a lot.
(This used to be commit 7bf1046fbb7fd83fecb2fa645628ba9a17aab037)
|
|
in the call tho.
(This used to be commit 548fbd86b3b114493943b50669bdcba2f4ed87f2)
|
|
metze
(This used to be commit 653f5ccd61f2555bbd49b81c5cc660962b31aa68)
|
|
connects, giving the following output:
Running SMB2-CONNECT
Negprot reply:
current_time = Fri Nov 11 20:10:42 2005 EST
boot_time = Sat Nov 12 10:34:33 2005 EST
Session setup gave UID 0x40000000071
Session setup gave UID 0x140000000075
Tree connect gave tid = 0x7500000001
Tree connect gave tid = 0x7500000005
SMB2-CONNECT took 0.049024 secs
(This used to be commit a24a4c311005dec4c5638e9c7c10e5e2f9872f4d)
|
|
metze
(This used to be commit c0eebe293f341dcf35229c2cbbc3029f6f853abb)
|
|
64bit uid
(This used to be commit 72b34a7c1b66af6be02f66639efc55a19c73e387)
|
|
the call definitions will be in smb2_calls.h, which will play a
similar role that smb_interfaces.h plays for the old SMB protocol
(This used to be commit 4ef3902a8a99a0b8caa81a07ba07830d7cbbc32c)
|
|
experimentation
(This used to be commit 68422dc73f6ea51bf906f3db223ae8abf077aba1)
|