summaryrefslogtreecommitdiff
path: root/source3/modules/vfs_acl_tdb.c
AgeCommit message (Collapse)AuthorFilesLines
2009-07-27Fix the build breakage by #including modules/vfs_acl_common.cJeremy Allison1-3/+5
into acl_tdb and acl_xattr. Duplicates the code size, but keeps the code in common so I don't have to do bug fixes in two places (which is what I really cared about). Jeremy.
2009-07-24Factor out common code into vfs_acl_common.c.Jeremy Allison1-638/+8
Jeremy.
2009-07-24Make acl_tdb match acl_xattr. Large duplication ofJeremy Allison1-68/+225
code here needs tidying up. Compiles but not yet tested. Jeremy.
2009-07-24Fix hash function in acl_xattr to be SHA256, makeJeremy Allison1-10/+10
the hash function selectable. Upgrade version. Compiles but not fully tested yet (coming). Make vfs_acl_tdb.c compile - this needs updating to match acl_xattr (also coming soon). Jeremy.
2009-07-24Make the smbd VFS typesafeVolker Lendecke1-24/+13
2009-07-20s3: Finish plumbing the fsp->fsp_name smb_fname conversion through the modules.Tim Prouty1-53/+45
2009-07-06s3: Plumb smb_filename through SMB_VFS_UNLINKTim Prouty1-9/+18
2009-06-24s3: Plumb smb_filename through SMB_VFS_STAT and SMB_VFS_LSTATTim Prouty1-18/+28
This patch introduces two new temporary helper functions vfs_stat_smb_fname and vfs_lstat_smb_fname. They basically allowed me to call the new smb_filename version of stat, while avoiding plumbing it through callers that are still too inconvenient. As the conversion moves along, I will be able to remove callers of this, with the goal being to remove all callers. There was also a bug in create_synthetic_smb_fname_split (also a temporary utility function) that caused it to incorrectly handle filenames with ':'s in them when in posix mode. This is now fixed.
2009-06-17s3: Change SMB_VFS_OPEN to take an smb_filename structTim Prouty1-5/+15
This was a little messy because of all of the vfs modules I had to touch. Most of them were pretty straight forward, but the streams modules required a little attention to handle smb_filename. Since the use of smb_filename enables the vfs modules to access the raw, over-the-wire stream, a little bit of the handling that was being done by split_ntfs_stream_name has now been shifted into the individual stream modules. It may be a little more code, but overall it gives more flexibility to the streams modules, while also allowing correct stream handling.
2009-05-26Introduce "struct stat_ex" as a replacement for SMB_STRUCT_STATVolker Lendecke1-2/+2
This patch introduces struct stat_ex { dev_t st_ex_dev; ino_t st_ex_ino; mode_t st_ex_mode; nlink_t st_ex_nlink; uid_t st_ex_uid; gid_t st_ex_gid; dev_t st_ex_rdev; off_t st_ex_size; struct timespec st_ex_atime; struct timespec st_ex_mtime; struct timespec st_ex_ctime; struct timespec st_ex_btime; /* birthtime */ blksize_t st_ex_blksize; blkcnt_t st_ex_blocks; }; typedef struct stat_ex SMB_STRUCT_STAT; It is really large because due to the friendly libc headers playing macro tricks with fields like st_ino, so I renamed them to st_ex_xxx. Why this change? To support birthtime, we already have quite a few #ifdef's at places where it does not really belong. With a stat struct that we control, we can consolidate the nanosecond timestamps and the birthtime deep in the VFS stat calls. At this moment it is triggered by a request to support the birthtime field for GPFS. GPFS does not extend the system level struct stat, but instead has a separate call that gets us the additional information beyond posix. Without being able to do that within the VFS stat calls, that support would have to be scattered around the main smbd code. It will very likely break all the onefs modules, but I think the changes will be reasonably easy to do.
2009-03-04Fix crashes when running RAW-ACLs against system with tdb ACL modulesJeremy Allison1-2/+2
(caused by the POSIX pathname fixes). Jeremy.
2009-02-25Use fsp->posix_open in preference if we have it.Jeremy Allison1-5/+5
Jeremy.
2009-02-25Ensure ACL modules work with POSIX paths.Jeremy Allison1-20/+69
Jeremy.
2009-02-19s3: Add extid to the dev/inode pairTim Prouty1-0/+6
This extends the file_id struct to add an additional generic uint64_t field: extid. For backwards compatibility with dev/inodes stored in xattr_tdbs and acl_tdbs, the ext id is ignored for these databases. This patch should cause no functional change on systems that don't use SMB_VFS_FILE_ID_CREATE to set the extid. Existing code that uses the smb_share_mode library will need to be updated to be compatibile with the new extid.
2009-01-15s3: Remove an incorrect constTim Prouty1-1/+1
2009-01-16s3:vfs_acl_tdb: don't leak state_path() to talloc_tos() in acl_tdb_init()Michael Adam1-0/+2
Michael
2009-01-12Covert several persistant tdb files to use state_path() instead of lock_path()Steven Danneman1-1/+1
2008-12-31Rename parent_dirname_talloc() to parent_dirname()Volker Lendecke1-4/+1
2008-12-18Comment out the parent inheritance code (this is incorrect) as wasJeremy Allison1-0/+2
done for POSIX ACLs. Jeremy.
2008-11-19Add functions to delete NTACL on posix ACL set.Jeremy Allison1-77/+135
Jeremy.
2008-11-13Move v2 from timestamp to 16-byte hash. Got the change in before on disk ↵Jeremy Allison1-20/+10
format is fixed. Jeremy.
2008-11-11[s3]vfs_acl_tdb: fix the build.Michael Adam1-1/+1
ndr_push_struct_blob has a different signature in master as well. Michael
2008-11-10Fix the build (ndr_pull_struct_blob has a different signature in master).Jeremy Allison1-1/+1
Jeremy.
2008-11-10Added vfs_acl_tdb.c module to do ACLs completely in userspace. Passes all of ↵Jeremy Allison1-0/+843
RAW-ACLS except for the last test which uses a non-POSIX chown. More testing/documentation to follow. Jeremy.