summaryrefslogtreecommitdiff
path: root/source3/smbd/trans2.c
AgeCommit message (Collapse)AuthorFilesLines
2011-01-25Fix bug #7863 - Unlink may unlink wrong file when hardlinks are involved.Jeremy Allison1-4/+22
Do this by keeping a linked list of delete on close tokens, one for each filename that identifies a path to the dev/inode. Use the jenkins hash of the pathname to identify the correct token.
2011-01-25Add uint32_t name_hash argument (currently unused) to get_file_infos().Jeremy Allison1-4/+4
Will be used when we store more than one delete on close token.
2011-01-20Ensure we don't use "./" in findfirst pathnames. Use a directory open of "." ↵Jeremy Allison1-4/+8
instead.
2010-11-24Add in fsp->access_mask checks. Not required (underlying system does this)Jeremy Allison1-0/+38
but makes logic cleaner. Pointed out by Metze. Jeremy. Autobuild-User: Jeremy Allison <jra@samba.org> Autobuild-Date: Wed Nov 24 01:47:13 CET 2010 on sn-devel-104
2010-11-12s3: Rename GIT_COMMIT_{TIME,DATE} to COMMIT_{TIME,DATE}.Jelmer Vernooij1-2/+2
This avoids some special casing in the waf code.
2010-10-12libcli/security Provide a common, top level libcli/security/security.hAndrew Bartlett1-0/+1
This will reduce the noise from merges of the rest of the libcli/security code, without this commit changing what code is actually used. This includes (along with other security headers) dom_sid.h and security_token.h Andrew Bartlett Autobuild-User: Andrew Bartlett <abartlet@samba.org> Autobuild-Date: Tue Oct 12 05:54:10 UTC 2010 on sn-devel-104
2010-10-06Fix crash in SMB2 rename found by gentest. We must always have an lcompJeremy Allison1-1/+1
in the destination struct for a rename, so set the flag appropriately. Jeremy.
2010-10-06Fix crash in SMB2 rename found by gentest. We must always have an lcompJeremy Allison1-1/+1
in the destination struct for a rename, so set the flag appropriately. Jeremy. Autobuild-User: Jeremy Allison <jra@samba.org> Autobuild-Date: Wed Oct 6 00:29:51 UTC 2010 on sn-devel-104
2010-09-28s3: Lift smbd_server_conn from file_find_di_firstVolker Lendecke1-2/+2
2010-08-31s3-auth Rename NT_USER_TOKEN user_sids -> sidsAndrew Bartlett1-3/+3
This is closer to the struct security_token from security.idl
2010-08-26Fix bug #7651 - mknod and mkfifo fails with "No such file or directory"Jeremy Allison1-2/+2
Ensure we check the correct stat struct once we've created the special fix. Thanks to izh1979@gmail.com for pointing out the bug. Jeremy.
2010-08-24s3: Make srv_send_smb take an sconn instead of a sock fdVolker Lendecke1-2/+2
2010-08-16s3: Remove smbd_server_fd from send_trans2_repliesVolker Lendecke1-2/+2
2010-07-25s3: use dump_data in query FILE_BASIC_UNIX_INFOVolker Lendecke1-8/+3
Jeremy, please check! To me this is a lot more readable than the decimal listing of the bytes.
2010-07-05s3: Remove smbd_messaging_context() from smb_set_posix_lock()Volker Lendecke1-2/+2
2010-06-12s3: Explicitly pass sconn to blocking_lock_was_deferred_smb1Volker Lendecke1-1/+1
2010-06-12s3: Remove smbd_server_conn from reply_findcloseVolker Lendecke1-1/+1
2010-06-12s3: Remove smbd_server_conn from call_trans2setfsinfoVolker Lendecke1-1/+1
2010-06-12s3: Remove smbd_server_conn from smbd_do_qfsinfoVolker Lendecke1-2/+2
2010-06-12s3: Remove smbd_server_conn from call_trans2findnextVolker Lendecke1-1/+1
2010-06-12s3: Remove smbd_server_conn from call_trans2findfirstVolker Lendecke1-1/+1
2010-06-12s3: Remove smbd_server_conn from send_trans2_repliesVolker Lendecke1-1/+1
2010-06-01SMB2: Fix rename on Windows 7.Ira Cooper1-8/+0
This removes some code Jeremy (jra) suspected was bad. It turns out that the command window rename command will not work with the offending code in place. With it removed the bug is gone, and rename works.
2010-05-31s3-build: only use ndr_security.h where needed.Günther Deschner1-0/+1
Guenther
2010-05-29s3:smbd Use the right num_sidsSimo Sorce1-1/+1
We use s_i->ptok->num_sids everywhere else in this call and then suddenly we reference s_i->num_sids
2010-05-20Fix bug #7410 - samba sends "raw" inode number as uniqueid with unix ↵Jeremy Allison1-7/+26
extensions. Move to a consistent get_FileIndex() function for all inode returns, that checks if st_dev on the file is identical to the top directory dev_t of the exported share, and if so uses the raw 64-bit inode number. If it isn't (we've traversed a mount point) - return what we used to do for Windows which is the concatination of the bottom 32-bits of the inode with the 32-bit device number. We can get more creative with this over time (hashing?) if we want as now all inode returns go through this single function. Jeremy.
2010-05-19Fix bug 7442 - Samba returns incorrect SMB2 QFS device info.Jeremy Allison1-2/+9
Add the correct devicetype and characteristics for this info level. Jeremy.
2010-05-18Implement missing info level SMB_FILE_LINK_INFORMATION.Jeremy Allison1-5/+99
Fix bug #7435 - SMB2 hardlink fails (invalid level). Found at the Microsoft plugsharing plugfest. Jeremy.
2010-05-18s3: Remove use of iconv_convenience.Jelmer Vernooij1-2/+0
2010-05-13Fix bug 7399 - SMB2: QUERY_DIRECTORY is returning invalid values.Jeremy Allison1-0/+10
The end_data argument to smbd_dirptr_lanman2_entry() must include the safety margin, as internally it's actually used to allow detection of string name pushes that were truncated. Ensure space_remaining can never go negative due to padding. Jeremy.
2010-05-11Fix more SMB2-OPLOCK bugs. Only 3 more issues to address then we're good to ↵Jeremy Allison1-1/+9
go on this test. Jeremy.
2010-05-07This patch looks bigger than it is. It does 2 things. 1). Renames smbpid -> ↵Jeremy Allison1-14/+14
smblctx in our locking code. 2). Widens smblctx to 64-bits internally. Preparing to use the SMB2 handle as the locking context. Jeremy.
2010-05-06s3: only include gen_ndr headers where needed.Günther Deschner1-0/+1
This shrinks include/includes.h.gch by the size of 7 MB and reduces build time as follows: ccache build w/o patch real 4m21.529s ccache build with patch real 3m6.402s pch build w/o patch real 4m26.318s pch build with patch real 3m6.932s Guenther
2010-04-29Carefully label SMB1-specific locking calls.Jeremy Allison1-1/+1
Jeremy.
2010-04-29Attempt to fix bug #7399 - SMB2: QUERY_DIRECTORY is returning invalid values.Jeremy Allison1-6/+17
Based on an initial patch from Ira Cooper <samba@ira.wakeful.net>. Jeremy.
2010-04-23s3-smbd: group print relate data in own structureSimo Sorce1-1/+6
2010-04-08Simplify call_trans2qfilepathinfo() and smbd_do_qfilepathinfo()Jeremy Allison1-17/+4
Remove the bool ms_dfs_link parameter from smbd_do_qfilepathinfo. It is not possible for this to be a DFS link. Remove the check_msdfs_link() call from call_trans2qfilepathinfo() - the call to filename_convert() above with a ucf_flags of zero *MUST* catch a DFS link and return NT_STATUS_PATH_NOT_COVERED in this case, so the code below checking for msdfs links is redundent. Don't add this to 3.5.x, as it's an optimization but not needed to fix bug #7339 - MSDFS is non-functional in 3.5.x. Jeremy.
2010-04-08Fix bug #7339 - MSDFS is non-functional in 3.5.xJeremy Allison1-0/+1
In the refactoring around filename_convert, the split between the functions resolve_dfspath() and resolve_dfspath_wcard() was lost, leaving us only with resolve_dfspath_wcard(). Internally resolve_dfspath_wcard() calls dfs_redirect() only with a "allow_wcards" flag of true, wheras the old resolve_dfspath() would call with a value of false. The loss of this case causes dfs_redirect to always masquerade DFS links as directories, even when they are being queried directly by a trans2 QPATHINFO call. We should only masquerade DFS links as directories when called from a SMBsearch or trans2 findfirst/findnext - which was the intent of the "allow_wcards" flag. This patch adds back an allow_wcards bool parameter to resolve_dfspath_wcard(). This bool is set from the state of the ucf_flags when filename_convert() is called. I will follow this up with a new smbclient-based torture test that will prevent us from ever regressing our DFS support again. Jeremy.
2010-03-22s3:smbd: disable SMB encryption when the echo handler is activeStefan Metzmacher1-0/+10
metze
2010-03-15Fix bug #7188 - Logic error in check of total_data for call_trans2mkdir()Jeremy Allison1-16/+13
Make ea data checks identical for trans2open and trans2mkdir. Jeremy.
2010-03-05Fix for bug #7189 - Open txt files with notepad on samba shares creates problem.Jeremy Allison1-2/+10
Ensure we don't use any of the create_options for Samba private use. Add a new parameter to the VFS_CREATE call (private_flags) which is only used internally. Renumber NTCREATEX_OPTIONS_PRIVATE_DENY_DOS and NTCREATEX_OPTIONS_PRIVATE_DENY_FCB to match the S4 code). Rev. the VFS interface to version 28. Jeremy.
2010-02-25Fix up debug info on smb2_rename code.Jeremy Allison1-9/+3
Jeremy.
2010-02-25Implement rename/move in SMB2 from Windows7.Jeremy Allison1-0/+109
Jeremy.
2010-02-05Remove now unused variable.Jeremy Allison1-1/+0
Jeremy.
2010-02-05Fix bug 7104 - "wide links" and "unix extensions" are incompatible.Jeremy Allison1-36/+0
Change parameter "wide links" to default to "no". Ensure "wide links = no" if "unix extensions = yes" on a share. Fix man pages to refect this. Remove "within share" checks for a UNIX symlink set - even if widelinks = no. The server will not follow that link anyway. Correct DEBUG message in check_reduced_name() to add missing "\n" so it's really clear when a path is being denied as it's outside the enclosing share path. Jeremy.
2009-12-21Rename reply_doserror() -> reply_force_doserror().Jeremy Allison1-1/+1
Rewrite all calls to reply_nterror(NT_STATUS_DOS()) to reply_force_doserror() and update the comment in smbd/error.c Jeremy.
2009-12-21Remove all calls to reply_doserror - turn them intoJeremy Allison1-17/+17
correct reply_nterror calls. Next rename reply_doserror -> reply_force_doserror and plumb in when NT_STATUS_DOS is used. Jeremy.
2009-12-15Ensure dos_mode can return FILE_ATTRIBUTE_NORMAL, then filter the returned ↵Jeremy Allison1-10/+5
attributes by protocol level. This makes us consistant in returning DOS attrs across all replies. Tested on OS/2 by Günter Kukkukk. Jeremy.
2009-12-02Remove unneeded argument from can_set_delete_on_close(). EnsureJeremy Allison1-4/+5
can_set_delete_on_close() is correctly called before any setting of the disposition bit (clean up the do_unlink() call). Jeremy.
2009-12-01Ensure we don't see the xattr used to store NT security (visible when xattr_tdbJeremy Allison1-1/+1
is used). Allows make test to pass with acl_xattr.so prepended to the vfs modules. Jeremy.