Age | Commit message (Collapse) | Author | Files | Lines |
|
talloc ctx is
misleading here. This needs fixing properly :-)
Volker
(This used to be commit f808182346aa16bb2f3a9383e28d318099a5e14e)
|
|
(This used to be commit b57e446789530cb7e18e107478ca8b59a19d990f)
|
|
(This used to be commit cb7f4211b8441642dce9594522dc9588475a7719)
|
|
but this
will change.
Volker
(This used to be commit 17c7c337f64b082c1bf1045a4093c279deeec958)
|
|
descriptor
buffers.
Make security access masks simply a uint32 rather than a structure
with a uint32 in it.
(This used to be commit b41c52b9db5fc4a553b20a7a5a051a4afced9366)
|
|
and DLIST_DEMOTE() now take the type of the tmp pointer
not the tmp pointer itself anymore.
metze
(This used to be commit 2f58645b7094e81dff3734f11aa183ea2ab53d2d)
|
|
Jeremy.
(This used to be commit ae20201494f44cb98e58ba98531a79feeeb82b47)
|
|
Stanford checker.
Jeremy.
(This used to be commit 09652dc71ce13bd305e653557e43731378398dd6)
|
|
(This used to be commit be9aaffdaccae06c8c035eaf31862e34b7cfbe38)
|
|
(This used to be commit c0d9114706345c6bc1fa392bbf9ee81b146cba85)
|
|
to do the upper layer directories but this is what
everyone is waiting for....
Jeremy.
(This used to be commit 9dafb7f48ca3e7af956b0a7d1720c2546fc4cfb8)
|
|
Jeremy.
(This used to be commit 590b58cb507e5a6e459ff0c975beb9056336f233)
|
|
Jeremy.
(This used to be commit 7580eb947cdeb786be00efa5da727e32b28c99d6)
|
|
Jeremy.
(This used to be commit d04462f1d8cf009985b9112f093306a64689af64)
|
|
Jeremy.
(This used to be commit 067feef34388e93ded8db7fd3b4a6a4b752a3059)
|
|
(This used to be commit 8cf364e602eea408fd9cd6acd12f2b72971361ae)
|
|
examining Klockwork #1519. get_printer_subkeys()
could return zero without initializing it's return
pointer arg. Fixed this. Added free of subkey pointer
return in registry/reg_printing.c (interesting that
neithe Coverity or Klocwork found this one).
Jeremy.
(This used to be commit 4fbeae1a3ac3499e5d9f566655cbafccd9d691cb)
|
|
1177
In reg_perfcount.c: 1200 1202 1203 1204
In regfio.c: 1243 1245 1246 1247 1251
Jerry, the reg_perfcount and regfio.c ones, can you take a look please? This
is really your code, and I'm not sure I did the right thing to return an
error.
smbcacls.c: 1377
srv_eventlog_nt.c: 1415 1416 1417
srv_lsa_nt.c: 1420 1421
srv_netlog_nt.c: 1429
srv_samr_nt: 1458 1459 1460
Volker
Volker
(This used to be commit d6547d12b1c9f9454876665a5bdb010f46b9f5ff)
|
|
Volker
(This used to be commit d52002c1c9d28e637ca4d1553e800b0b97790f36)
|
|
Jeremy.
(This used to be commit a40c7a0cd888dcee3cac1a41602863f54c51ef17)
|
|
Jeremy.
(This used to be commit e2e2d8b939dd425a97b36102c6a541e3cf6236ad)
|
|
(This used to be commit 1b247ff2ed380f5b7d28917d74d6ef5609330a45)
|
|
If we use free(data.dptr) and then the subsequent tdb_open
fails in _reg_perfcount_get_counter_data() then data.dptr
is left as a non-zero pointer that has been freed. This would
cause it to be reused later on. Coverity bug #162.
Jeremy.
(This used to be commit 053efc20981e0280c6af0ebb9e17cea07da85fe8)
|
|
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)
|
|
eventlog registry keys so that file properties can be displayed
(This used to be commit 270fef5175559ba6345bb2c3e264c527a6a084c5)
|
|
printer as the username map might get in the way
(This used to be commit 46bf28c81c27dfdc412318a83bf565211a58a47d)
|
|
(This used to be commit 59c00924b67aa3d37a933731a56d03963ec7f1b5)
|
|
value name
(This used to be commit 34c3fd77b320d4fe5e0f1452aa09ea5ec2797494)
|
|
x86_64 box.
Jeremy.
(This used to be commit d720867a788c735e56d53d63265255830ec21208)
|
|
(This used to be commit 47b626a8f72629fd1bbabf35b68e24d202df2555)
|
|
source keys
* my patches to get registry utility functions linking
with eventlogadm tool
(This used to be commit 24e7663086f5d15c7e3fd8069667169b91d1acda)
|
|
REG_MULTI_SZ
(This used to be commit db8d85aa1ec5c486f061f97627b6b18a0e17cd34)
|
|
(This used to be commit e858eed813b5a9a8d57262142c5bbde2951b5590)
|
|
* only keep the registry,tdb file open when we have an open key handle
* tpot's setup.py fix
* removing files that no longer exist in trunk and copying some
that were missing in 3.0
(This used to be commit 6c6bf6ca5fd430a7a20bf20ed08050328660e570)
|
|
(This used to be commit f10aa9fb84bfac4f1a22b74d63999668700ffaac)
|
|
* \PIPE\unixinfo
* winbindd's {group,alias}membership new functions
* winbindd's lookupsids() functionality
* swat (trunk changes to be reverted as per discussion with Deryck)
(This used to be commit 939c3cb5d78e3a2236209b296aa8aba8bdce32d3)
|
|
(This used to be commit 8c819cd0c670acfe7be2ecd927ef8de6fa5226f2)
|
|
(This used to be commit d30356b9ad90ad33dc93028829954632ab774c74)
|
|
(This used to be commit 18d05431831c88f6302a55fe23f51951987f2cb0)
|
|
(This used to be commit ef7e0d70c68976766c01e1212e2b8f48f6895f98)
|
|
HKLM\\SYSTEM\\CurrentControlSet\\Control\\Termininal Server\\DefaultUserConfiguration
Apparently this started showing up after the winreg-write support
was added in 3.0.20rc1 or so.
Also modifed init_registry_data() to always run and add the
required keys. Initial values however are only written if
they don't already exist.
This makes it easier to add new keys without having to rev the
tdb version number (which is really unnecessary in this case).
Portions of patch reviewed by Thomas Bork on the general samba ml.
(This used to be commit b12a05b23782cfcb93fb4811807ef388de97c95c)
|
|
the new talloc() features:
Note that the REGSUB_CTR and REGVAL_CTR objects *must* be talloc()'d
since the methods use the object pointer as the talloc context for
internal private data.
There is no longer a regXXX_ctr_intit() and regXXX_ctr_destroy()
pair of functions. Simply TALLOC_ZERO_P() and TALLOC_FREE() the
object.
Also had to convert the printer_info_2->NT_PRINTER_DATA field
to be talloc()'d as well. This is just a stop on the road to
cleaning up the printer memory management.
(This used to be commit ef721333ab9639cb5346067497e99fbd0d4425dd)
|
|
Win2k and WinXP user profile security descriptors.
(This used to be commit 3a3bf4ddb702647b48baf9073c4fca0e1e16a194)
|
|
(This used to be commit c588c2ee69fa72089e9c0aed6881a76f4e490d86)
|
|
name and not the 4 character hash key
(This used to be commit 8d347561919ded19b1e7096aceb119c66f461c61)
|
|
(This used to be commit 5d592691e4d4f1cd47bd062633a54d7892548ee7)
|
|
(This used to be commit e9427912a763b0e4bb47724f835b91c2252105e8)
|
|
the wire
* fix dup_a_regval() when size is 0
* ensure we pass a pstring to unlink_internals (fixes delete_driver
code)
(This used to be commit 353e63ff421c564a1b7c7cfe95982f31c871a227)
|
|
(This used to be commit ed93cc50e1064dc5a3145d97555715b0b2915db4)
|
|
(This used to be commit d6b1f695a0baf2042ce121702cdcbbf59e94bd94)
|