Age | Commit message (Collapse) | Author | Files | Lines |
|
Jeremy
(This used to be commit 7c6e274cd578521192a0b0c4e6a4fb5dc7d722ac)
|
|
Jeremy.
(This used to be commit b9de6c926953b3321fa3850d501c807c6eabf230)
|
|
between Realloc and realloc_array.
Jeremy.
(This used to be commit 841c9b1847ae12656b827e3d35b8bf0c3f68b8b4)
|
|
in the pointer aliasing once realloc could change
a pointer. This was in the bugzilla.samba.org database
as #687 but we never figured out what it was !
Jeremy.
(This used to be commit 8d183441403524fe39e79af843d6cfe65898f7d3)
|
|
(This used to be commit 6bf879bee3c59ba54b1b4c465c777e3dd0043f83)
|
|
Guenther
(This used to be commit 7e80d5358eb181c3515acb732a3594e80391261b)
|
|
realloc can return NULL in one of two cases - (1) the realloc failed,
(2) realloc succeeded but the new size requested was zero, in which
case this is identical to a free() call.
The error paths dealing with these two cases should be different,
but mostly weren't. Secondly the standard idiom for dealing with
realloc when you know the new size is non-zero is the following :
tmp = realloc(p, size);
if (!tmp) {
SAFE_FREE(p);
return error;
} else {
p = tmp;
}
However, there were *many* *many* places in Samba where we were
using the old (broken) idiom of :
p = realloc(p, size)
if (!p) {
return error;
}
which will leak the memory pointed to by p on realloc fail.
This commit (hopefully) fixes all these cases by moving to
a standard idiom of :
p = SMB_REALLOC(p, size)
if (!p) {
return error;
}
Where if the realloc returns null due to the realloc failing
or size == 0 we *guarentee* that the storage pointed to by p
has been freed. This allows me to remove a lot of code that
was dealing with the standard (more verbose) method that required
a tmp pointer. This is almost always what you want. When a
realloc fails you never usually want the old memory, you
want to free it and get into your error processing asap.
For the 11 remaining cases where we really do need to keep the
old pointer I have invented the new macro SMB_REALLOC_KEEP_OLD_ON_ERROR,
which can be used as follows :
tmp = SMB_REALLOC_KEEP_OLD_ON_ERROR(p, size);
if (!tmp) {
SAFE_FREE(p);
return error;
} else {
p = tmp;
}
SMB_REALLOC_KEEP_OLD_ON_ERROR guarentees never to free the
pointer p, even on size == 0 or realloc fail. All this is
done by a hidden extra argument to Realloc(), BOOL free_old_on_error
which is set appropriately by the SMB_REALLOC and SMB_REALLOC_KEEP_OLD_ON_ERROR
macros (and their array counterparts).
It remains to be seen what this will do to our Coverity bug count :-).
Jeremy.
(This used to be commit 1d710d06a214f3f1740e80e0bffd6aab44aac2b0)
|
|
(This used to be commit 7c098ca0ae4c7e11c7100fb09b42ce716beffb56)
|
|
random error messages are coming from. Yes I'm pissed as
I'm working on a live issue right now...
Jeremy.
(This used to be commit 07d1037e17d782ce10dc6f4d15dcd686730c0b92)
|
|
"rename user script" to do the rename of the posix machine account (this
might be changed later). Fixes #2331.
Guenther
(This used to be commit b2eac2e6eb6ddd1bcb4ed5172e7cd64144c18d16)
|
|
* Add a 'struct passwd *' to the struct samu for later reference
(I know this may be controversial but its easily reverted which is
is why I'm checking this is as a seaparate patch before I get
too deep).
* Remove unix_homedir from struct samu {} and update the pdb wrapper
functions associated with it.
(This used to be commit 92c251fdf0f1f566cfeca3c75ba2284b644aef5d)
|
|
no idea why no one (including myself) caught this with a compiler
warning....Make sure new_chunk() actually returns a pointer
to the allocated memory.
SAMBA_3_0 now works again on Solaris.
(This used to be commit cf9140ad266a8a710651570d0af8dc6188fafed0)
|
|
(This used to be commit af57e4a4cc5efc9c7aba35790cf10377c76b5e4a)
|
|
macro which sets the freed pointer to NULL.
(This used to be commit b65be8874a2efe5a4b167448960a4fcf6bd995e2)
|
|
Patch from Bjoern Jacke <bjacke-at-sernet-dot-de>.
Guenther
(This used to be commit 69fb189a6b9947069afebb15d6ee6f2f20d15171)
|
|
Bartlett's
Samba4 code.
Jeremy.
(This used to be commit a2fb436fc5dd536cfe860be93f55f9cb58139a0e)
|
|
Jeremy.
(This used to be commit 6ec0e9124a1a7b19c9853b8e26075cbbb8751f10)
|
|
Volker
(This used to be commit bb40e544de68f01a6e774753f508e69373b39899)
|
|
* remove pdb_context data structure
* set default group for DOMAIN_RID_GUEST user as RID 513 (just
like Windows)
* Allow RID 513 to resolve to always resolve to a name
* Remove auto mapping of guest account primary group given the
previous 2 changes
(This used to be commit 7a2da5f0cc05c1920c664c9a690a23bdf854e285)
|
|
Jeremy.
(This used to be commit 95793d7e64d30190ebf917745c719f9c5a1b31e2)
|
|
always assume we can get a struct timespec out of a stat
struct. This will allow us to portably move to nsec timestamps
on files and directories in the file server code in future.
Jeremy.
(This used to be commit 07132d8796a08aa71d6719cb07b5b2c999930632)
|
|
Guenther
(This used to be commit 286f6fc2339cf4ef232c16466b8dffdcddbe343f)
|
|
internally in services_db.c now. This prevents internal services from
being listed twice (one internal and one external) when no
'svcctl list' parameter is explcitly set in smb.conf
(This used to be commit 6c4ede6cee7e1d25a6357e959972e8d390c27fe3)
|
|
still missing a configure test to make us
substitute our snprintf to system one when
the system one does not have positional parameters support
(This used to be commit e9bcc24b13c0e264d1d4aaf31a56e38cb3fec830)
|
|
Implement 'net rpc shell account' -- An editor for account policies
nt_time_to_unix_abs changed its argument which to me seems wrong, and I could
not find a caller that depends on this. So I changed it. Applied some more
const in time.c.
Volker
(This used to be commit fc73690a7000d5a3f0f5ad34461c1f3a87edeac5)
|
|
Sync with trunk as off r13315
(This used to be commit 17e63ac4ed8325c0d44fe62b2442449f3298559f)
|
|
(This used to be commit 6c3480f9aecc061660ad5c06347b8f1d3e11a330)
|
|
by saving the UNIX token used to set a delete on close flag,
and using it when doing the delete. libsmbsharemodes.so still
needs updating to cope with this change.
Samba4 torture tests to follow.
Jeremy.
(This used to be commit 23f16cbc2e8cde97c486831e26bcafd4ab4a9654)
|
|
systems. Fix the build on those boxes
(This used to be commit 0b8ed8136b5c5b9b7bb5615dc8dc27eec7c49506)
|
|
(This used to be commit d40f06018b9197c35a10cc9ab284dd596244f47b)
|
|
valid users = %S, %D%w%S
(This used to be commit 6ff25eb8402ed006ac5e081f64bd9e074fe22295)
|
|
GUenther
(This used to be commit 3a6e41a0cb2872a656ea79c8d4fc4b8bce436492)
|
|
this will
not acutally help, but it is good to be complete.
(This used to be commit 2163e4b6b453ebf1fefc64e74890300108bbf8f6)
|
|
bad access to gencache.tdb after fork() in smbmount
(This used to be commit 68399ce04ca4509d51950d2d7b1ed817e82bf17c)
|
|
Jeremy.
(This used to be commit b76c7b613282dc89c54faf3e7cef98f7651c5a9d)
|
|
Guenther
(This used to be commit f78c7f8abea4cb598eca78fa3beacee8a3caee20)
|
|
and replace calls to isupper/islower/toupper/tolower with
ASCII equivalents (mapping into _w variants).
Jeremy.
(This used to be commit c2752347eb2deeb2798c580ec7fc751a847717e9)
|
|
(This used to be commit be32f10609f2274903cb3b2c6b84c9aa62962151)
|
|
Jeremy.
(This used to be commit 7ccff8071abf2bd85f4022abace1f96c7f7f0d29)
|
|
talloc_string_sub. Someone with time on his hands could convert all the
callers of all_string_sub to this.
realloc_string_sub is *only* called from within substitute.c, it could be
moved there I think.
Volker
(This used to be commit be6c9012da174d5d5116e5172a53bbe6486d6c38)
|
|
(This used to be commit 3f1dad5fdbd104dc0c03a6a9488bd619b8915c83)
|
|
Volker
(This used to be commit e7f348fcf871e8559ecf4e3e597627a78187d1da)
|
|
Jeremy, there's a #ifdef'ed 0 call to this in your usershare code. We need to
talk about what exactly what you intend to do here and in what scenarios.
Volker
(This used to be commit 95094ef758089cfc62700509d45b53bc0980654d)
|
|
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)
|
|
(This used to be commit 209e4f8793fe9375fc6af1aedb5bd1fe57193bbc)
|
|
build farm
reacts :-)
Volker
(This used to be commit 9f99d04a54588cd9d1a1ab163ebb304437f932f7)
|
|
box with gcc4 and -O6...
Fix a bunch of C99 dereferencing type-punned pointer will break
strict-aliasing rules errors. Also added prs_int32 (not uint32...)
as it's needed in one place. Find places where prs_uint32 was being
used to marshall/unmarshall a time_t (a big no no on 64-bits).
More warning fixes to come.
Thanks to Volker for nudging me to compile like this.
Jeremy.
(This used to be commit c65b752604f8f58abc4e7ae8514dc2c7f086271c)
|
|
Jeremy.
(This used to be commit 6ec0312090dc3107e3c92099536858a22046ccfe)
|
|
Jeremy.
(This used to be commit 3804c4ca3914788e3d3780817ef016421418e11f)
|
|
talloc_describe_all() function. Fix smbcontrol <pid> pool-usage
as we desparately need it working in the field to track down
memory leaks. Seriously, when new functionality like the
Samba4 talloc is added, don't just disable working functionality
like "pool-usage", fix the damn thing first !
Jeremy.
(This used to be commit 2e262a75cca4575edd00db3d24e7e35760943120)
|