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

103 Commits

Author SHA1 Message Date
Jelmer Vernooij
1115745cae r18188: merge 3.0-libndr branch 2007-10-10 11:43:56 -05:00
Volker Lendecke
761cbd52f0 r17554: Cleanup 2007-10-10 11:38:38 -05:00
Volker Lendecke
4ebfc30a28 r17468: To minimize the diff later on, pre-commit some changes independently: Change
internal mapping.c functions to return NTSTATUS instead of BOOL.

Volker
2007-10-10 11:38:36 -05:00
Volker Lendecke
f9856f6490 r17463: A bit of cleanup work:
Remove some unused code: pdb_find_alias is not used anymore, and nobody I
think has ever used the pdb_nop operations for group mapping. smbpasswd and
tdb use the default ones and ldap has its own.

Make the functions pdb_getgr* return NTSTATUS instead of BOOL. Nobody right
now really makes use of it, but it feels wrong to throw away information so
early.

Volker
2007-10-10 11:38:36 -05:00
Volker Lendecke
873a5a1211 r17451: Change pdb_getgrsid not to take a DOM_SID but a const DOM_SID * as an
argument.

Volker
2007-10-10 11:38:34 -05:00
Volker Lendecke
795d06f427 r17375: If a field containts only whitespace, we need to do base64 as well.
Volker
2007-10-10 11:38:29 -05:00
Volker Lendecke
61e7ed593b r17374: Get rid of a silly "System User" default for "description", also fetch the
sambaProfilePath.

