summaryrefslogtreecommitdiff
path: root/source4/ntvfs/posix
AgeCommit message (Collapse)AuthorFilesLines
2007-10-10r3540: added testing of SMBntcancel in the open/open/close muxAndrew Tridgell4-12/+36
testing. Interestingly, w2k3 does not allow the cancel of an outstanding async open request, whereas it does allow the cancel of an outstanding async lock request. To support this I have changed the pvfs_wait interface to provide a enum on why the event is happening, so the callback can decide what to do. (This used to be commit f23d6a28008a13588cde24b5012ec21e488ac47a)
2007-10-10r3539: much nicer async open delay code.Andrew Tridgell1-95/+83
The previous code didn't handle the case where the file got renamed or deleted while waiting for the sharing violation delay. To handle this we need to make the 2nd open a full open call, including the name resolve call etc. Luckily this simplifies the logic. I also expanded the RAW-MUX test to include the case where we do open/open/open/close/close, with the 3rd open async, and that open gets retried after both the first close and the 2nd close, with the first retry failing and the 2nd retry working. The tests the "async reply after a async reply" logic in pvfs_open(). (This used to be commit eded2ad9c91f5ba587ef4f7f5f5a6dceb4b51ff3)
2007-10-10r3532: make sharing violation delay in pvfs configurable with ↵Andrew Tridgell3-3/+11
"posix:sharedelay = usecs" (This used to be commit c4758776491e5ed9f5b8c387226d1e75bc70eb2e)
2007-10-10r3528: added support for the SMBntcancel() operation, which cancels anyAndrew Tridgell4-1/+36
outstanding async operation (triggering an immediate timeout). pvfs now passes the RAW-MUX test (This used to be commit 3423e2f41461d054067ef168b9b986f62cc8f77c)
2007-10-10r3507: - added deferred replies on sharing violation in pvfs open. TheAndrew Tridgell4-64/+211
deferred reply is short-circuited immediately when the file is closed by another user, allowing it to be opened by the waiting user. - added a sane set of timeval manipulation routines - converted all the events code and code that uses it to use struct timeval instead of time_t, which allows for microsecond resolution instead of 1 second resolution. This was needed for doing the pvfs deferred open code, and is why the patch is so big. (This used to be commit 0d51511d408d91eb5f68a35e980e0875299b1831)
2007-10-10r3481: split out client.h and events.hAndrew Tridgell1-0/+1
(This used to be commit c6f486574470a311e0d336c026103f131451e21e)
2007-10-10r3466: split out request.h, signing.h, and smb_server.hAndrew Tridgell1-0/+2
(This used to be commit 7c4e6ebf05790dd6e29896dd316db0fff613aa4e)
2007-10-10r3463: separated out some more headers (asn_1.h, messages.h, dlinklist.h and ↵Andrew Tridgell3-0/+4
ioctl.h) (This used to be commit b97e395c814762024336c1cf4d7c25be8da5813a)
2007-10-10r3461: another place where "open" was used as a structure elementAndrew Tridgell1-1/+1
(This used to be commit 1087ea830e7aead86d54a1836512e88554afc919)
2007-10-10r3455: some more portability fixes. We nearly compile on solaris again now.Andrew Tridgell3-0/+3
(This used to be commit 4f33247f1ca60416415a61a7afac43c9dc8a61fd)
2007-10-10r3449: more include file reductionAndrew Tridgell1-0/+1
the ldb part isn't ideal, I will have to think of a better solution (This used to be commit 6b1f86aea8427a8e957b1aeb0ec2f507297f07cb)
2007-10-10r3447: more include/system/XXX.h include filesAndrew Tridgell6-0/+6
(This used to be commit 264ce9181089922547e8f6f67116f2d7277a5105)
2007-10-10r3387: fixed pvfs to pass the NTDENY tests. The tricky bit wasAndrew Tridgell3-7/+12
SA_RIGHT_FILE_EXECUTE, which depends on a flags2 bit (This used to be commit c36851d230bcf552ed79322f8358060ab164ec09)
2007-10-10r3373: added better error reporting in pvfs_openAndrew Tridgell1-6/+6
(This used to be commit 22abdfca961a00e7c48ba4231e12f254781d315d)
2007-10-10r3372: fixed the initial directory permissions for pvfs_mkdir()Andrew Tridgell1-3/+3
(This used to be commit 72ddb38a7214a49548a27ef6e6b6e7b0944b01f0)
2007-10-10r3363: added basic support for SA_RIGHT_FILE_EXECUTE, needed for opening ↵Andrew Tridgell2-19/+13
.dll files (This used to be commit ba1bfd51e1b694cb69afe559f695addaf03b4d81)
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 Tridgell3-2/+18
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-10r3336: use a struct ntvfs_async_state to be able to do async chaning of ↵Stefan Metzmacher2-8/+8
ntvfs modules the idea is that a passthru module can use ntvfs_async_state_push() before calling ntvfs_next_*() and in the _send function it calls ntvfs_async_state_pop() and then call the upper layer send_fn itself - ntvfs_nbench is now fully async - the ntvfs_map_*() functions and the trans(2) mapping functions are not converted yet metze (This used to be commit fde64c0dc142b53d128c8ba09af048dc58d8ef3a)
2007-10-10r3323: more warning reductionsAndrew Tridgell1-0/+3
(This used to be commit 5921587ec26e4892efc678421277e4969417d7f5)
2007-10-10r3288: - updated the path processing in pvfs to pass the RAW-CHKPATH test. ThisAndrew Tridgell2-32/+52
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-10r3278: - rewrote the client side rpc connection code to use lib/socket/Andrew Tridgell1-2/+2
rather than doing everything itself. This greatly simplifies the code, although I really don't like the socket_recv() interface (it always allocates memory for you, which means an extra memcpy in this code) - fixed several bugs in the socket_ipv4.c code, in particular client side code used a non-blocking connect but didn't handle EINPROGRESS, so it had no chance of working. Also fixed the error codes, using map_nt_error_from_unix() - cleaned up and expanded map_nt_error_from_unix() - changed interpret_addr2() to not take a mem_ctx. It makes absolutely no sense to allocate a fixed size 4 byte structure like this. Dozens of places in the code were also using interpret_addr2() incorrectly (precisely because the allocation made no sense) (This used to be commit 7f2c771b0e0e98c5c9e5cf662592d64d34ff1205)
2007-10-10r3276: - allow for more than 256 open old style searches (limit currently ↵Andrew Tridgell2-14/+53
set at an arbitrary 5000) - auto-cleanup old searches that the client forgot to close (common with old searches) - expanded the RAW-SEARCH test to test more than 256 old searches, and old search rewind (w2k3 fails this - it appears to not support rewind on old style searches) (This used to be commit bc83d823b2140a10007490bf0101843a886f99a6)
2007-10-10r3268: - fixed wildcard handling in new dirlist codeAndrew Tridgell1-12/+41
- ensure that d_name from readdir is not used after closedir (This used to be commit 5352613342c58192ae00618977041b98cd0ff7b6)
2007-10-10r3262: - new pvfs_dirlist code that reopens the directory between searchAndrew Tridgell4-101/+176
calls. This is needed to allow for "new files appear during a search" behaviour - pvfs now passes RAW-SEARCH (This used to be commit 0d98f7653a1d58510a6cd4c2ac6c5e05c541109c)
2007-10-10r3260: redid the pvfs_dirlist() interface in preparation for a "keepAndrew Tridgell3-55/+79
directory open" implementation, as opposed to the "load the whole directory" interface used now. This will be needed to pass RAW-SEARCH (This used to be commit 692623c6c0a2c6817fddfa77cd1c2525c27145c4)
2007-10-10r3258: fixed "don't change" attribute for RAW_SFILEINFO_BASIC_INFOAndrew Tridgell1-1/+1
(This used to be commit 51f84800d50f44ec47a34e1c922c6197eb794558)
2007-10-10r3255: - fixed 2 uninitialised data errors found with valgrindAndrew Tridgell1-1/+2
- fixed offset of setup words in nttrans reply (This used to be commit 86b5118c2ae605560a196ee014b6134ec2928c5b)
2007-10-10r3254: - expanded the RAW-IOCTL testAndrew Tridgell1-9/+1
- fixed the old ioctl interface to not check handle before failing - pvs now passes RAW-IOCTL (This used to be commit 98f6dbdba46c907039951559ec5f526410fd0039)
2007-10-10r3253: - added rudimentary support for ntioctl in pvfsAndrew Tridgell4-9/+97
- catch the SIGXFSZ signal, which for some completely insane reason is generated in current Linux systems when you write before the maximum offset in a file (maximum is 2^41 on my box). Why wasn't errno good enough for this? - give the right ntstatus code for large offset write failures (This used to be commit 367f0c2af409e4292f727e8a865762a008fd7e67)
2007-10-10r3249: - change_time is closer to ctime than mtimeAndrew Tridgell2-3/+7
- pvfs now passes the RAW-CLOSE test (This used to be commit 98aea91ce67a0c64a98537bfe244495f10672323)
2007-10-10r3248: don't stop searches on failed fill_search_info()Andrew Tridgell1-7/+1
(This used to be commit 4cdd750b5cc9b26dbbaebe58b4f1c3984dac8d6c)
2007-10-10r3247: FILE_ATTRIBUTE_NORMAL is only a null-op for setattr and setattre, not ↵Andrew Tridgell1-1/+1
basic_info (This used to be commit 36286e477c9bc7b6e268fffb123b565b6e897a44)
2007-10-10r3246: new files should get created with FILE_ATTRIBUTE_ARCHIVEAndrew Tridgell1-1/+1
(This used to be commit 090574c6982f703b124a5a123d2199be8f5b3968)
2007-10-10r3241: don't skip the read completely for a zero-length read, as it could ↵Andrew Tridgell1-8/+7
give a lock conflict (This used to be commit 7ce6139f984c72a6347c7a64d95d5278bcf3e868)
2007-10-10r3240: - update the rules for what error codes should be given on theAndrew Tridgell7-66/+327
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 Tridgell4-10/+27
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-10r3207: - reformat error msgs in BASE-DIR* testsAndrew Tridgell4-4/+11
- added support for mandatory attributes in old style directory search - we now pass BASE-DIR1 and BASE-DIR2 (This used to be commit efaa0eaec49e952aa515c3448246d9048a484c26)
2007-10-10r3200: - improved the accuracy of openx emulation. We now nearly pass the ↵Andrew Tridgell2-11/+7
openx portion of RAW-OPEN - fixed directory size reporting to make it consistent. we now pass the ntcreatex portion of RAW-OPEN (This used to be commit 6282e5811b8d4f1c17152d86875ac60d1323779d)
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-10r3195: fill in more of the fsinfo fields, and avoid calling the potentiallyAndrew Tridgell1-25/+102
expensive sys_fsusage() call unless we really need to (This used to be commit 57eb14773b1811fbab2c37d1ff815c1ab07b3685)
2007-10-10r3194: fixed an uninitialised variableAndrew Tridgell1-0/+1
(This used to be commit 8123cfc59edb7b455c7f6511480f0faeb4c9aba8)
2007-10-10r3193: improved the initial permissions choice for file create, based upon ↵Andrew Tridgell2-61/+61
dos attribute (This used to be commit f6fb1e3493a2a0734747f769cd1013215d967cde)
2007-10-10r3192: make sure we don't call pvfs_can_delete() until after we have ↵Andrew Tridgell1-10/+5
confirmed that name->exists it true (This used to be commit d368d2f4fe23bdc13f6b9bbdc044dd158ab61169)
2007-10-10r3189: improved the share_conflict() logic (both in terms of readability andAndrew Tridgell3-11/+24
correctness). pvfs now passes the BASE-RENAME test. (This used to be commit 4cf3f65a5c19fdad62a0bdef225b2d9002cf8c8b)
2007-10-10r3180: - basic support for SEC_RIGHT_MAXIMUM_ALLOWED in pvfsAndrew Tridgell1-2/+14
- RAW-CONTEXT test now passes (This used to be commit 0dae9fef09ec8bce19c39a0caf36e0882e507bc4)
2007-10-10r3179: - fixed error return on utime failureAndrew Tridgell2-2/+3
- formatting fix (This used to be commit 8ca4d7c51e5c76aa28f600d49437a45a8a0d31a9)
2007-10-10r3178: honor the write_time on pvfs_close()Andrew Tridgell1-0/+5
(This used to be commit 4e28c45bafa453eaa94716a5b77d830b81efe6cf)
2007-10-10r3177: check for open files on renameAndrew Tridgell1-0/+5
(This used to be commit c334182095c53b09fcb65a40053b518acb6ec38b)
2007-10-10r3174: added pvfs_is_open() to allow us to check for open files on unlink. WeAndrew Tridgell2-0/+21
now pass BASE-UNLINK. (This used to be commit f23a2f8538bda8f6790e86c93ee22436388b2975)