1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-12 09:18:10 +03:00
Commit Graph

19095 Commits

Author SHA1 Message Date
Jeremy Allison
2615b079f0 r13978: Here is why it's essential to use SAFE_FREE instead of free.
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 053efc2098)
2007-10-10 11:11:02 -05:00
Jeremy Allison
71272fc441 r13975: Re-fix Coverity #156 - I had left the hidden arg. inconsistent
between Realloc and realloc_array.
Jeremy.
(This used to be commit 841c9b1847)
2007-10-10 11:11:02 -05:00
Jeremy Allison
a31c931804 r13971: Fix Coverity bugs #209 - #213 - it detected mistakes
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 8d18344140)
2007-10-10 11:11:02 -05:00
Jim McDonough
247bacf19b r13968: fix typo, caught by Guenther
(This used to be commit 217d3fbe79)
2007-10-10 11:11:02 -05:00
Günther Deschner
3432273ab0 r13965: Make sure we always reset the userAccountControl bits when re-joining
with an existing account.

Guenther
(This used to be commit e4c12ab167)
2007-10-10 11:11:01 -05:00
Volker Lendecke
bd8e1b442d r13958: Fix Coverity Bug # 141
(This used to be commit 598513d1d3)
2007-10-10 11:11:01 -05:00
Jim McDonough
9bc20e14db r13957: Based on patch from Richard Renard <richard.renard@idealx.com>:
Fix machine accounts (should not have valid shells) and users with no
home directory (were getting previous user's directory).
(This used to be commit f629f8a7b9)
2007-10-10 11:11:01 -05:00
Volker Lendecke
fde3304981 r13955: Fix Coverity ID 139.
Not a bug in the strictest sense, more a clarification. This whole routine
assumes new_gid != NULL anyway, so there's no point in checking.

Volker
(This used to be commit dfbf09c772)
2007-10-10 11:11:01 -05:00
Volker Lendecke
c2288e6db3 r13951: Fix Coverity Bug #163.
This code was not used anyway :-)

Volker
(This used to be commit bbfb205693)
2007-10-10 11:11:01 -05:00
Volker Lendecke
dbb4840da5 r13950: Fix Coverity bug #168
(This used to be commit cbf894c0e3)
2007-10-10 11:11:01 -05:00
Jim McDonough
a0b0ac5b6a r13948: Fix the build. Remove rpcclient.h include.
(This used to be commit 6bf879bee3)
2007-10-10 11:11:01 -05:00
Lars Müller
392d681305 r13947: Use tabs instead of spaces for indention.
(This used to be commit fb76390c6a)
2007-10-10 11:11:00 -05:00
Lars Müller
02576e87be r13946: Link pam_smbpass with the required object files. Fix bug #3565.
(This used to be commit 426c8fe0bd)
2007-10-10 11:11:00 -05:00
Günther Deschner
7aa07a4832 r13945: Move display_sec.c to lib/ (as suggested by Volker).
Guenther
(This used to be commit 7e80d5358e)
2007-10-10 11:11:00 -05:00
Volker Lendecke
92fa7eadc8 r13916: Fix Coverity bug #29. Looks like my code. I wonder how much there is still
lurking...

Volker
(This used to be commit 1345a52794)
2007-10-10 11:11:00 -05:00
Jeremy Allison
894358a8f3 r13915: Fixed a very interesting class of realloc() bugs found by Coverity.
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 1d710d06a2)
2007-10-10 11:10:59 -05:00
Volker Lendecke
1d5ed2bde9 r13914: Fix Coverity bug #151.
I think this is actually a false warning, but as I've seen it with high gcc
warning levels, lets fix it :-)

Volker
(This used to be commit 3f671033bc)
2007-10-10 11:10:59 -05:00
Volker Lendecke
0382d3c26b r13895: As agreed upon with gd on the phone, remove WBFLAG_PAM_CONTACT_TRUSTDOM. This
can not work for NTLM auth, where we only have a workstation account for our
own domain. For the PAM Kerberos login we need to find a better way to do
this, probably using Dsr_GetDCName and some winbind-crafted krb5.conf.

