Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
|
|
|
|
Previously when a file was created, we produces the resulting access
mask based on an ACL check against the parent. This change means we
now calculate the inherited ACL much earlier, and produce the
resulting access mask from that ACL, or the user supplied ACL.
|
|
metze
|
|
This allows the RAW-STREAMS test to work again. We still have some
limitations though:
- renames of a stream to the default stream doesn't work
- delete on close handling between streams and the main file
is still broken
|
|
Note: that libreplace always provides utimes()
metze
(This used to be commit 61bad69e2d7f84e2c6d6fb82917cfa86b17f54b0)
|
|
metze
(This used to be commit 418e2592b48d558ff1d32031d64263ae21cf1eb0)
|
|
(This used to be commit ad7acbf8bf83c7250dfcbd57f0f4e19e57534a92)
|
|
I'll fix this more correctly very soon,
so that we'll pass the BASE-DELAYWRITE test.
metze
(This used to be commit b09dd6b65d533832a025a51509dcc84f84b048aa)
|
|
metze
(This used to be commit 5a1f0c0ce995064c23e9f726bceddbd8442c4293)
|
|
metze
(This used to be commit 2ecc7ec8b392cf3ec698d168bf6fb7898e1978f1)
|
|
metze
(This used to be commit 9360eda2c5606b2c73edb768af8ca0e8ba310e30)
|
|
metze
(This used to be commit 4b1a266f6fb04c8f923c48ea215ece6b45a18ea7)
|
|
setpathinfo ALLOCATION_INFO and END_OF_FILE_INFO
metze
(This used to be commit 4e27ac8c529d5a1675fb02215191a2be7913ec97)
|
|
END_OF_FILE_INFO
metze
(This used to be commit b258f9d8d4bf3606f4884d1bff548f16dadc08aa)
|
|
This is needed as odb_can_open/pvfs_can_delete changed the return value.
metze
(This used to be commit 1ba0b9a8f1f84c7c949b3d184843462b87446707)
|
|
metze
(This used to be commit e585e2306334bd919f567f53d8d08903dfdfb102)
|
|
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)
|
|
(This used to be commit 9a139c35b7f1326616d26ce13bbdc7d6b22cd9b5)
|
|
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 used to be commit 566aa14139510788548a874e9213d91317f83ca9)
|
|
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)
|
|
and attrib == FILE_ATTRIB_NORMAL means no change...
but for RAW_SFILEINFO_BASIC_INFORMATION attrib == 0 means no change
metze
(This used to be commit e1945feda09a56b6f55bd0f7ab591f3bd069be67)
|
|
- 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)
|
|
I'll add some torture tests later...
metze
(This used to be commit ce045f4df37b6740f2bf849fd06ab51c682ea0b7)
|
|
(This used to be commit ed1b90407d8ef6e0216931cb3a89cc9a7789ead2)
|
|
of w2k3. The behaviour is particularly tricky for rename.
(This used to be commit 4d3b8d95498a328ffc08ecb62d9531b6bfe4e2b5)
|
|
renames, if in the same directory. For renames between directories
generate NOTIFY_ACTION_REMOVED and NOTIFY_ACTION_ADDED
(This used to be commit 2ac248edf05c3ee715165f2b33055de480743e87)
|
|
(This used to be commit adb4ea32e2d5506cb213ea4c0715918042fba084)
|
|
try to include just the BASENAME.h files (containing only structs)
(This used to be commit 3dd477ca5147f28a962b8437e2611a8222d706bd)
|
|
- move it into the in/out substructs again
- allow file.path only on smb_fileinfo/smb_setfileinfo
metze
(This used to be commit be6d5298a2cdb7e7c61d70471bad445645af5963)
|
|
metze
(This used to be commit 29240bae4488749b3f8a2b49bccad1601d1aa184)
|
|
(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)
|
|
test to pass. To try to make the code a bit more understandable, I
moved to using an IDL description of the opendb tdb record format.
One of the larger changes was to make directory opens and creates go
via the opendb code, so directory operations now obey all the share
mode restrictions, as well as delete on close semantics. I also
changed the period over which the opendb locks are held, to try to
minimise races due to two open operations happening at the same time.
(This used to be commit cd2602d05725e1734b0862131dd91601c6b6d51a)
|
|
StrCaseCmp was sys_strcasecmp, while it is in fact strcasecmp_m!
(This used to be commit 200a8f6652cb2de7a8037a7a4c2a204b50aee2b1)
|
|
basic_info. Add null_nttime() as the equivalent of the existing
null_time() call for cheecking for valid NTTIME values
(This used to be commit 439ce2efbf7d2ba9b17d6b4bfaf651e781140715)
|
|
large commit. I thought this was worthwhile to get done for
consistency.
(This used to be commit ec32b22ed5ec224f6324f5e069d15e92e38e15c0)
|
|
(This used to be commit 0e61a422bd9a1596a284c176f033e958bbeaa8ce)
|
|
really the
strange behaviour I saw was a w2k3 bug :-)
(This used to be commit e729061bcde25d0565a72222e4720ca8074ef23f)
|
|
- honor the change ownership requests of acl set, changing the underlying
unix owner/group
- fix the access mask on file create with SEC_FLAG_MAXIMUM_ALLOWED
(This used to be commit 5761fa35ab727b51ef1b52459911bafbdd788755)
|
|
query/set levels
(This used to be commit 75e7229476e1af6ab78fa5b41a7bb67df8e3d2dd)
|
|
now have acl checking,
and obey the various inheritance rules.
(This used to be commit 5fe51807d6b97e68b65f152c0f405e5c5a025d21)
|
|
1, otherwise
the xattrs of the remaining link are removed
- fix the handling of attribute set on directories
(This used to be commit fa44e3cce00b75656c85378c7825960540d2f282)
|
|
(This used to be commit f25c469693517ed993e0379d8b07cd7eb235a669)
|
|
setfileinfo allows
for multiple EAs to be set at once. This fixes all the ea code to allow for that.
(This used to be commit b26828bef5d55e5eef0e34a164e76292df45e207)
|
|
definitions for security access masks, in security.idl
The previous definitions were inconsistently named, and contained many
duplicate and misleading entries. I kept finding myself tripping up
while using them.
(This used to be commit 01c0fa722f80ceeb3f81f01987de95f365a2ed3d)
|
|
- added support for sticky write times after a setfileinfo, by using a
write_time field in the DosAttrib xattr structure.
(This used to be commit 4a52fae82d8305e999f94f1947daa21dab54cdfd)
|
|
based on the current nttoken, which is completely wrong, but works as a start.
The ACL is stored in the xattr system.DosAcl, using a NDR encoded IDL
union with a version number to allow for future expansion.
pvfs does not yet check the ACL for file access. At the moment the ACL
is just query/set.
We also need to do some RPC work to allow the windows ACL editor to be
used. At the moment is queries the ACL fine, but displays an error
when it fails to map the SIDs via rpc.
(This used to be commit 3a1f20d874ab2d8b2a2f2485b7a705847abf1263)
|
|
call has an optional sec_desc and ea_list.
(This used to be commit 8379ad14e3d51a848a99865d9ce8d56a301e8a3c)
|