Volker
2007-10-10 11:38:29 -05:00
Volker Lendecke
49ad0d4d0e r17356: Also transfer the sambaHomePath attribute.
Volker
2007-10-10 11:38:28 -05:00
Volker Lendecke
e947f4bd91 r17335: Some more fixes to net rpc vampire ldif. Still not good though :-(
Volker
2007-10-10 11:38:26 -05:00
Volker Lendecke
94cdd5d64c r17313: Non-Ascii attribute values need to be encoded as base64, with an attribute
name attr:: instead of attr:

German domains tend to have umlauts in group names.

More to come tomorrow.

Volker
2007-10-10 11:38:24 -05:00
Volker Lendecke
d00e73c49b r17312: Do some reformatting on net rpc samsync ldif. Not doing this checkin easily,
as this puts me into svn blame in places I'm not sure I want my name to show
up....

Volker
2007-10-10 11:38:24 -05:00
Jeremy Allison
9dafb7f48c r16945: Sync trunk -> 3.0 for 3.0.24 code. Still need
to do the upper layer directories but this is what
everyone is waiting for....

Jeremy.
2007-10-10 11:19:14 -05:00
Jeremy Allison
9017547ccc r16429: Fix final 4 Klocwork bugs we're going to fix before
release - #785, #786, #787, #788.
Jeremy.
2007-10-10 11:18:53 -05:00
Volker Lendecke
3df0bf7d60 r16360: Fix Klocwork ID 136 520 521 522 523 542 574 575 576 607
in net_rpc.c: 715 716 732 734 735 736 737 738 739 749

in net_rpc_audit.c: 754 755 756

in net_rpc_join.c: 757

in net_rpc_registry: 766 767

in net_rpc_samsync.c: 771 773

in net_sam.c: 797 798

Volker
2007-10-10 11:18:48 -05:00
Volker Lendecke
696e210bf6 r15608: Fix a couple of Coverity errors 2007-10-10 11:17:03 -05:00
Volker Lendecke
0ece5b32f9 r15566: Fix Coverity bug # 284. The lp_ldap_xx_suffix function only return NULL if
talloc fails.

Volker
2007-10-10 11:17:01 -05:00
Jeremy Allison
9117713c5e r14743: Fix coverity bug #227. Possible deref of null pointer
in error code path.
Jeremy.
2007-10-10 11:15:45 -05:00
Jim McDonough
b4ec93f5a2 r14683: Get rid of hardcoded output file. With no arg, print to stdout,
otherwise append to output file specified.
2007-10-10 11:15:43 -05:00
Jim McDonough
0d4bd93a5c r14681: Get rid of hardcoded /tmp/add.ldif and /tmp/mod.ldif files. Is there a
different directory the temp files should be in, or is /tmp ok?

Still have to get rid of the output file hardcoding, but that is to
come, because I need to cleanup stdout.
2007-10-10 11:15:43 -05:00
Jim McDonough
655fb66b28 r14156: Fix coverity #114: free storage alloc'ed by sstring_sub() 2007-10-10 11:15:14 -05:00
Jim McDonough
a197b8c5cb r14155: Fix coverity #115: free storage alloc'ed by sstring_sub() 2007-10-10 11:15:14 -05:00
Jim McDonough
dbc0ff5544 r14153: Fix coverity #116: free storage alloc'ed by sstring_sub() 2007-10-10 11:15:14 -05:00
Jim McDonough
cf36f5949f r14152: Fix coverity #117: free storage alloc'ed by sstring_sub 2007-10-10 11:15:14 -05:00
Jim McDonough
6ff849f35a r14150: Fix coverity #118: not freeing alloc'ed storage returned from
sstring_sub().
2007-10-10 11:15:14 -05:00
Jim McDonough
2d7ba11ffb r14147: Fix coverity #119. alloc'ed memory returned not saved, so not freed.
Need to go back and correct the assumption that an "ldap xxx suffix"
parm must have an OU.
2007-10-10 11:15:13 -05:00
Jim McDonough
f75dad0325 r14135: Fix for Coverity #123: resource leak. Also rework much of the code to
make it cleaner.  There's still more to do on this...
2007-10-10 11:15:13 -05:00
Jim McDonough
2690f015be r14053: Implement Simo's suggestion: don't use /dev/null for a 'bad' path for
users/workstations
2007-10-10 11:11:08 -05:00
Volker Lendecke
c1ea48949d r14036: Ok, the last one generated a const warning. Also fix Coverity # 119.
net rpc vampire is ugly....

Volker
2007-10-10 11:11:07 -05:00
Volker Lendecke
9fe21fd032 r14035: Fix Coverity bug # 124 2007-10-10 11:11:07 -05:00
Jim McDonough
217d3fbe79 r13968: fix typo, caught by Guenther 2007-10-10 11:11:02 -05:00
Jim McDonough
f629f8a7b9 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).
2007-10-10 11:11:01 -05:00
Jeremy Allison
1d710d06a2 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.
2007-10-10 11:10:59 -05:00
Gerald Carter
6f1afa4acc r13590: * replace all pdb_init_sam[_talloc]() calls with samu_new()
* replace all pdb_{init,fill}_sam_pw() calls with samu_set_unix()
2007-10-10 11:10:16 -05:00
Gerald Carter
19b7593972 r13576: This is the beginnings of moving the SAM_ACCOUNT data structure
to make full use of the new talloc() interface.  Discussed with Volker
and Jeremy.

* remove the internal mem_ctx and simply use the talloc()
  structure as the context.
* replace the internal free_fn() with a talloc_destructor() function
* remove the unnecessary private nested structure
* rename SAM_ACCOUNT to 'struct samu' to indicate the current an
  upcoming changes.  Groups will most likely be replaced with a
  'struct samg' in the future.

Note that there are now passbd API changes.  And for the most
part, the wrapper functions remain the same.

While this code has been tested on tdb and ldap based Samba PDC's
as well as Samba member servers, there are probably still
some bugs.  The code also needs more testing under valgrind to
ensure it's not leaking memory.