Volker
(This used to be commit bf7c608147)
2007-10-10 11:10:59 -05:00
Jeremy Allison
2d3946b8c4 r13893: Fix for Coverity issue CID #164. The first one that I don't
think is a direct bug, but some code that needs clarification :-).
Jeremy.
(This used to be commit 61901a3f10)
2007-10-10 11:10:59 -05:00
Jeremy Allison
6d9c2b872f r13892: Doh ! My bugfix had a bug :-). Spotted by Willi Mann <willi@wm1.at>,
if rrec can be null make sure we *never* deref it.
Jeremy.
(This used to be commit d6d7a5ac62)
2007-10-10 11:10:58 -05:00
Jeremy Allison
42df51222b r13889: Fix resource leak on error path. Coverity bug CID #73.
Jeremy.
(This used to be commit 46e1098092)
2007-10-10 11:10:58 -05:00
Jeremy Allison
4d79117c6d r13887: Fix coverity bug CID #94. mem leak on error codepath.
Jeremy.
(This used to be commit dd47e0ef11)
2007-10-10 11:10:58 -05:00
Jeremy Allison
4c0bf8d75d r13884: Fix coverity CID #95. Resource leak on error path.
Jeremy.
(This used to be commit f4bf550b57)
2007-10-10 11:10:58 -05:00
Jeremy Allison
9bb215fe68 r13882: Fix coverity CID bug #96. Missing free on error
exit path.
Jeremy.
(This used to be commit 95ef857c89)
2007-10-10 11:10:58 -05:00
Jeremy Allison
cc6b2d086a r13880: Fix coverity bug CID #97, mem leak on error path.
Jeremy.
(This used to be commit 0dc37dd2d8)
2007-10-10 11:10:58 -05:00
Gerald Carter
129fd6c5c6 r13878: move PORT_DATA_1 to use static sized UNICODE strings as per MSDN
(This used to be commit c803e1b2af)
2007-10-10 11:10:57 -05:00
Jeremy Allison
fa94300f5f r13875: Fix coverity bug #148. Deref of rrec before NULL check.
Jeremy.
(This used to be commit 0f1dffb2f2)
2007-10-10 11:10:57 -05:00
Jeremy Allison
0a516662ab r13873: I think this is the longstanding wins server crash bug, not
part of the changes I made but something that's been there
a while.... Coverity bugid #41.
Jeremy.
(This used to be commit 2f6cf810ea)
2007-10-10 11:10:57 -05:00
Günther Deschner
9f2e29799e r13864: Some cleanup and the samr set security object function client-side.
Guenther
(This used to be commit 0ae3fddf95)
2007-10-10 11:10:57 -05:00
Günther Deschner
105825cf5a r13861: Avoid "net rpc join" segfaulting when storing the servername in the
affinity cache.

Guenther
(This used to be commit b8c07babbd)
2007-10-10 11:10:57 -05:00
Simo Sorce
092e3ed45a r13846: Take care of system that do not have LDAP libraries
(This used to be commit ab62c8d93a)
2007-10-10 11:10:57 -05:00
Simo Sorce
d54010e219 r13843: Merge in net sam provision and some pdb_ldap fixes
(This used to be commit 705d811808)
2007-10-10 11:10:56 -05:00
Volker Lendecke
a787e2d124 r13841: Fix an uninitialized variable warning.
Jerry, this just fixes the warning. This routine does not seem to cope well
with !UNMARSHALLING. You might want to look...

Volker
(This used to be commit 2c0c40dfb5)
2007-10-10 11:10:56 -05:00
Gerald Carter
5df58c38f3 r13829: From the "It's not pretty but it works" category
* Finish prototype of the "add port command" implementation
  Format is "addportcommand portname deviceURI"

* DeviceURI is either
  - socket://hostname:port/
  - lpr://hostname/queue
  depending on what the client sent in the request
(This used to be commit 6d74de7a67)
2007-10-10 11:10:56 -05:00
Gerald Carter
889ff32b5e r13824: * add api table for Xcv TCPMON and LOCALMON calls starting
with the "MonitorUI" call
* Fix some parsing errors

