summaryrefslogtreecommitdiff
path: root/source4/ntvfs/posix/pvfs_resolve.c
AgeCommit message (Collapse)AuthorFilesLines
2007-10-10r9792: Rename StrCaseCmp -> strcasecmp_m. All these years I was thinkingJelmer Vernooij1-3/+3
StrCaseCmp was sys_strcasecmp, while it is in fact strcasecmp_m! (This used to be commit 200a8f6652cb2de7a8037a7a4c2a204b50aee2b1)
2007-10-10r7458: don't look at components[-1] :-)Stefan Metzmacher1-0/+2
we now survive the RAW-UNLINK test without crashing metze (This used to be commit c2149963911bf95892e732b744f244fd76ff88c8)
2007-10-10r5037: got rid of all of the TALLOC_DEPRECATED stuff. My apologies for theAndrew Tridgell1-5/+5
large commit. I thought this was worthwhile to get done for consistency. (This used to be commit ec32b22ed5ec224f6324f5e069d15e92e38e15c0)
2007-10-10r4549: got rid of a lot more uses of plain talloc(), instead usingAndrew Tridgell1-1/+1
talloc_size() or talloc_array_p() where appropriate. also fixed a memory leak in pvfs_copy_file() (failed to free a memory context) (This used to be commit 89b74b53546e1570b11b3702f40bee58aed8c503)
2007-10-10r4403: - added ACL inheritance in the pvfs backend. ACLs are now inherited onAndrew Tridgell1-0/+51
file and directory creation via ntcreatex. pvfs now passes the inheritance test in RAW-ACLS - cleaned up the error handling a bit in pvfs_open() (This used to be commit f4dfb63d5395a365961a21388639809fcd3112d0)
2007-10-10r4037: fixed a bunch of "might be uninitialised" warnings after enabling -O1 ↵Andrew Tridgell1-2/+2
in my compile (This used to be commit 0928b1f5b68c858922c3ea6c27ed03b5091c6221)
2007-10-10r3799: - added the bit for FS_ATTR_NAMED_STREAMS support into qfsinfo ↵Andrew Tridgell1-0/+4
filesystem attribute reply - pvfs passes the RAW-STREAMS test (This used to be commit c1a48a7542a52df734b54031f405d574e4c891e3)
2007-10-10r3798: added support for alternate data streams in xattrs into pvfs.Andrew Tridgell1-3/+42
The trickiest part about this was getting the sharing and locking rules right, as alternate streams are separate locking spaces from the main file for the purposes of byte range locking, and separate for most share violation rules. I suspect there are still problems with delete on close with alternate data streams. I'll look at that next. (This used to be commit b6452c4a2068cf7e837778559da002ae191b508a)
2007-10-10r3747: - added some of the infrastructure needed for streams support in pvfsAndrew Tridgell1-2/+2
(the IDL, and the load/save meta-data logic) - changed pvfs_resolve_name() to default to non-wildcard, needing PVFS_RESOLVE_WILDCARD to enable wildcards. Most callers don't want wildcards, so defaulting this way makes more sense. - fixed deletion of EAs (This used to be commit e7afd4403cc1b7e0928776929f8988aa6f15640b)
2007-10-10r3694: added support for the RENAME_INFORMATION level of setfileinfo andAndrew Tridgell1-1/+1
setpathinfo. pvfs now passes the RAW-SFILEINFO test. (This used to be commit 31ac31398ba52dfc554e58edaa7ae257caf5fdc6)
2007-10-10r3658: use handle->fd == -1 as the primary indicator of a directory. ThisAndrew Tridgell1-1/+1
fixes a directory creation problem from WinXP (This used to be commit 4b3afc6c395b430e7e56d8ebe0ddf85c556a5df5)
2007-10-10r3545: initial support for using extended attributes to hold extended dos ↵Andrew Tridgell1-5/+5
attributes of files. I decided to use IDL/NDR to encode the attribute, as it gives us a simple way to describe and extend the saved attributes. The xattr code needs to hook into quite a few more places in the pvfs code, but this at least gets the basics done. I will start encoding alternate data streams streams, DOS EAs etc soon using the same basic mechanism. I'll probably stick to "version 1" for the xattr.idl for quite a while even though it will be changing, as I don't expect anyone to be deploying this in production just yet. Once we have production users we will need to keep compatibility by supporting all the old version numbers in xattr.idl. (This used to be commit c54253ed1b7dce1d14f43e747da61089aea87094)
2007-10-10r3447: more include/system/XXX.h include filesAndrew Tridgell1-0/+1
(This used to be commit 264ce9181089922547e8f6f67116f2d7277a5105)
2007-10-10r3353: don't reference dos.attrib unless its initialisedAndrew Tridgell1-1/+1
(This used to be commit 498799e4260b1c5e2bfc4fac4cba1080e8ec0a04)
2007-10-10r3351: handle far more operations on open directory handles. pvfs was failingAndrew Tridgell1-2/+8
with a wxp client because of qfileinfo operations on directories failing with NT_STATUS_INVALID_HANDLE after the fstat() failed (as pvfs sets f->fd to -1 for directories) (This used to be commit 1993128cb1dbf49db6e3e0387996ecf2a14b8d76)
2007-10-10r3288: - updated the path processing in pvfs to pass the RAW-CHKPATH test. ThisAndrew Tridgell1-31/+50
rather extensive test reveals some really bizarre error code handling in w2k3. - extended and simplified the RAW-CHKPATH test, making it easier to read (note that Samba3 fails the new tests - jra may wish to look) - marked RAW-CHKPATH as pass for pvfs (This used to be commit 32dccf91cfa5b57f84dd6307720b3f45faa10ae0)
2007-10-10r3240: - update the rules for what error codes should be given on theAndrew Tridgell1-9/+107
different type of unlink an seach mismatches - wildcard directory listings that have attribute FILE_ATTRIBUTE_DIRECTORY and match "." or ".." should be failed. - don't set the write_time on SMBclose unless it is non-zero - added much better support for setfileinfo and setpathinfo in pvfs - better (and more efficient) handling of .. and . components in filenames (This used to be commit 9305b07af395a158cb9f0c1c9486f7122c79d357)
2007-10-10r3227: added a per-share option "case insensitive filesystem", that tells theAndrew Tridgell1-6/+12
backend that the underlying filesystem is case insensitive, so it can bypass the directory search if the name is not found. (This used to be commit d84ade90ce7e03ec749d6ae8dcdcb41de85d836e)
2007-10-10r3198: check for too many .. components in filenamesAndrew Tridgell1-1/+16
pvfs now passes RAW-MKDIR (This used to be commit 41adb385f123b8d4cd3fe2eb03d891b6bdcf2361)
2007-10-10r3133: - more consistent error checking in rename and setfileinfoAndrew Tridgell1-0/+19
- add paranoid checking of device/inode change during open to detect race conditions (This used to be commit 043361fed487ed494fa497ffde1007b3f3bc0c29)
2007-10-10r2984: fixed the error code for a non-terminal component of a path name not ↵Andrew Tridgell1-2/+1
existing (This used to be commit c6a922dbd844c69bbba83c259169655d17e9f87f)
2007-10-10r2931: use next_codepoint() to ensure we properly handle multi-byte ↵Andrew Tridgell1-2/+6
characters in pvfs_unix_path() (This used to be commit 0acf95d84c51d564f7215d34364c37ca74a2a150)
2007-10-10r2928: - fixed the handling of reserved names (rejecting them with ↵Andrew Tridgell1-0/+3
ACCESS_DENIED) - don't check for '.' specially in checking for legal names. Longhorn doesn't do this any more, and its a real pain. Longhorn allows for filenames ending in '.', and with as many '.' elements as you like. (This used to be commit 0a475175c53016bfa5b8246819676ddcd8b66feb)
2007-10-10r2927: imported the hash2 name mangling code from Samba3 into Samba4, butAndrew Tridgell1-6/+15
heavily modified to suit the Samba4 architecture. Samba4 with posix backend now passes the BASE-MANGLE test (This used to be commit ed52d69e8a065b6a8df2fb73c89be67acfdbca65)
2007-10-10r2893: added very primitive name mangling support to pvfsAndrew Tridgell1-3/+13
(This used to be commit 749fa73544201f521d9cd3fa972b89cae99bc2c0)
2007-10-10r2786: - match on both long and short name for search posix backendAndrew Tridgell1-2/+8
- a final name component of . is illegal (This used to be commit 11c852170b83e5adbdb58407e1c7d3aeb4ab5bb8)
2007-10-10r2561: completely redid the ntvfs module chaining code, You can now do ↵Andrew Tridgell1-1/+13
something like: ntvfs handler = nbench posix and the nbench pass-thru module will be called before the posix module. The chaining logic is now much saner, and less racy, with each level in the chain getting its own private pointer rather than relying on save/restore logic in the pass-thru module. The only pass-thru module we have at the moment is the nbench one (which records all traffic in a nbench compatibe format), but I plan on soon writing a "unixuid" pass-thru module that will implement the setegid()/setgroups()/seteuid() logic for standard posix uid handling. This separation of the posix backend from the uid handling should simplify the code, and make development easier. I also modified the nbench module so it can do multiple chaining, so if you want to you can do: ntvfs module = nbench nbench posix and it will save 2 copies of the log file in /tmp. This is really only useful for testing at the moment until we have more than one pass-thru module. (This used to be commit f84c0af35cb54c8fdc4933afefc18fa4c062aae4)
2007-10-10r2436: the second big lump of posix vfs code.Andrew Tridgell1-9/+37
this is still just a skeleton, and many of the functions are just based on the simple vfs backend, they are there to allow me to run smbtorture tests against the real parts of the posix backend. (This used to be commit f2fa7fe565e89360dba3bb5434d3a6a36f398348)
2007-10-10r2404: the first large lump of posix vfs stuff.Andrew Tridgell1-0/+303
this is still very much a skeleton (with many limbs missing too!). I am committing this early to get some feedback on the approach taken. (This used to be commit 40d5cae5ebbfe328e193eadb685df6a370730299)