summaryrefslogtreecommitdiff
path: root/source3/smbd/trans2.c
AgeCommit message (Collapse)AuthorFilesLines
2007-10-10r21717: Support the SMB_QUERY_POSIX_WHOAMI info level on QueryFsInfo.James Peach1-1/+110
(This used to be commit 32c7281f90b042c9f01962c4661faaf979676711)
2007-10-10r21714: Change the VFS interface to use struct timespecJeremy Allison1-43/+48
for utimes - change the call to ntimes. This preserves nsec timestamps we get from stat (if the system supports it) and only maps back down to usec or sec resolution on time set. Looks bigger than it is as I had to move lots of internal code from using time_t and struct utimebuf to struct timespec. Jeremy. (This used to be commit 8f3d530c5a748ea90f42ed8fbe68ae92178d4875)
2007-10-10r21672: The cannonical file access pattern should look like this :Jeremy Allison1-22/+22
srvstr_get_path(inbuf, name, smb_buf(inbuf) + 1, sizeof(name), 0, STR_TERMINATE, &status); if (!NT_STATUS_IS_OK(status)) { return ERROR_NT(status); } RESOLVE_DFSPATH(name, conn, inbuf, outbuf); status = unix_convert(conn, name, False, NULL, &sbuf); if (!NT_STATUS_IS_OK(status)) { return ERROR_NT(status); } status = check_name(conn, name); if (!NT_STATUS_IS_OK(status)) { return ERROR_NT(status); } Make sure that every access pattern (including the wildcard generated paths from unlink, rename, and copy) do the same. Tidy things up a bit.... Jeremy. (This used to be commit b8327b21ddf518d34c6cd6c01bd7fc0fd3f63c0c)
2007-10-10r21667: posix_unlink should break existing oplocks.Jeremy Allison1-1/+1
Jeremy. (This used to be commit 8a90d5dd4f396e5ba207efabc6d852fe4b418310)
2007-10-10r21645: Make posix_unlink work - on open files too !Jeremy Allison1-1/+24
Jeremy. (This used to be commit 98f4b64574ef205ec87401b4bf5eed89f2933fa1)
2007-10-10r21644: Allow mkdir on platforms with no O_DIRECTORY.Jeremy Allison1-0/+31
Add proper debug to all possible setfilepathinfo functions. Jeremy. (This used to be commit 3c47a5ef258d536504759a02f6d84c0ab0af7224)
2007-10-10r21638: Change POSIX_UNLINK to allow clients to differentiateJeremy Allison1-0/+12
between unlink/rmdir calls. Jeremy. (This used to be commit f0c8488d382ada32fabe79399f64ba1c6486d009)
2007-10-10r21603: Horrible backwards compatibility hack as an old server bugJeremy Allison1-1/+11
allowed a CIFS client bug to remain unnoticed :-(. I suck. Jeremy. (This used to be commit 29761173ee26b4713c9a12166a935c066fc3321b)
2007-10-10r21379: Attempt to fix the build on "gwen"Volker Lendecke1-1/+1
(This used to be commit 3d85eb758d2261e0749f6db0ce368a7c0d4df149)
2007-10-10r21247: In the refactoring I dropped a RESOLVE_DFSPATH callJeremy Allison1-2/+9
from setpathinfo. Return it and make sure all paths go through a dfs resolve. Jeremy. (This used to be commit 7fd3a146c11b70428ab5fbd7dc0272706abf8280)
2007-10-10r21246: Remove incorrect control on unix set info.Jeremy Allison1-6/+2
We can take path or handle based calls. Jeremy. (This used to be commit a19fe0f0c4a809d9b086e904586243949f57ec96)
2007-10-10r21229: Don't indirect through a potentially null pointer :-).Jeremy Allison1-5/+6
Jeremy. (This used to be commit 6723f9d85ccb4883f15658aceb021b4c4a752edf)
2007-10-10r21227: Quick fix for Stevef - ensure the returned data on openJeremy Allison1-6/+10
is 8 byte aligned. Jeremy. (This used to be commit 7645044fcf77644839bb0d74163d93d03284bd67)
2007-10-10r21210: Fix POSIX open to return an info level.Jeremy Allison1-54/+96
Jeremy. (This used to be commit 5fa720f04f5d3b736145f9323aa8f4e623c14a41)
2007-10-10r21207: Make the code match the spec :-).Jeremy Allison1-8/+25
Jeremy. (This used to be commit 36afae2d48a3c3e97d1c2c35275f99d51ba2b64a)
2007-10-10r21191: Add in the POSIX open/mkdir/unlink calls.Jeremy Allison1-4/+286
Move more error code returns to NTSTATUS. Client test code to follow... See if this passes the build-farm before I add it into 3.0.25. Jeremy. (This used to be commit 83dbbdff345fa9e427c9579183f4380004bf3dd7)
2007-10-10r21131: Some notify fixesVolker Lendecke1-0/+10
(This used to be commit b9300e1d5acba4e2537fcc6631d1ee4d53685f64)
2007-10-10r21097: Ensure that when manipulating UNIX permissions viaJeremy Allison1-14/+57
the UNIX extensions we use the correct mask/force mask settings for new and existing files/directories. Bug reported by Juran David <ext-david.juran@nokia.com>. Jeremy. (This used to be commit d84af53666369c314f02faa09b708ec6f971fa28)
2007-10-10r21073: Fix compiler warningVolker Lendecke1-2/+2
(This used to be commit 3977ee027f500c76bcfd3de34301d3959e9b6d2b)
2007-10-10r21067: Finished refactoring setqpathinfo to be readableJeremy Allison1-385/+430
and modifiable by other people. Now to look over the build farm and fix any breakage. Jeremy. (This used to be commit 997259f2479842ee888621ae2d5446797b3a7cb6)
2007-10-10r21063: All case statements are now NTSTATUS returningJeremy Allison1-175/+218
functions. Now to factor out the post processing and make all cases behave the same (no mixture of "early returns" and "break"s. Jeremy (This used to be commit 7e17e54cb729e34c935927fe69a43690c7f446ae)
2007-10-10r21062: Should fix the build plus make all refactoredJeremy Allison1-212/+174
functions return NTSTATUS. Jeremy. (This used to be commit 1f3c2b2abca6f1b3b59b73df038832e14106ff76)
2007-10-10r21061: Refactoring all the cases into NTSTATUS returns.Jeremy Allison1-69/+99
Jeremy. (This used to be commit da4ce69d4057c241cf7b4b6b0dd2bf711dd28a43)
2007-10-10r21060: Start refactoring out the non-return case statementsJeremy Allison1-35/+64
into functions. Jeremy. (This used to be commit 461db3c8ed045cac70eccf3200bf9163dbce5826)
2007-10-10r21058: Finish the easy refactoring - split out all the caseJeremy Allison1-158/+213
statements that do early return. Next will be case statements that need post processing, finally on to qfilepathinfo and do the same. Jeremy. (This used to be commit c961d5ce94a8bf2e2ffba645e522f0e2e372e351)
2007-10-10r21057: More refactoring into functions.Jeremy Allison1-63/+93
Jeremy. (This used to be commit fe2d7cb2dcd7c4d25d71f196aa557ce3e287bb4c)
2007-10-10r21054: More function refactoring.Jeremy Allison1-24/+52
Jeremy. (This used to be commit b6f43e9509cfedbf77c883cff793c469d6f86370)
2007-10-10r21053: More refactoring and fix the tests (set position infoJeremy Allison1-53/+93
on a pathname is ignored). Jeremy. (This used to be commit 3c7a876c909d3ba1fdf8f0e38735279a874ab245)
2007-10-10r21052: Refactoring.Jeremy Allison1-25/+43
Jeremy. (This used to be commit 9e31d7dba383c5c14f746537a631a4119dac0cd0)
2007-10-10r21051: More function refactoring... Added #if 0 forJeremy Allison1-34/+55
questionable practice (ignoring bad fsp on handle based call). Jeremy. (This used to be commit 5a8c9286c30319f2d2685d4ae29db37679b87e02)
2007-10-10r21050: Factor out SMB_SET_FILE_DISPOSITION_INFO. MyJeremy Allison1-23/+57
intent is to factor out all cases where we always return from the case. Jeremy. (This used to be commit 3eca52ba435954f338281f0a9d00b942bab28bab)
2007-10-10r21049: Start to refactor some of the setpath set codeJeremy Allison1-74/+73
into separate functions (tridge mailed me a fresh batch) to make it easier to add the POSIX open we'll need soon. Jeremy. (This used to be commit 63bd8759fefe6af80186ab15b470658614690b48)
2007-10-10r21035: Remove unneeded checks on incoming uid/gid forJeremy Allison1-15/+35
mknod (fifo) unix extensions code. Problem discovered by Anders Karlsson <anders.karlsson@redhat.com>. Jeremy. (This used to be commit ec6033ad7c8d343969e3dcf59232cb16d075364f)
2007-10-10r21002: Get rid of unused macros - merge change from 3_0_24Herb Lewis1-24/+24
(This used to be commit 9d23cf0cc4a8974bf0cf74b219a1138383083360)
2007-10-10r20931: This changes the notify infrastructure from a polling-based to an ↵Volker Lendecke1-1/+0
event-driven based approach. The only remaining hook into the backend is now void *(*notify_add)(TALLOC_CTX *mem_ctx, struct event_context *event_ctx, files_struct *fsp, uint32 *filter); (Should we put this through the VFS, so that others can more easily plug in?) The trick here is that the backend can pick filter bits that the main smbd should not handle anymore. Thanks to tridge for this idea. The backend can notify the main smbd process via void notify_fsp(files_struct *fsp, uint32 action, char *name); The core patch is not big, what makes this more than 1800 lines are the individual backends that are considerably changed but can be reviewed one by one. Based on this I'll continue with inotify now. Volker (This used to be commit 9cd6a8a82792b7b6967141565d043b6337836a5d)
2007-10-10r20873: Some correctness fixes w.r.t. Samba4 torture BASE-DELETE.Jeremy Allison1-2/+12
Allow us to correctly refuse to set delete on close on a non-empty directory. There are still some delete-on-close wrinkles to be fixed, but I understand how to do that better now. I'll fix this tomorrow. Jeremy. (This used to be commit 029635885825a5562e7974a6f5675cce3bf1b5dc)
2007-10-10r20844: Somewhat radical change - this may break the build (I willJeremy Allison1-22/+32
watch carefully - so I'm doing it in one transaction so I can roll back). Change check_name(), reduce_name() and dptr_create() to return NTSTATUS. This helps a lot in error path processing and especially in reduce_name() allows us to ditch the flaky and error-prone saving of errno and return errors directly. Jeremy. (This used to be commit 6133a694aa429d638320e39ffe1c49d172583ccf)
2007-10-10r20781: Fix a couple of paths found by Volker where we weren'tJeremy Allison1-0/+6
correctly handling deferred opens. Jeremy. (This used to be commit e47b79d1cef279a1de1128d114d423c1fd2b1e8d)
2007-10-10r20721: Fix the search unix_convert error returns. Only openJeremy Allison1-1/+1
to go... Jeremy. (This used to be commit 89f03a8db40365f99c6755ff19a4bfbf8d1bd316)
2007-10-10r20718: Sync up the filename path parsing changes from SAMBA_3_0_24.Jeremy Allison1-57/+31
The only difference between the two trees now w.r.t file serving are the changes to smbd/open.c in this branch I need to review. Jeremy. (This used to be commit f4474edf6a0c71001dbd01429ef70bafad6abd74)
2007-10-10r20612: A checkin I've wanted to do for ages: For bad_path==False ↵Volker Lendecke1-38/+11
set_bad_path_error is equivalent to UNIX_ERROR. Expand the last reference. Lets see if I can kill that as well :-) Volker (This used to be commit 794d5d38f19601bb5b30b965b41b844aacf1caeb)
2007-10-10r20611: All but one callers to set_bad_path_error have had the ↵Volker Lendecke1-11/+22
bad_path==True argument being handled further up. Volker (This used to be commit 358673c36697a16aa87f9cebbace34abf16ed28e)
2007-10-10r20608: ENOENT->NT_STATUS_OBJECT_NAME_NOT_FOUND is covered in the standard ↵Volker Lendecke1-6/+2
unix error mapping table (This used to be commit 816c19aaeb812a94fd5669174c9beec60ce1a73f)
2007-10-10r20496: Some changes to make Samba3 the RAW-OPEN test. Checking in to both ↵Volker Lendecke1-2/+6
3_0 and 3_0_24 because I was explicitly asked to, although this needs close review. Jeremy, I'm sure you will check this thoroughly :-) In reply_open_and_X the separate "size" variable kills the calculation of the SPARSE flag returned to the client in the attrib field. In getpathinfo we do it correctly, and RAW-OPEN (correctly) complains about the difference. Add the "set the write time" to mknew and create. For trans2open we were missing the "ofun == 0" -> NT_STATUS_OBJECT_NAME_COLLISION case, and we dropped the status returned in favor of ACCESS_DENIED once too many. Last change is a fix to trans2open: We were returning the attributes given by the client, not the attributes of the new file. Volker (This used to be commit 84e6889632c7f98a7cb37036b0acdf538d50d16c)
2007-10-10r20424: No, we do not have to do that here :-)Volker Lendecke1-13/+1
(This used to be commit 49a463a97a4f800977ed3a657714e7f3b17bbf21)
2007-10-10r20412: Placeholder to remind me to write a torture testJeremy Allison1-0/+7
for this error code. Jeremy. (This used to be commit 71b868611671a6c9275fce153794a0ccc150551f)
2007-10-10r20363: Fix any possible valgrind errors in srvstr_get_XX or srvstr_pull_XXJeremy Allison1-16/+29
by ensuring we pass in a valid src_len (or zero when appropriate). Volker is correct in that this is a *horrible* interface and he is now free to generally clean it up everywhere :-). Go for it Volker ! Jeremy. (This used to be commit cd991fb839994dd29dc790b655f5597fa1e12843)
2007-10-10r20362: Fix valgrind issues where we may read paramsJeremy Allison1-17/+41
before checking length. Found by Volker. Jeremy. (This used to be commit 683c5fce6896236a60145f6d3970566503c39163)
2007-10-10r20356: Consolidate the calls to parent_dirname() per open to one.Volker Lendecke1-2/+3
This involved passing the dirname as argument to a few routines instead of calling parent_dirname() deep down. Volker (This used to be commit 7977fd78652897bb7d4db1c21c5749043428f911)
2007-10-10r20336: Fix some memleaks in trans2open and simplify trans2mkdir a bit: We ↵Volker Lendecke1-21/+5
now have tmp_talloc_ctx(). Volker (This used to be commit 165d28f03a82a1a07d0f86c0d5de4a785ea5c7f0)