This gets us to the Add Port Wizard dialog.
(This used to be commit a444aa7f00)
2007-10-10 11:10:56 -05:00
Gerald Carter
2a7847ea37 r13821: replacing some strings with macros
(This used to be commit a34ab5c827)
2007-10-10 11:10:56 -05:00
Gerald Carter
354c24d525 r13820: * Start fleshing out the XcvDataPort() server implementation
* Add support for the "Local Port" monitor as well through this API
(This used to be commit ba9cdd88a0)
2007-10-10 11:10:55 -05:00
Lars Müller
867365fa8a r13819: Remove accidently with rev 13713 submitted and never used MY_FLAGS
variable.
(This used to be commit 8f48c6d1e5)
2007-10-10 11:10:55 -05:00
Volker Lendecke
bf565b7b7b r13816: Volunteering :-)
> for the svn log:
>
> - Solaris' /bin/sh doesn't know "test -e" - let's use "test -f" instead
>
> Some volunteer wanna check this in? :)
>
> Cheers
> Bjoern

Volker
(This used to be commit 58d5f2031a)
2007-10-10 11:10:55 -05:00
Gerald Carter
e33b728c7b r13815: "Into the blind world let us now descend,"
Began the poet, his face as pale as death.
"I will go first, and you will follow me."
---

Adding XcvDataPort() to the spoolss code for remotely
add ports.  The design is to allow an intuitive means
of creating a new CUPS print queue from the Windows 2000/XP
APW without hacks like specifying the deviceURI in the
location field of the printer properties dialog.

Also set 'default devmode = yes' as the new default
since it causes no harm and only is executed when you
have a NULL devmode anyways.
(This used to be commit 123e478ce5)
2007-10-10 11:10:55 -05:00
Jeremy Allison
a7552e677e r13802: I *knew* ASU on sparc had to be good for *something* ! :-).
Fix incorrect size understanding of sid name type (yes it's
already correct in the Samba4 IDL :-).
Jeremy.
(This used to be commit 305a774d28)
2007-10-10 11:10:54 -05:00
Jeremy Allison
c44de10a2b r13799: Make locktest debug a little easier to read.
Jeremy.
(This used to be commit 13de4d000e)
2007-10-10 11:10:54 -05:00
Jeremy Allison
38e020e510 r13796: Another load_case_tables...
Jeremy.
(This used to be commit 36df6ba3ad)
2007-10-10 11:10:54 -05:00
Gerald Carter
d0ab9712f5 r13794: If you are going to go, go big. That's what I always say.
* disable winbind enum {users,groups} by default after
  further conversations with Volker.
(This used to be commit d640d81540)
2007-10-10 11:10:54 -05:00
Jeremy Allison
ac02620581 r13792: Merged Simo's fixes for tdbtraverse.
Jeremy.
(This used to be commit 9ed3bd431c)
2007-10-10 11:10:54 -05:00
Volker Lendecke
30675b36f5 r13791: Having S-1-1-0 show up in winbind lookupsid does not really make sense.
Volker
(This used to be commit ae9614ce01)
2007-10-10 11:10:54 -05:00
Jeremy Allison
1b456f2894 r13778: When deleting machine accounts it's the SeMachineAccountPrivilege
that counts.
Jeremy.
(This used to be commit aa85ba4f37)
2007-10-10 11:10:53 -05:00
Simo Sorce
1da8345777 r13776: Merge in the editposix ldapsam optimization
(This used to be commit a374546c7e)
2007-10-10 11:10:53 -05:00
Gerald Carter
1438ee5359 r13772: More default changes
* winbind nested groups = yes
* host msdfs = ye
* msdfs root = yes
(This used to be commit b5f01559e1)
2007-10-10 11:10:53 -05:00
Gerald Carter
4f636b57c1 r13771: BUG 3534: ignore lines in the username map file with no right hand list rather than bailing out
(This used to be commit acff5163ca)
2007-10-10 11:10:53 -05:00