Age | Commit message (Collapse) | Author | Files | Lines |
|
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)
|
|
macro which sets the freed pointer to NULL.
(This used to be commit b65be8874a2efe5a4b167448960a4fcf6bd995e2)
|
|
(This used to be commit 1b955bbf59e5b11014405d888d58fefbc055ad38)
|
|
Sync with trunk as off r13315
(This used to be commit 17e63ac4ed8325c0d44fe62b2442449f3298559f)
|
|
bloody placeholder share mode entries (I hate
these - I've had to add this filter code now to too
many places :-).
Jeremy.
(This used to be commit 815340e1a413f98c1c36aacc1c34041e9160d0e3)
|
|
lp_load() could not be called multiple times to modify parameter settings based
on reading from multiple configuration settings. Each time, it initialized all
of the settings back to their defaults before reading the specified
configuration file.
This patch adds a parameter to lp_load() specifying whether the settings should
be initialized. It does, however, still force the settings to be initialized
the first time, even if the request was to not initialize them. (Not doing so
could wreak havoc due to uninitialized values.)
(This used to be commit f2a24de769d1b2266e576597c57a8e3b1e2a2b51)
|
|
is defined. Jerry - this needs to be in 3.0.21b.
Jeremy.
(This used to be commit 417ef5bffaefee698cbea4b06aff691f01ac56d1)
|
|
and replace calls to isupper/islower/toupper/tolower with
ASCII equivalents (mapping into _w variants).
Jeremy.
(This used to be commit c2752347eb2deeb2798c580ec7fc751a847717e9)
|
|
broken since r10656
(This used to be commit 85ea7afd8bd30e0a2bcbc7181f75fde63b016a34)
|
|
revving the minor version number for libsmbsharemodes (we
now have a new _ex interface that takes the share path
as well as the filename). Needed for #3303. Some code written
by SATOH Fumiyasu <fumiya@samba.gr.jp> included in the changes
to locking/locking.c. The smbstatus output is a bit of a mess
and needs overhauling...
Jeremy.
(This used to be commit 9d93af713f8520ca506730dd32aa2b994937eaba)
|
|
of the Samba4 timezone handling code back into Samba3.
Gets rid of "kludge-gmt" and removes the effectiveness
of the parameter "time offset" (I can add this back
in very easily if needed) - it's no longer being
looked at. I'm hoping this will fix the problems people
have been having with DST transitions. I'll start comprehensive
testing tomorrow, but for now all modifications are done.
Splits time get/set functions into srv_XXX and cli_XXX
as they need to look at different timezone offsets.
Get rid of much of the "efficiency" cruft that was
added to Samba back in the day when the C library
timezone handling functions were slow.
Jeremy.
(This used to be commit 414303bc0272f207046b471a0364fa296b67c1f8)
|
|
* \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 9c78f3b0d6c36854e082a89cb1ee5b80fcc9fe35)
|
|
(This used to be commit 4d50671602def039034fa03615cc9a205eba89c5)
|
|
tests on this as it's very late NY time (just wanted to get this work
into the tree). I'll test this over the weekend....
Jerry - in looking at the difference between the two trees there
seem to be some printing/ntprinting.c and registry changes we might
want to examine to try keep in sync.
Jeremy.
(This used to be commit c7fe18761e2c753afbffd3a78abff46472a9b8eb)
|
|
safe for using our headers and linking with C++ modules. Stops us
from using C++ reserved keywords in our code.
Jeremy
(This used to be commit 9506b8e145982b1160a2f0aee5c9b7a54980940a)
|
|
deryck
(This used to be commit 3732705605c757d8647efa2731070025f79ab302)
|
|
Fenlason <fenlason@redhat.com> for spotting this issue.
deryck
(This used to be commit cd12641383c50020104142cad0e705e2b58c50f4)
|
|
Encode quotes for display in HTML.
deryck
(This used to be commit b9b18a09ea3bf3edba15dc073dd20b195bc6082b)
|
|
(This used to be commit 1ce9a0159d36c2e4f154fb60c86cebcfbc2038dc)
|
|
(This used to be commit efea76ac71412f8622cd233912309e91b9ea52da)
|
|
1. using smbc_getxattr() et al, one may now request all access control
entities in the ACL without getting all other NT attributes.
2. added the ability to exclude specified attributes from the result set
provided by smbc_getxattr() et al, when requesting all attributes,
all NT attributes, or all DOS attributes.
3. eliminated all compiler warnings, including when --enable-developer
compiler flags are in use. removed -Wcast-qual flag from list, as that
is specifically to force warnings in the case of casting away qualifiers.
Note: In the process of eliminating compiler warnings, a few nasties were
discovered. In the file libads/sasl.c, PRIVATE kerberos interfaces
are being used; and in libsmb/clikrb5.c, both PRIAVE and DEPRECATED
kerberos interfaces are being used. Someone who knows kerberos
should look at these and determine if there is an alternate method
of accomplishing the task.
(This used to be commit 994694f7f26da5099f071e1381271a70407f33bb)
|
|
to use swat to change their password without allowing them to see
the "View" and "Status" buttons.
deryck
(This used to be commit c9cacd553f8e7aa2db011cb7b22dd791b7460ea0)
|
|
Jeremy.
(This used to be commit 80e7c6c312eb0bdb93fe381e7ce3a24a21dd9cf0)
|
|
not utf8. Fixed by Shiro Yamada <shiro@miraclelinux.com>.
Jeremy.
(This used to be commit 8de04888097b3e125845340ba1a9a1bb79892e22)
|
|
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)
|
|
'..' from all #include preprocessor commands. This fixes bugzilla #1880
where OpenVMS gets confused about the '.' characters.
(This used to be commit 7f161702fa4916979602cc0295919b541912acd6)
|
|
<bjacke@sernet.de>
"Do not use display charset for swat output. In HTML we do not care
about the "locale charmap" because HTML code is UTF-8 only now.
Additionally take care that we convert files from statuspage from unix
charset to UTF-8. Thus we have correct HTML output under all
circumstances. We now also convert the share names correctly from unix
encoding to web encoding and vice vera. "
Guenther
(This used to be commit 6d9f77c2bb95db4939b8ef375e22b188168b70ab)
|
|
when given a trailing directory/
(This used to be commit 980740da784ce00ad1b388872297b82d4d368044)
|
|
password hash creation in SWAT
(This used to be commit 08fc16d7e694213fa1abf81f1e10989888508697)
|
|
* updateing WHATSNEW with vl's change
(This used to be commit a7e2730ec4389e0c249886a8bfe1ee14c5abac41)
|
|
"allow_bad_conv"
boolean parameter that allows broken iconv conversions to work. Gets rid of the
nasty errno checks in mangle_hash2 and check_path_syntax and allows correct
return code checking.
Jeremy.
(This used to be commit 7b96765c23637613f079d37566d95d5edd511f05)
|
|
active connections
(This used to be commit d77d38560d1bdc10a58408f449fbc320275bcacc)
|
|
Bugzilla #1066.
(This used to be commit 2285ec9737d7d1767e60cf43c3a55f10643371be)
|
|
in lib/smbpasswd.c that were exact duplicates of functions in passdb/passdb.c
(These should perhaps be pulled back out to smbpasswd.c, but that can occour
later).
Andrew Bartlett
(This used to be commit fcdc5efb1e245c8fa95cd031f67ec56093b9056e)
|
|
remote_password_change().
Sorry for the original bug.
Andrew Bartlett
(This used to be commit 955436a6f6d7c2f580b2c4e1edbb7ee2fe5df858)
|
|
(This used to be commit 5a32f9568f128374df98491b43e6f5b299cb656c)
|
|
(This used to be commit b60f6ec30d05e4e5bba9934a416ddc8bc089824f)
|
|
strings, only form input in SWAT.
Andrew Bartlett
(This used to be commit 8d54f5fe0c5689660f37788916b37014754ce23e)
|
|
(This used to be commit 879d0f15ea260d61c56c5b841065ecb2f5ec26ca)
|
|
running; bug 398
(This used to be commit 04e37283f230b28f3019bfab3a71dde5e4ae4e23)
|
|
are written out surrounded by single quotes. This means that
both double and single quotes are now used to surround
strings in smb.conf. This is a slight change from the previous
behavior but needed or else things like
printer admin = +ntadmin, 'VALE\Domain, Admin'
get written to smb.conf by SWAT.
(This used to be commit 5bf91c79d620e34ac71d72c80f74e47754d49dcb)
|
|
get_peer_name. This is to get closer to the getsockname/getpeername system
functions.
Next step will be the %i macro for the local IP address. I still want to play
%L-games in times of port 445.
Volker
(This used to be commit d7162122eaf5d897e5de51604e431bfbaa20e905)
|
|
in iconv.c and nsswitch/). Using them means you're not thinking about multibyte at
all and I really want to discourage that.
Jeremy.
(This used to be commit d7e35dfb9283d560d0ed2ab231f36ed92767dace)
|
|
(This used to be commit 5a8dbccd66911642fabb6b8b38fff4477b76c3a1)
|
|
bunch of updates to bug 413 from Monyo:
1) pick up proper strings to call msg strings for example to add
strings in wizard menu in web/swat.c, web/statuspage.c and
param/loadparm.c.
2) define N_() macro in include/intl.h to pick up some strings
in param/loadparm.c
3) quote all name and value tag with '"'
For example in swat.c:720 the "Edit Parameter Values" string is
displayd only as "Edit" because value tag is not quoted like:
value=Edit Parameter Values
These tags should be quoted though it sometimes works well
without quotation.
4) modify the msg strings not to contain HTML tags or other
non-message strings. For example
dprintf(_("test\n")); is modified to dprintf("%s\n", _("test"));
(This used to be commit 351d16956d8125bc689ca84adcb71e0a57d6b7cc)
|
|
Monyo. Also remove debugging d_printf() which snuck in the last commit.
(This used to be commit 0192f41003af0f8e8c117cf7eb8ad886b8b03749)
|
|
Parameters' to be more consistent with the other pages.
(This used to be commit 02725d4a3cff5bf0b676c363200795d4cadecca1)
|
|
(This used to be commit ae452e51b02672a56adf18aa7a7e365eeaba9272)
|
|
- Fix WINS Server List in SWAT (bug #197)
- Don't segfault SWAT when adding shares (bug #254)
(This used to be commit dd43a29504fe2b6f9d13cdb9431347927548fc10)
|