Age | Commit message (Collapse) | Author | Files | Lines |
|
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.
|
|
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.
|
|
1) Add in smb_file_time struct to clarify code and make room for createtime.
2) Get and set create time from SMB messages.
3) Fixup existing VFS modules + examples Some OS'es allow for the
setting of the birthtime through kernel interfaces. This value is
generically used for Windows createtime, but is not settable in the
code today.
|
|
Jeremy.
|
|
No functional change, this is a preparation for more current_user ref removal
(This used to be commit dcaedf345e62ab74ea87f0a3fa1e3199c75c5445)
|
|
(This used to be commit fdc03c0a5ba0da4fbc4610880e06150c11d4c737)
|
|
(This used to be commit 344d69f95e217d16213eaa6b53141af6ab459708)
|
|
(This used to be commit 368454a27cb53a408ec416cbf37235b304592fb5)
|
|
(This used to be commit 2834dacc8d49f77fe55fb5d7e3eb2dda431d1d3d)
|
|
(This used to be commit fd34ce437057bb34cdc37f4b066e424000d36789)
|
|
bugs in various places whilst doing this (places that assumed
BOOL == int). I also need to fix the Samba4 pidl generation
(next checkin).
Jeremy.
(This used to be commit f35a266b3cbb3e5fa6a86be60f34fe340a3ca71f)
|
|
(This used to be commit 87c91e4362c51819032bfbebbb273c52e203b227)
|
|
Jeremy.
(This used to be commit 407e6e695b8366369b7c76af1ff76869b45347b3)
|
|
Jeremy.
(This used to be commit da0d6ba0f972dbe48e2b7297e86e1717e510fadf)
|
|
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=243897
(This used to be commit 6b68c006f8ecba8ed3a4d87950691cb1e5c46386)
|
|
Jeremy.
(This used to be commit 17b1d11bbb8353e309c8410128a3e9c5964ea766)
|
|
Jeremy.
(This used to be commit 12c29a8e9bd87550ad7a8e7ceaf4cba59994547a)
|
|
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)
|
|
(This used to be commit 4d5654a8ab491364be5fd83e9894e9a46401f0f4)
|
|
- add minsize parameter. Bug #4409.
Jeremy.
(This used to be commit b9408304db9a64d9b8ad56f53532825a02fdb150)
|
|
clean up a bunch of no previous prototype warnings
(This used to be commit c60687db112405262adf26dbf267804b04074e67)
|
|
pstrings.
Volker
(This used to be commit c5e393d5eda4e13a844171d9ff319d1f1bac3d84)
|
|
to do the upper layer directories but this is what
everyone is waiting for....
Jeremy.
(This used to be commit 9dafb7f48ca3e7af956b0a7d1720c2546fc4cfb8)
|
|
(This used to be commit 4dd8694a250e4d064a790fe8f422c965ab533880)
|
|
(This used to be commit c068df483f44a23ad813acd10d583be863128382)
|
|
We were trashing the stack on machines that define mode_t as uint16_t
(This used to be commit 6c15af31bcee1e82578b61cae10423b37c285f10)
|
|
Ensure it returns a BOOL.
Jerry (and anyone else) please check this, I think
all uses are now correct but could do with another
set of eyes. Essential for 3.0.21 release.
Jeremy.
(This used to be commit 0c7b8a7637e760fcb6629092f36b610b8c71f5c9)
|
|
recycle:touch_mtime = true
Guenther
(This used to be commit fa8e2c4b04786a77356bb4e310d59d7475d8bd87)
|
|
Allow absolute path (system wide) recycle bin.
Jeremy.
(This used to be commit 451fbbf1d603cb99b0c9f0d39de9ad71a6a12833)
|
|
"directory_mode" when creating recycle directories.
Bug #1040.
Jeremy.
(This used to be commit 1c94cbd72d93ff8f17d6e1971ff984fa9581f1ce)
|
|
allocation
functions so we can funnel through some well known functions. Should help greatly with
malloc checking.
HEAD patch to follow.
Jeremy.
(This used to be commit 620f2e608f70ba92f032720c031283d295c5c06a)
|
|
(This used to be commit e1d0b8fc7bbe075dd817e3816f29640cda980732)
|
|
(This used to be commit 803ae4517265e4bb4639c4966e104b392913c7c0)
|
|
as that's what they do. Fix string_replace() to fast-path ascii.
Jeremy.
(This used to be commit f35e9a8b909d3c74be47083ccc4a4e91a14938db)
|
|
(This used to be commit 8625f0e015481a79b0a7dedb77c60ce7b2cb7b84)
|
|
As abartlet rememberd me NT_STATUS_IS_ERR != !NT_STATUS_IS_OK
This patch will cure the problem.
Working on this one I found 16 functions where I think NT_STATUS_IS_ERR() is
used correctly, but I'm not 100% sure, coders should check the use of
NT_STATUS_IS_ERR() in samba is ok now.
Simo.
(This used to be commit c501e84d412563eb3f674f76038ec48c2b458687)
|
|
Volker
(This used to be commit c0e35f3be8a33f19823826c5a84c885764c62508)
|
|
VFS_ macros at system side. We currently have one clash with AIX and its VFS_LOCK. Compiled and tested -- no new functionality or code, just plain rename of macros for yet-unreleased VFS API version. Needs to be done before a24 is out
(This used to be commit c2689ed118b490e49497a76ed6a2251262018769)
|
|
1. Finally work with cascaded modules with private data storage per module
2. Convert VFS API to macro calls to simplify cascading
3. Add quota support to VFS layer (prepare to NT quota support)
Patch by Stefan (metze) Metzemacher, with review of Jelmer and me
Tested in past few weeks. Documentation to new VFS API for third-party developers to follow
(This used to be commit 91984ef5caa2d13c5d52e1f535bd3bbbae1ec978)
|
|
function. Patch by metze with some minor modifications.
(This used to be commit bc4b51bcb2daa7271c884cb83bf8bdba6d3a9b6d)
|
|
parameters. Does not break binary compatibility with older modules.
(This used to be commit 147c4d56d873a20a49194c5b036a3694299b1b48)
|
|
(This used to be commit 58aa32ea6ac587df92ceefc527afbb1ff5bd0b08)
|
|
- Stephan Kulow's changes (fixing warnings in libsmbclient)
- VFS modules
- Seperating libs
(This used to be commit 6e9b7802335428c88ecf4e44a0e2395ac58e96b5)
|
|
(This used to be commit 646eb2dda66d1f619f165076edfc82cd7144ba5a)
|
|
(This used to be commit ffd0d643c224e9169737e7dbfef40cab46fde8f3)
|
|
(This used to be commit b4a5362f04a7798e627c6dce6296165ed1719fca)
|
|
(This used to be commit a6bc706625ad0bb16c11e20d533c536447a661a0)
|
|
Jeremy.
(This used to be commit 35d00bacdc4b48c9b9e2ba9d4335c53a13f40f73)
|
|
(This used to be commit 14b129e301c94ccf47b9105bda1bd9d142feb1b5)
|