Age | Commit message (Collapse) | Author | Files | Lines |
|
metze
|
|
There are error paths in S3 where va_end() is not properly called after
va_start() or va_copy() have been called.
These issues were noted while performing an inspection for S4 bug #6129. Thanks
to Erik Hovland <erik@hovland.org> for the original bug report.
|
|
Guenther
|
|
When we run out of file descriptors for some reason, every new
connection forks a child that immediately panics causing smbd to
coredump. This seems unnecessarily harsh; with this code change we
now catch that error and merely log a message about it and exit
without the core dump.
Signed-off-by: Tim Prouty <tprouty@samba.org>
|
|
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.
|
|
the system one is broken.
|
|
Guenther
|
|
callers pass in a struct user_auth_info * instead. This commit causes
smbc_set_credentials() to print out a message telling callers to use
smbc_set_credentials_with_fallback() instead, as smbc_set_credentials()
has a broken API (no SMBCCTX * pointer). No more global variables used
in the connection manager API for client dfs calls.
Jeremy.
|
|
Jeremy.
|
|
This reverts 193be432. The MADVISE_PROTECT is inherited by all child
processes and cannot be unset. The intention of the original patch was
to protect the parent process, but allow children to be killed in low
memory. Since this isn't possible with the current API, reverting the
whole feature.
|
|
|
|
* move to reinit_after_fork() to protect all Samba daemons
* only protect parent processes
|
|
|
|
|
|
|
|
|
|
This allows module implementors to customize what allocation size is
returned to the client.
|
|
context
Because messaging_reinit() may add events to the event context, which will
removed by event_context_reinit().
metze
|
|
binaries that don't have
an event context or a msg context. Fixes crash bug in swat.
Jeremy.
|
|
If they are not explicitely set in either place both will default to LOCKDIR.
Signed-off-by: Michael Adam <obnox@samba.org>
|
|
Signed-off-by: Stefan Metzmacher <metze@samba.org>
|
|
|
|
|
|
|
|
|
|
This involves changing all our clients, that's why it's so large.
|
|
Rename it to trans_oob, it will be used in the server routines.
|
|
talloc_autofree_context() instead of NULL.
Remove the code in memcache that does a TALLOC_FREE on stored pointers. That's a disaster waiting
to happen. If you're storing talloc'ed pointers, you can't know their lifecycle and they should
be deleted when their parent context is deleted, so freeing them at some arbitrary point later
will be a double-free.
Jeremy.
|
|
Since it's a function it just sets the local pointer to NULL and basically
is an equivalent to free().
It also claims it's being used for callbacks but isn't used that way
anywhere.
|
|
|
|
|
|
|
|
|
|
|
|
(This used to be commit d8259cbe666d96cc468203a64fb208c02a64849f)
|
|
Michael
(This used to be commit 5ef9da6f4f04b07804b389902862fae0fbbfed13)
|
|
Here is a patch to allow many subsystems to be re-initialized. The only
functional change I made was to remove the null context tracking, as the memory
allocated here is designed to be left for the complete lifetime of the program.
Freeing this early (when all smb contexts are destroyed) could crash other
users of talloc.
Jeremy.
(This used to be commit 8c630efd25cf17aff59448ca05c1b44a41964b16)
|
|
(This used to be commit 59136544ec16b6ceb14a75259aedd22856832bf1)
|
|
Guenther
(This used to be commit 6aca163e898bfeeff824725bb27b2ef4f7b729f9)
|
|
Brian Sheehan provided a nice patch intended for the 3.0 code base. This
commit applies a similar patch for the 3.3 code base. It adds a new public
function to libsmbclient -- smbc_set_credentials() -- that may be called from
the authentication callback when DFS referrals are in use.
Derrell
(This used to be commit 888f922bd0d1c84a687d404e95ae314a9dd0aee1)
|
|
(This used to be commit b4b3b6b1c6a336220c6afd68b153a769397ecded)
|
|
Guenther
(This used to be commit dbf96120d8b33e592bfd3e9df1777f1670e218be)
|
|
(This used to be commit e7ce4bce5cd7eddb14982028538e965e12ccef84)
|
|
Guenther
(This used to be commit d077ef64cd1d9bbaeb936566c2c70da508de829f)
|
|
We now open messages.tdb even before we do the become_daemon. become_daemon()
involves a fork and an immediate exit of the parent, thus the
parent_is_longlived argument must be set to false in this case. The parent is
not really long lived :-)
(This used to be commit 4f4781c6d17fe2db34dd5945fec52a7685448aec)
|
|
metze
(This used to be commit 5f6c3a4f6db68c985884cbe9401a4dbe515f756b)
|
|
Guenther
(This used to be commit aae4d91e726ef8dcad173cdd1d6f719d94462948)
|
|
and WinXP64.
Defines a new value for the %a variable when detecting a Windows XP 64-bit client.
(This used to be commit 0c94918fb52c5345ce30490046b79f81712c30bf)
|
|
Just a small commit to get a handle on this git thingy. This patch
fixes some missing calls to va_end() to match various calls to va_start()
and VA_COPY().
Tim.
(This used to be commit ec367f307dff7948722b9ac97beb960efd91991f)
|
|
In pstring removal 4ae4b23586, the behaviour of tab_depth was
changed to create an extra debug header (by using the DEBUGLVL
macro).
This extracts the debug level check from DEBUGLVL into
a macro CHECK_DEBUGLVL without the debug header creation
and uses this instead of DEBUGLVL in tab_depth.
Michael
(This used to be commit cbc7d921fa696e6c3c5197ad9f87442ba679df82)
|