But it's a start......
2007-10-10 11:10:15 -05:00
Volker Lendecke
bb40e544de r13494: Merge the stuff I've done in head the last days.
Volker
2007-10-10 11:10:06 -05:00
Gerald Carter
17e63ac4ed r13316: Let the carnage begin....
Sync with trunk as off r13315
2007-10-10 11:06:23 -05:00
Lars Müller
f650e3bdaf r12986: Use d_fprintf(stderr, ...) for any error message in net.
All 'usage' messages are still printed to stdout.

Fix some compiler warnings for system() calls where we didn't used the
return code.  Add appropriate error messages and return with the error
code we got from system() or NT_STATUS_UNSUCCESSFUL.
2007-10-10 11:06:09 -05:00
Gerald Carter
939c3cb5d7 r10656: BIG merge from trunk. Features not copied over
* \PIPE\unixinfo
* winbindd's {group,alias}membership new functions
* winbindd's lookupsids() functionality
* swat (trunk changes to be reverted as per discussion with Deryck)
2007-10-10 11:04:48 -05:00
Günther Deschner
c270ae79b5 r8786: Fix amazing and long-standing bug where user-accounts are just crippled
accounts (accounts without AcctCtrl set) after a vampire-process.

New Accounts tend to hace no acb_info at all which means "0"
(ACB_NORMAL). Unless 0 becomes not 0 we don't do anything and set *no*
acctrl for normal users at all (!). Those crippled users now don't show
up in usrmgr since 3.0.20somethings ldap-routines now finally test if
the attribute is there.

Guenther
2007-10-10 11:00:17 -05:00
Günther Deschner
af1aa09cde r8396: fix some compile warnings.
Guenther
2007-10-10 11:00:04 -05:00
Jim McDonough
cb5634a305 r8189: commit vampire ldif patch, mostly from Don Watson (dwatson@us.ibm.com). Yes,
that's my copyright...that's just how we have to do things at big blue.

Adds subcommand to vampire to allow data to be put into an ldif file instead
of actually writing to the passdb.  See "net rpc help vampire" for usage
info.  This should be added to docs as well.
2007-10-10 10:58:18 -05:00
Jeremy Allison
9506b8e145 r7882: Looks like a large patch - but what it actually does is make Samba
safe for using our headers and linking with C++ modules. Stops us
from using C++ reserved keywords in our code.
Jeremy
2007-10-10 10:58:00 -05:00
Gerald Carter
318c3db4cb r7130: remove 'winbind enable local accounts' code from the 3.0 tree 2007-10-10 10:57:01 -05:00
Volker Lendecke
3493d9f383 r6263: Get rid of generate_wellknown_sids, they are const static and initializable
statically.

Volker
2007-10-10 10:56:33 -05:00
Tim Potter
ede9fd08cf r5909: Remove some unecessary casts. Patch from Jason Mader for bugzill #2468. 2007-10-10 10:56:08 -05:00
Günther Deschner
fdf9bdbbac r5349: After talking with Jerry, reverted the addition of account policies to
passdb in 3_0 (they are still in trunk).

Guenther
2007-10-10 10:55:38 -05:00
Günther Deschner
3d391ef149 r5264: Log with loglevel 0 when account-administration scripts fail.
Guenther
2007-10-10 10:55:35 -05:00
Günther Deschner
75af83dfcd r4925: Migrate Account Policies to passdb (esp. replicating ldapsam).
Does automated migration from account_policy.tdb v1 and v2 and offers a
pdbedit-Migration interface. Jerry, please feel free to revert that if
you have other plans.

Guenther
2007-10-10 10:55:08 -05:00
Günther Deschner
aecacf4d9c r4877: When vampiring account policy AP_LOCK_ACCOUNT_DURATION honour "Lockout
Duration: Forever".

Guenther
2007-10-10 10:55:06 -05:00
Jim McDonough
60c3a638e4 r4538: Fix bugzilla 2198, accounts which have password last set to 0 are getting
no passwords after vampire.  Set password last set field to now.
2007-10-10 10:53:46 -05:00