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

1517 Commits

Author SHA1 Message Date
Günther Deschner
2c5e04b1f7 Fix crash bug in pdb_init_ldapsam().
Karolin, this needs to be in 3-2-stable.

Guenther
(This used to be commit 0d73bde6de)
2008-03-04 11:03:35 +01:00
Volker Lendecke
3176392878 Fix some warnings
warning: ignoring return value of 'asprintf', declared with attribute warn_unused_result
(This used to be commit ad37b7b0ae)
2008-02-25 16:09:26 +01:00
Karolin Seeger
cdb88dcf6b Change ldap search filter. This function is also used to search machine accounts which may be located in a different ou. This is an extension to e71a48bb80.
Karolin
(This used to be commit e5cc8b683c)
2008-02-19 12:35:54 +01:00
Günther Deschner
7dfeae6073 Use netr_SamInfo3 in remaining places.
Guenther
(This used to be commit 92fca97951)
2008-02-17 02:12:01 +01:00
Stefan Metzmacher
cedfcaec0c nsswitch: convert winbind_env_set(), winbind_on() and winbind_off() into macros
metze
(This used to be commit 5f623f54a9)
2008-02-13 10:44:52 +01:00
Günther Deschner
e4501b0913 Add get_logon_hours_from_pdb() (inspired by samba4).
Guenther
(This used to be commit e1bcb7d82f)
2008-02-12 14:52:25 +01:00
Karolin Seeger
cd50bc575e Change ldap search filter. This function is also used to search machine accounts which may be organized in a different ou.
Karolin
(This used to be commit e71a48bb80)
2008-02-11 10:03:47 +01:00
Günther Deschner
7ec5bfc49f More paranoid checks for secrets_init() success.
Guenther
(This used to be commit 5e60852bae)
2008-02-09 02:05:39 +01:00
Karolin Seeger
932ec38a87 Fix typo.
Karolin
(This used to be commit 53b83bb53f)
2008-02-08 10:05:47 +01:00
Jeremy Allison
8b3004bcf9 Don't return true on talloc fail.
Jeremy.
(This used to be commit 21594cb34c)
2008-02-05 18:05:59 -08:00
Volker Lendecke
a31d5e49fe Fix valgrind errors
We need to keep the names around on the search. Probably a tdb_move would do it
here as well, but RPC is not the fastest thing on earth anyway...

Thanks to Günther for pointing that out to me!
(This used to be commit c9472ae610)
2008-02-04 19:41:04 +01:00
Volker Lendecke
c246eeb6f1 Remove a static
I very much doubt that this is called enough to justify a global. If this turns
out to be a hot code path, we might reconsider :-)
(This used to be commit 5223d18ea2)
2008-02-04 19:40:08 +01:00
Michael Adam
76e5c1f79a Fix lookup_sids to detect unix_groups and unix_users domain sids.
This fixes panics in wbcLookupRids when 1-2-22 was passed as a
domain sid.

Michael
(This used to be commit c0d9732cf4)
2008-01-25 01:42:22 +01:00
Michael Adam
60daaeeb34 Add a debug message: show the sid lookup_sid() was called for.
Michael
(This used to be commit 6c7c6c3f85)
2008-01-25 01:42:22 +01:00
Michael Adam
d682e04828 Add a debug message to lookup_rids() printing the domain SID.
This is to ease debugging. I sporadically get panics that are
apparently due to NULL domain sid passed to lookup_rids somewhere.

Michael
(This used to be commit 723e877c24)
2008-01-25 01:42:22 +01:00
Jeremy Allison
aa8818bcc3 Fix CID 469. new_acct can't be NULL here.
Jeremy.
(This used to be commit c79e9414c4)
2008-01-12 00:09:35 -08:00
Michael Adam
7c6d77dd88 Fix memleak in ldapsam_rename_sam_account() found by IBM checker.
The check for out of memory was the wrong way round.

Michael
(This used to be commit d7a7b79320)
2008-01-09 22:09:55 +01:00
Michael Adam
f3603d5a5a Convert add_sid_to_array() add_sid_to_array_unique() to return NTSTATUS.
Michael
(This used to be commit 6b2b9a60ef)
2008-01-09 01:47:10 +01:00
Günther Deschner
c0d33508ff Add secrets_shutdown().
Guenther
(This used to be commit dd3fbd93b6)
2008-01-07 12:48:21 +01:00
Jeremy Allison
cfcdeb52bf Fix for bug #5163 from Laurent Pinchart <pinchart@skynet.be>
Failure to change password in ldap is mapped to NT_STATUS_UNSUCCESSFUL unconditionally.
Jeremy.
(This used to be commit 9369d6e907)
2008-01-02 18:20:23 -08:00
Michael Adam
df450fc090 Make pdb_tdb honour a private dir overridden in smb.conf.
One lp_private_dir() has to be used instead of get_dyn_PRIVATE_DIR()
to determine the location of the passdb.tdb.

I noticed this when running make test as a "normal user" from a
build, where I had done "make install" as root before, and so
the passdb.tdb could not be accessed during the startup phase
"CREATE TEST ENVIRONMENT IN ./st ..." in selftest.sh.

Michael
(This used to be commit 1f96389afa)
2007-12-29 21:38:39 -08:00
Volker Lendecke
40bf6730aa passdb.tdb is located in the private directory
Jerry, as part of d6cdbfd87 the default location of passdb.tdb has changed from
the private directory to the state directory. I think because passdb.tdb holds
the password hashes, it is reasonable to keep this next to the smbpasswd file.

Please review and potentially push.

Thanks,

Volker
(This used to be commit c9c7607c40)
2007-12-29 01:01:47 -08:00
Volker Lendecke
3c99b7773e Convert csamuser to memcache
(This used to be commit 476d3abf9c)
2007-12-28 13:13:29 +01:00
Volker Lendecke
e70c97ef85 Remove the sampwent interface
(This used to be commit 9e80b969fb)
2007-12-26 18:57:15 +01:00
Volker Lendecke
f633d348d7 smbpasswd_search_users
(This used to be commit 84af4fb656)
2007-12-26 18:57:14 +01:00
Volker Lendecke
533c7c81fe Add tdbsam_search_users
(This used to be commit 02f0b0bd39)
2007-12-26 18:57:14 +01:00
Volker Lendecke
a55a08a217 Convert the [gu]id_sid cache to memcache
(This used to be commit 4baf36784f)
2007-12-23 12:43:29 +01:00
Volker Lendecke
e518e19bc0 Remove Get_Pwnam and its associated static variable
All callers are replaced by Get_Pwnam_alloc
(This used to be commit 735f593154)
2007-12-19 21:09:10 +01:00
Günther Deschner
d0cd32e2c8 Add and use some keystr functions using talloc_tos() in secrets api.
Guenther
(This used to be commit 6ccbf67a0c)
2007-12-19 11:15:17 +01:00
Michael Adam
a3081ba5b5 Prevent another segfault.
Michael
(This used to be commit 0a9874c1c7)
2007-12-18 01:30:52 +01:00
Michael Adam
9f5a16a22d Remove direct caller of secrets_fetch_trusted_domain_password().
This is a regession introduced by f7efc0eca9.
This calls pdb_get_trusteddom_pw() instead, again.

Michael
(This used to be commit 91be824d2b)
2007-12-17 14:51:37 +01:00
Michael Adam
81327b1613 Fix for bug #4801: Correctly implement lsa lookup levels for lookupnames.
This patch is still incomplete in that winbindd does not walk
the the trusted domains to lookup unqualified names here.
Apart from that this fix should be pretty much complete.

Michael
(This used to be commit f7efc0eca9)
2007-12-17 13:06:13 +01:00
Volker Lendecke
2e07c2ade8 s/sid_to_string/sid_to_fstring/
least surprise for callers
(This used to be commit eb523ba776)
2007-12-15 22:47:30 +01:00
Volker Lendecke
14ef4cdec1 Replace sid_string_static with sid_to_string
This adds 28 fstrings on the stack, but I think an fstring on the stack is
still far better than a static one.
(This used to be commit c7c885078b)
2007-12-15 22:09:37 +01:00
Volker Lendecke
54ae9dfcbc Use sid_string_talloc where we have a tmp talloc ctx
(This used to be commit 0a911d38b8)
2007-12-15 22:09:36 +01:00
Volker Lendecke
900288a2b8 Replace sid_string_static by sid_string_dbg in DEBUGs
(This used to be commit bb35e794ec)
2007-12-15 22:09:36 +01:00
Volker Lendecke
105635e23c Use sid_string_talloc where we have a tmp talloc ctx
(This used to be commit f00ab810d2)
2007-12-15 22:09:35 +01:00
Stefan Metzmacher
adc31b9235 Revert "Fix for bug #4801: Correctly implement lsa lookup levels for lookupnames."
As it breaks all tests which try to join a new machine account.
So more testing is needed...

metze

This reverts commit dd320c0924.
(This used to be commit cccb80b7b7)
2007-12-14 08:28:10 +01:00
Michael Adam
ce76bcff29 Pass NULL instead of unneeded &sid: pdb_get_trusteddom_pw() checks.
Michael
(This used to be commit b2e12365b5)
2007-12-13 10:15:19 +01:00
Michael Adam
31f221ed93 Rename get_trust_pw() to get_trust_pw_hash().
Michael
(This used to be commit 0cde7ac9cb)
2007-12-13 10:15:19 +01:00
Michael Adam
1084151442 Export logic of get_trust_pw() to new function get_trust_pw_clear().
get_trust_pw() just now computes the md4 hash of the result of
get_trust_pw_clear() if that was successful. As a last resort,
in the non-trusted-domain-situation, get_trust_pw() now tries to
directly obtain the hashed version of the password out of secrets.tdb.

Michael
(This used to be commit 4562342eb8)
2007-12-13 10:15:18 +01:00
Michael Adam
fe969f9a7f Refactor the lagacy part of secrets_fetch_trust_account_password() out
into a new function secrets_fetch_trust_account_password_legacy() that
does only try to obtain the hashed version of the machine password directly
from secrets.tdb.

Michael
(This used to be commit 91da12b751)
2007-12-13 10:15:18 +01:00
Michael Adam
f793c99ca5 Let get_trust_pw() determine the machine_account_name to use.
Up to now each caller used its own logic.

This eliminates code paths where there was a special treatment
of the following situation: the domain given is not our workgroup
(i.e. our own domain) and we are not a DC (i.e. it is not a typical
trusted domain situation). In situation the given domain name was
previously used as the machine account name, resulting in an account
name of DOMAIN\\DOMAIN$, which does not seem very reasonable to me.
get_trust_pw would not have obtained a password in this situation
anyways.

I hope I have not missed an important point here!

Michael
(This used to be commit 6ced4a7f88)
2007-12-13 10:15:17 +01:00
Michael Adam
b99a6b0e8c Remove two unneeded functions.
secrets_store_trust_account_password() and trust_password_delete()
are the write access functions to the SECRETS/$MACHINE.ACC/domain keys
in secrets.tdb, the md4 hashed machine passwords. These are not used
any more: Current code always writes the clear text password.

Michael
(This used to be commit 4788fe3924)
2007-12-13 10:15:13 +01:00
Michael Adam
951466000c Fix for bug #4801: Correctly implement lsa lookup levels for lookupnames.
This is a first patch aimed at fixing bug #4801.
It is still incomplete in that winbindd does not walk
the the trusted domains to lookup unqualified names here.
Apart from that this fix should be pretty much complete.

Michael
(This used to be commit dd320c0924)
2007-12-13 10:15:13 +01:00
Michael Adam
2ade25279c Fix logic and prevent segfaults in secrets trustdom tdb pack code.
New size calculation logic in tdb_trusted_dom_pass_pack()
and tdb_sid_pack() used accumulated sizes as successive offsets
to buffer pointer.

Michael
(This used to be commit 9c24713b40)
2007-12-12 09:47:41 -08:00
Michael Adam
b0469d0b69 Fix secrets_store_trusted_domain_password() after pstring removal.
Jeremy, this small "&" sign has given me a headache... :-)

Michael
(This used to be commit 7590b12a99)
2007-12-12 09:47:28 -08:00
Jeremy Allison
7faee02d0d Remove the char[1024] strings from dynconfig. Replace
them with malloc'ing accessor functions. Should save a
lot of static space :-).
Jeremy.
(This used to be commit 52dc5eaef2)
2007-12-10 11:30:37 -08:00
Jeremy Allison
42cfffae80 Remove next_token - all uses must now be next_token_talloc.
No more temptations to use static length strings.
Jeremy.
(This used to be commit ec003f3936)
2007-12-07 17:32:32 -08:00
Jeremy Allison
bcf033b38e Change tdb_unpack "P" to return a malloc'ed string rather
than expect a pstring space to put data into.
Fix the (few) callers.
Jeremy.
(This used to be commit 7722a7d2c6)
2007-12-03 14:54:06 -08:00
Jeremy Allison
1cd1c9db3f Remove unused prototype for smbldap_get_single_pstring().
Don't use pstr_sprintf() on an fstring - change to talloc.
Jeremy.
(This used to be commit 6cae4b5fa1)
2007-11-27 22:22:35 -08:00
Michael Adam
96ea32b886 Use the proper boolean constants - the type has been
changed from BOOL to bool.

Michael
(This used to be commit 03673f2cd6)
2007-11-27 16:36:06 +01:00
Volker Lendecke
d4bfafa29c Fix bug 5055
(This used to be commit 8bcd2df841)
2007-11-26 15:28:13 +01:00
Volker Lendecke
2b32252b8a Improve debug message
Fix bug 5056, thanks to debian package maintainer
(This used to be commit 5b4ba4bfc5)
2007-11-26 14:36:30 +01:00
Jeremy Allison
7ef6c19074 Remove pstrings from pam_smbpass - make local_password_change
return malloced strings.
Jeremy.
(This used to be commit f652fe2bdb)
2007-11-21 17:42:52 -08:00
Jeremy Allison
66298d8080 More pstring elimination.
Jeremy.
(This used to be commit 15074de938)
2007-11-20 17:18:16 -08:00
Jeremy Allison
51b46147f2 Remove smbldap_get_single_pstring() and all pstrings
from pdb_ldap.c. I don't have an LDAP passdb setup here,
so I'm going to need some help on testing this.
Jeremy.
(This used to be commit 00760451b6)
2007-11-14 16:05:42 -08:00
Stefan Metzmacher
fdc27be1be remove faked_create_user() BUILD_FARM hack as we have nss_wrapper now
metze
(This used to be commit fc98c19048)
2007-11-09 09:53:02 +01:00
Volker Lendecke
33d8317571 static pstring removal
(This used to be commit 5490e2d772)
2007-11-05 03:16:58 +01:00
Gerald (Jerry) Carter
88ee61625a Patch 2 of 3 from Debian Samba packagers:
The point is doing the following associations:

- non discardable state data (all TDB files that may need to be backed
  up) go to statedir
- shared data (codepage stuff) go to codepagedir

The patch *does not change* the default location for these
directories. So, there is no behaviour change when applying it.

The main change is for samba developers who have to think when dealing
with files that previously pertained to libdir whether they:
- go in statedir
- go in codepagedir
- stay in libdir
(This used to be commit d6cdbfd875)
2007-11-01 15:53:44 -04:00
Jeremy Allison
101dc36162 Ensure temporary memory is freed - pointed out by "Li, Ying (ESG)" <ying.li2@hp.com>.
We aren't currently leaking memory, but are leaving it around for
longer than we need to.
Jeremy.
(This used to be commit 25bbc9a661)
2007-10-26 17:58:28 -07:00
Jeremy Allison
30191d1a57 RIP BOOL. Convert BOOL -> bool. I found a few interesting
bugs in various places whilst doing this (places that assumed
BOOL == int). I also need to fix the Samba4 pidl generation
(next checkin).
Jeremy.
(This used to be commit f35a266b3c)
2007-10-18 17:40:25 -07:00
Gerald (Jerry) Carter
e5a951325a [GLUE] Rsync SAMBA_3_2_0 SVN r25598 in order to create the v3-2-test branch.
(This used to be commit 5c6c8e1fe9)
2007-10-10 15:34:30 -05:00
Gerald Carter
99b031e190 r25401: BUG 4982: Don't delete lanman hashes on invalid logins when
using the "lanman auth = no".  Tested by Guenter Kukkukk.
(This used to be commit 611fdd95a5)
2007-10-10 12:31:02 -05:00
Jeremy Allison
ab9d7bf4f9 r25165: Use talloc_asprintf_append_buffer with an unmodified
string.
Jeremy.
(This used to be commit fe30a523df)
2007-10-10 12:30:47 -05:00
Michael Adam
e16f8188ea r25092: Add support for storing trusted domain passwords in LDAP for
passdb backend = ldapsam.

Along with reproducing the functionality of the secrets.tdb
code, I have prepared the handling of the previous trust password
(in case we are contacting a dc which does not yet know of a recent
password change). This information has still to be propagated
to the outside, but this requires a change of the api and also
a change of the secrets.tdb code.

Michael
(This used to be commit 6c3c20e6c4)
2007-10-10 12:30:39 -05:00
Michael Adam
3853c7e144 r25091: Start adding support for storing trusted domain passwords in LDAP
(for passdb backen = ldapsam). At a first step, add the hooks,
calling the secrets_ functions.

Michael
(This used to be commit 9c03cdf3a4)
2007-10-10 12:30:39 -05:00
Michael Adam
85811b273d r24991: Kill all those lots of trailing whitespaces from secrets.c.
These red bars in vi really hurt my eyes... :-o

Michael
(This used to be commit 2e99e141c3)
2007-10-10 12:30:31 -05:00
Michael Adam
f09b0d72f4 r24990: Kill an incredible amount of trailing whitespaces...
Further reformat get_trust_pw to conform to coding rules.

Michael
(This used to be commit b9e76a479e)
2007-10-10 12:30:31 -05:00
Andrew Tridgell
153cfb9c83 r23801: The FSF has moved around a lot. This fixes their Mass Ave address.
(This used to be commit 87c91e4362)
2007-10-10 12:28:27 -05:00
Andrew Tridgell
5e54558c6d r23784: use the GPLv3 boilerplate as recommended by the FSF and the license text
(This used to be commit b0132e94fc)
2007-10-10 12:28:22 -05:00
Jeremy Allison
d824b98f80 r23779: Change from v2 or later to v3 or later.
Jeremy.
(This used to be commit 407e6e695b)
2007-10-10 12:28:20 -05:00
Jeremy Allison
6afbd15b67 r23688: Fix bug #4759 reported by Raul <ismell@ismell.org>.
"N" is not a valid format entry for ber_printf, should be "n"
Jeremy.
(This used to be commit f3bb102c24)
2007-10-10 12:23:45 -05:00
Günther Deschner
39607c9129 r23630: Found out what LSA_LOOKUP_NAMES level 5 means:
only query transitive forest trusts.

Guenther
(This used to be commit e744efa1ee)
2007-10-10 12:23:38 -05:00
James Peach
b1ce226af8 r23510: Tidy calls to smb_panic by removing trailing newlines. Print the
failed expression in SMB_ASSERT.
(This used to be commit 171dc060e2)
2007-10-10 12:23:23 -05:00
Gerald Carter
9b78af1f64 r23244: Fix loop with nscd and NSS recusive calls.
> Here's the problem I hit:
>
> getgrnam("foo") -> nscd -> NSS -> winbindd ->
>   winbindd_passdb.c:nam_to_sid() -> lookup_global_sam_name() ->
>   getgrnam("foo") -> nscd -> ....
>
> This is in the SAMBA_3_0 specifically but in theory could happen
> SAMBA_3_0_25 (or 26) for an unknown group.
>
> The attached patch passes down enough state for the
> name_to_sid() call to be able to determine the originating
> winbindd cmd that came into the parent.  So we can avoid
> making more NSS calls if the original call came in trough NSS
> so we don't deadlock ?  But you should still service
> lookupname() calls which are needed for example when
> doing the token access checks for a "valid groups" from
> smb.conf.
>
> I've got this in testing now.  The problem has shown up with the
> DsProvider on OS X and with nscd on SOlaris and Linux.
(This used to be commit bcc8a3290a)
2007-10-10 12:22:58 -05:00
Gerald Carter
86f79c402d r23194: cherry pick two fixes from SAMBA_3_0_26
* strptime() failure check
* make legcacy sid/uid/gid calls static
(This used to be commit 3c9fb1c6f3)
2007-10-10 12:22:53 -05:00
Gerald Carter
fc1f6c7668 r23192: Remove fallback to looking up group mappings by the
Unix name after discussion with Simo.
(This used to be commit 6af4c1a73c)
2007-10-10 12:22:53 -05:00
Simo Sorce
9826a0074a r23051: sid_to_[ug]id fixes for smbd
(This used to be commit 2d636ad2a3)
2007-10-10 12:22:17 -05:00
Gerald Carter
53719c6d7d r23046: Few missing merges from cleaning out the Centeris winbindd tree.
Nothing of major interest.  Will fix a few problems with one way trusts.
(This used to be commit 3d48a7e72d)
2007-10-10 12:22:17 -05:00
Jeremy Allison
c15c0f2a47 r23005: If we're running on a system where time_t is 8 bytes
we have to take care to preserve the "special" values
for Windows of 0x80000000 and 0x7FFFFFFF when casting
between time_t and uint32. Add conversion functions
(and use them).
Jeremy.
(This used to be commit 4e1a0b2549)
2007-10-10 12:22:13 -05:00
Gerald Carter
78c59b56b7 r22977: Trim noise by removing redundant WARNING log message that
would flood at log level 2.  We know when we're using the legacy
mapping code anyways since it will log an informative msg.
(This used to be commit 51aac0fcb4)
2007-10-10 12:22:12 -05:00
Volker Lendecke
b4a7b7a888 r22844: Introduce const DATA_BLOB data_blob_null = { NULL, 0, NULL }; and
replace all data_blob(NULL, 0) calls.
(This used to be commit 3d3d61687e)
2007-10-10 12:22:01 -05:00
Volker Lendecke
9e30a76c04 r22786: Some cleanup by Karolin Seeger: Remove unused pdb_find_alias, and change
return values of some alias-releated pdb functions from BOOL to NTSTATUS

Thanks :-)
(This used to be commit 590d2164b3)
2007-10-10 12:21:57 -05:00
Volker Lendecke
a0f9db7a16 r22767: Argl. Typed in 'svn ci' in the wrong branch. Revert.
(This used to be commit 2c5b951eba)
2007-10-10 12:21:55 -05:00
Volker Lendecke
16ae8eff93 r22766: Merge from 3_0:
r22412 | obnox | 2007-04-20 14:23:36 +0200 (Fr, 20 Apr 2007) | 5 lines

Add a "deletelocalgroup" subcommand to net sam.

Thanks to Karolin Seeger <ks@sernet.de>.
(This used to be commit fb6ac8a5b2)
2007-10-10 12:21:55 -05:00
James Peach
d7041fedc8 r22631: Remove the possibility of sid_check_is_domain and
sid_check_is_in_our_domain getting out of sync.
(This used to be commit bbc102172a)
2007-10-10 12:19:51 -05:00
Volker Lendecke
d02f4f4db7 r22613: Fix an uninitialized variable warning
(This used to be commit d4c5d5ffb3)
2007-10-10 12:19:50 -05:00
Jeremy Allison
be8b0685a5 r22589: Make TALLOC_ARRAY consistent across all uses.
Jeremy.
(This used to be commit 8968808c3b)
2007-10-10 12:19:49 -05:00
Volker Lendecke
4570f1c52a r22125: Fix a warning
(This used to be commit 1c0ceb5fe2)
2007-10-10 12:19:14 -05:00
Jeremy Allison
bc45c82904 r22096: become_root_uid_only() is unneeded - it's only used in
messages.c. Refactor to use become_root() instead and
make it local to messages.c
Jeremy.
(This used to be commit f3ffb3f984)
2007-10-10 12:19:11 -05:00
Gerald Carter
3bdd0e3650 r22066: Ensure that winbind can resolve SIDs in the S-1-22-{1,2}
domain to a uid.gid using the idmap_passdb backend.
(This used to be commit fc1aeee52d)
2007-10-10 12:19:09 -05:00
Stefan Metzmacher
bc2b6436d0 r22009: change TDB_DATA from char * to unsigned char *
and fix all compiler warnings in the users

metze
(This used to be commit 3a28443079)
2007-10-10 12:19:00 -05:00
Stefan Metzmacher
56ba447668 r22001: change prototype of dump_data(), so that it takes unsigned char * now,
which matches what samba4 has.

also fix all the callers to prevent compiler warnings

metze
(This used to be commit fa322f0cc9)
2007-10-10 12:18:59 -05:00
Stefan Metzmacher
e6fda8cbd0 r21983: make use of tdb_*_bystring() and string_term_tdb_data()
to avoid creating the TDB_DATA struct from strings "by hand"

metze
(This used to be commit 5a5579d842)
2007-10-10 12:18:56 -05:00
Stefan Metzmacher
a3a4d6721b r21982: make use of tdb_*_bystring() and string_term_tdb_data()
to avoid creating the TDB_DATA struct from strings "by hand"

metze
(This used to be commit 9ebaa4c573)
2007-10-10 12:18:55 -05:00
Stefan Metzmacher
6e2a411795 r21981: as we use tdb_trans_store(), we should also use tdb_trans_delete()
metze
(This used to be commit 2d2f809968)
2007-10-10 12:18:55 -05:00
Jeremy Allison
772b70b478 r21954: Someone misused a '!' instead of a '~' for a binary NOT
command. Jerry, Simo, please check.
Jeremy.
(This used to be commit 8ff76a9cb8)
2007-10-10 12:18:52 -05:00
James Peach
b4f19aea18 r21881: Make sure we are very specific when testing whether a backand can handle a
particular SID. Make sure that the passdb backend will accept the same set
range of local SIDs that the idmap system sends it.

Simo, Jerry - this is a 3_0_25 candidate. Can you please review?
(This used to be commit 86a70adb6a)
2007-10-10 12:18:43 -05:00
Volker Lendecke
3f6e08db60 r21853: Fix a valgrind error
(This used to be commit d0d16cc55a)
2007-10-10 12:18:38 -05:00
Volker Lendecke
f56da0890f r21831: Back out r21823 for a while, this is going into a bzr tree first.
Volker
(This used to be commit fd0ee6722d)
2007-10-10 12:18:37 -05:00
Volker Lendecke
aa6055debd r21823: Let secrets_store_machine_password() also store the account name. Not used
yet, the next step will be a secrets_fetch_machine_account() function that
also pulls the account name to be used in the appropriate places.

Volker
(This used to be commit f94e5af72e)
2007-10-10 12:18:36 -05:00
Volker Lendecke
e6ccc787d9 r21819: Wrap all steps in secrets_store_machine_password into one single
transaction. Succeed all or store nothing.

Volker
(This used to be commit 4efc7b4598)
2007-10-10 12:18:36 -05:00
Volker Lendecke
c55d05b03c r21818: Remove some unused code
(This used to be commit f88eab91c4)
2007-10-10 12:18:36 -05:00
Volker Lendecke
0d91334fe7 r21784: Replace smb_register_idle_event() with event_add_timed(). This fixes winbind
who did not run the idle events to drop ldap connections.

Volker
(This used to be commit af3308ce5a)
2007-10-10 12:18:33 -05:00
Volker Lendecke
8a05fe78c9 r21782: Fix a memleak
(This used to be commit a2dc1f62fd)
2007-10-10 12:18:33 -05:00
James Peach
47c9fe3980 r21738: Remove unused file.
(This used to be commit 7246b31696)
2007-10-10 12:18:27 -05:00
Jeremy Allison
8e00e9d7a6 r21609: Fix memory leaks in error code paths (and one in winbindd_group.c).
Patch from Zack Kirsch <zack.kirsch@isilon.com>.
Jeremy.
(This used to be commit df07a662e3)
2007-10-10 12:18:16 -05:00
Jeremy Allison
fae01b4899 r21608: Fix a couple of memleaks in error code paths before
Coverity finds them :-)
Jeremy.
(This used to be commit cbe725f1b0)
2007-10-10 12:18:16 -05:00
Simo Sorce
e9e6af5951 r21606: Implement escaping function for ldap RDN values
Fix escaping of DN components and filters around the code
Add some notes to commandline help messages about how to pass DNs

revert jra's "concistency" commit to nsswitch/winbindd_ads.c, as it was
incorrect.
The 2 functions use DNs in different ways.

- lookup_usergroups_member() uses the DN in a search filter,
and must use the filter escaping function to escape it
Escaping filters that include escaped DNs ("\," becomes "\5c,") is the
correct way to do it (tested against W2k3).

- lookup_usergroups_memberof() instead uses the DN ultimately as a base dn.
Both functions do NOT need any DN escaping function as DNs can't be reliably
escaped when in a string form, intead each single RDN value must be escaped
separately.

DNs coming from other ldap calls (like ads_get_dn()), do not need escaping as
they come already escaped on the wire and passed as is by the ldap libraries

DN filtering has been tested.
For example now it is possible to do something like:
'net ads add user joe#5' as now the '#' character is correctly escaped when
building the DN, previously such a call failed with Invalid DN Syntax.

Simo.
(This used to be commit 5b4838f62a)
2007-10-10 12:18:16 -05:00
Gerald Carter
2b52e35770 r21507: Fix some "cannot access LDAP when no root" bugs.
The two culprits were

* pdb_get_account_policy()
* pdb_get_group_sid()
(This used to be commit 6a69caf690)
2007-10-10 12:18:09 -05:00
Volker Lendecke
25f1710991 r20998: Fix debug message
(This used to be commit a5a1c8c785)
2007-10-10 12:17:25 -05:00
Gerald Carter
78f5f4b260 r20985: leave room for terminating NULL when printing password hashes via 'pdbedit -L -w'
(This used to be commit 2a7311db27)
2007-10-10 12:17:22 -05:00
Volker Lendecke
b385a40f59 r20851: To read account policies from LDAP we need root.
Volker
(This used to be commit b48ea4d777)
2007-10-10 12:17:13 -05:00
Volker Lendecke
b906886e9e r20824: Send access to the trusted domain passwords through the pdb backend, so that
in the next step we can store them in LDAP to be replicated across DCs.

Thanks to Michael Adam <ma@sernet.de>

Volker
(This used to be commit 3c879745cf)
2007-10-10 12:17:10 -05:00
Volker Lendecke
dbea3a2b6f r20707: Clean up pdb_interface.c a bit -- patch from Michael Adam <ma@sernet.de>
(This used to be commit d78c18a9fa)
2007-10-10 12:17:04 -05:00
Volker Lendecke
69272c9b04 r20644: Make some functions static, thanks to Michael Adam <ma@sernet.de> for the hint.
(This used to be commit f1f5d035db)
2007-10-10 12:17:01 -05:00
Volker Lendecke
5740f6910e r20614: Dummy-checkin to trigger the build
(This used to be commit 7e444e1612)
2007-10-10 12:16:58 -05:00
Andrew Bartlett
adb3a63943 r20402: Fix spelling: samba bug #4292 debian #402392
(This used to be commit e43aa4e03d)
2007-10-10 12:16:46 -05:00
Simo Sorce
91626a4497 r20243: Make lookup_name resolve both the mapped and the real unix group name
(This used to be commit 7167e7b26a)
2007-10-10 12:16:35 -05:00
Volker Lendecke
494a6e7658 r20212: Attempt to fix the Solaris build
(This used to be commit 902d81becb)
2007-10-10 12:16:32 -05:00
Simo Sorce
35a3773a6d r20169: Support for fallback to legacy mapping code was not completely tested.
Add necessary fixes.
(This used to be commit 4a81ee9608)
2007-10-10 12:16:28 -05:00
Simo Sorce
4225f9a4bd r20116: Start merging in the work done to create the new idmap subsystem.
Simo.
(This used to be commit 50cd8bffee)
2007-10-10 12:16:25 -05:00
Jeremy Allison
63609fbb04 r20090: Fix a class of bugs found by James Peach. Ensure
we never mix malloc and talloc'ed contexts in the
add_XX_to_array() and add_XX_to_array_unique()
calls. Ensure that these calls always return
False on out of memory, True otherwise and always
check them. Ensure that the relevent parts of
the conn struct and the nt_user_tokens are
TALLOC_DESTROYED not SAFE_FREE'd.
James - this should fix your crash bug in both
branches.
Jeremy.
(This used to be commit 0ffca7559e)
2007-10-10 12:16:24 -05:00
Volker Lendecke
d746c3b781 r19945: Fix a segfault -- lookup_rids needs to init the names even on failure
(This used to be commit eba404e668)
2007-10-10 12:16:14 -05:00
Volker Lendecke
817151c87f r19943: Fix bug 4267 -- Thanks to David!
(This used to be commit 714971b34a)
2007-10-10 12:16:12 -05:00
Gerald Carter
cd41945acc r19579: BUG 4075: patch from Dmitry Butskoy <dmitry@butskoy.name>.
Allow smbd to use winbindd to lookup uids/gids outside the
idmap range if 'winbind trusted domains only = yes'
(This used to be commit 5b3ac400a7)
2007-10-10 12:15:42 -05:00
Gerald Carter
2145eff91d r19419: BUG 4109: Patch from Timur Bakeyev. Fix bug causing smbd to turn off
winbindd and fail to disable the _NO_WINBIND environment.
(This used to be commit a6366b40b3)
2007-10-10 12:15:34 -05:00
Volker Lendecke
d193fa1a4d r19083: Fix objectclass
(This used to be commit 6c4d68d849)
2007-10-10 12:15:09 -05:00
Jim McDonough
dc1f0804dd r19058: Implement "user cannot change password", and complete "user must change
password at next logon" code.  The "password last set time" of zero now
means "user must change password", because that's how windows seems to
use it.  The "can change" and "must change" times are now calculated
based on the "last set" time and policies.

We use the "can change" field now to indicate that a user cannot change
a password by putting MAX_TIME_T in it (so long as "last set" time isn't
zero).  Based on this, we set the password-can-change bit in the
faked secdesc.
(This used to be commit 21abbeaee9)
2007-10-10 12:15:06 -05:00
Jim McDonough
e04dda6a2a r18722: Fix up password change times. The can change and must change times are
calculated based on the last change time, policies, and acb flags.

Next step will be to not bother storing them.  Right now I'm just trying to
get them reported correctly.
(This used to be commit fd5761c9e5)
2007-10-10 12:00:52 -05:00
Günther Deschner
a3e1f7e44d r18703: Fix the annoying effect that happens when nscd is running:
We usually do not get the results from user/group script modifications
immediately. A lot of users do add nscd restart/refresh commands into
their scripts to workaround that while we could flush the nscd caches
directly using libnscd.

Guenther
(This used to be commit 7db6ce295a)
2007-10-10 12:00:49 -05:00
Gerald Carter
3c222089ed r18684: pdb_get_group_sid() has to use the Get_Pwnam_alloc() call
to ensure it finds the Unix user.
(This used to be commit 4cea9bfca1)
2007-10-10 12:00:47 -05:00
Jelmer Vernooij
4e7d11449a r18654: Rename "struct uuid" => "struct GUID" for consistency.
(This used to be commit 5de76767e8)
2007-10-10 11:52:19 -05:00
Volker Lendecke
fcec9a23e9 r18527: Janitor for Jeremy ;-)
(This used to be commit d72ba9ed12)
2007-10-10 11:51:46 -05:00
Jeremy Allison
b3b207e966 r18483: Ensure all pdb_XXX calls are wrapped in become_root()/unbecome_root()
pairs. Should fix bug #4097.
Jeremy.
(This used to be commit f787b9d156)
2007-10-10 11:51:44 -05:00
Volker Lendecke
716f7245d9 r18313: Nobody said "no" (yet.... gd?), so commit it:
Remove the account_policy_migrated() thingy, and make cache_account_policy_set
use gencache. Account policies are now handled like groups and users are with
respect to "passdb backend".

Volker
(This used to be commit fa8b2e2a58)
2007-10-10 11:51:19 -05:00
Gerald Carter
2b27c93a9a r18271: Big change:
* autogenerate lsa ndr code
* rename 'enum SID_NAME_USE' to 'enum lsa_SidType'
* merge a log more security descriptor functions from
  gen_ndr/ndr_security.c in SAMBA_4_0

The most embarassing thing is the "#define strlen_m strlen"
We need a real implementation in SAMBA_3_0 which I'll work on
after this code is in.
(This used to be commit 3da9f80c28)
2007-10-10 11:51:18 -05:00
Gerald Carter
e53dfa1f4a r17971: Disable storing SIDs in the S-1-22-1 and S-1-22-2 domain to the SID<->uid/gid cache. FIxes a bug in token creation
(This used to be commit fa05708789)
2007-10-10 11:39:44 -05:00
Volker Lendecke
3bc4fd1bb9 r17924: Get rid of warnings now that talloc is merged.
Destructors now take a pointer to the "real" destroyed object as an argument.

Volker
(This used to be commit 70edd716ef)
2007-10-10 11:38:59 -05:00
Volker Lendecke
b9142f20df r17831: Attempt to fix the build farm: 0x7fffffffffffffff needs special casing too I
think. This broke 'make test' because the newly created user was set to be
kicked off Mi, 22 Jan 1975 23:55:33 CET (unix time 159663333) with the
setuserinfo21 call.

I'm not 100% sure that 0x7ff... means max time as I do it here, I vaguely
remember it to mean "don't touch".

Does anybody know that for sure?

Jeremy, please check this.

Thanks,

Volker
(This used to be commit 872d1299eb)
2007-10-10 11:38:52 -05:00
Gerald Carter
f8f1ed21db r17815: Revert Volker's change in 16014. I really do not believe
the this should be necessary.  If there is still a bug,
I believe that setting thr group RID from the passdb is
masking it.  Not fixing it.  It is very likely that
the change was necessary before but is no longer
with the recent changes.  But I'm not taking the chance
of merging it to 3.0.23c. :-)
(This used to be commit 1a5b90f3c1)
2007-10-10 11:38:51 -05:00
Gerald Carter
40b1bd3091 r17813: Remove another instance of manually setting the group SID.
The would have been primaryly used when adding a user to
an smbpasswd file, but could have been introduce to other
backends by using pdbedit -i -e.

The symptom was

[2006/08/09 13:07:43, 0] rpc_parse/parse_samr.c:init_sam_user_info21A(6276)
  init_sam_user_info_21A: User nobody has Primary Group SID S-1-22-2-99,
  which conflicts with the domain sid S-1-5-21-1825997848-4107600307-1754506280.
  Failing operation.
(This used to be commit 0a3aa8b43a)
2007-10-10 11:38:51 -05:00
Gerald Carter
d190f71b83 r17709: Fix cut-n-paste error with the name of gid_to_unix_group_sid().
(This used to be commit dda0b8bce6)
2007-10-10 11:38:46 -05:00
Gerald Carter
4a6a574eb4 r17673: volker's patch for re-adding Getpwnam() lookups to smbpasswd backend (I hate username level)
(This used to be commit 0939b6e20c)
2007-10-10 11:38:46 -05:00
Gerald Carter
c9f9c65050 r17669: Remove RID algorithm support from unmapped users and groups
when using smbpasswd
(This used to be commit dde552336c)
2007-10-10 11:38:45 -05:00
Volker Lendecke
d0301937ed r17592: Remove some unused functions pointed out by John E. Malmberg, make
do_file_lock static to pdb_smbpasswd.c, the only user of it.

Volker
(This used to be commit 543f77a45f)
2007-10-10 11:38:41 -05:00
Volker Lendecke
03e3cd1d5a r17554: Cleanup
(This used to be commit 761cbd52f0)
2007-10-10 11:38:38 -05:00
Volker Lendecke
76362d0d33 r17468: To minimize the diff later on, pre-commit some changes independently: Change
internal mapping.c functions to return NTSTATUS instead of BOOL.

Volker
(This used to be commit 4ebfc30a28)
2007-10-10 11:38:36 -05:00
Volker Lendecke
d802774e02 r17465: Get rid of add_initial_entry. In the two places it was called in it seemed a
bit pointless to me.

Volker
(This used to be commit 244b25ae49)
2007-10-10 11:38:36 -05:00
Volker Lendecke
e1e62d8999 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
(This used to be commit f9856f6490)
2007-10-10 11:38:36 -05:00
Volker Lendecke
ff7c0a7c35 r17451: Change pdb_getgrsid not to take a DOM_SID but a const DOM_SID * as an
argument.

Volker
(This used to be commit 873a5a1211)
2007-10-10 11:38:34 -05:00
Jeremy Allison
43c7f6d1d1 r17407: Don't do strchr_m twice when once will do.
Jeremy.
(This used to be commit b5f0b1b644)
2007-10-10 11:38:32 -05:00
Volker Lendecke
6361d151a4 r17406: We need to do a translation of winbind separator -> '\\' in
lookup_name_smbconf, otherwise

force user = domain+administrator

can not work. Also attempt to fix the 'valid users = domain+group' bug at the
same time.

Volker
(This used to be commit 255475901c)
2007-10-10 11:38:32 -05:00
Volker Lendecke
7cc7fc51c6 r17404: Is this XP (extreme programming)? :-)
With lp_workgroup we end up with remote names again...

Volker
(This used to be commit 250b9f3531)
2007-10-10 11:38:32 -05:00
Gerald Carter
f8aa6abb68 r17403: add a helpful debug msg
(This used to be commit 63325b3687)
2007-10-10 11:38:32 -05:00
Jeremy Allison
f8aa1c75f4 r17402: Added lookup_name_smbconf() to be called when looking
up names from smb.conf. If the name is unqualified it
causes the lookup to be done in WORKGROUP\name, then
"Unix [users|groups]"\name rather than searching the
domain. Should fix the problems with "force user"
selecting a domain user by preference.
Jeremy.
(This used to be commit 1e1fcb5eb2)
2007-10-10 11:38:31 -05:00
Gerald Carter
9bfa22a502 r17271: Fix a regression in the ldapsam uri syntax.
Allow multiple LDAP URIs to be grouped by  ""
(This used to be commit 21d69dcb3c)
2007-10-10 11:38:23 -05:00
Gerald Carter
382b088193 r17246: BUG 3964: lower case username prior to getpwnam() call in smbpasswd
(This used to be commit dc4fec1f7d)
2007-10-10 11:38:22 -05:00
Gerald Carter
9f6fb43eee r17150: MMC User & group plugins fixes:
* Make sure to lower case all usernames before
  calling the create, delete, or rename hooks.
* Preserve case for usernames in passdb
* Flush the getpwnam cache after renaming a user
* Add become/unbecome root block in _samr_delete_dom_user()
  when trying to verify the account's existence.
(This used to be commit bbe11b7a95)
2007-10-10 11:38:16 -05:00
Volker Lendecke
d2b11041b2 r17075: Even without talloc_steal you can still create memory problems.... ;-)
(This used to be commit 03e9924f5c)
2007-10-10 11:38:10 -05:00
Jeremy Allison
fbdcf2663b 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.
(This used to be commit 9dafb7f48c)
2007-10-10 11:19:14 -05:00
Volker Lendecke
66259d06fb r16866: No idea why I did not see the warning, sorry....
(This used to be commit 84913caebd)
2007-10-10 11:19:12 -05:00
Volker Lendecke
3899f95e1f r16865: This is a proposal to fix bug 3915. Before sending patches around, this is
what svn is for.

The idea is that we fall back to a pure unix user with S-1-22 SIDs in the
token in case anything weird is going on with the 'force user'.

Volker
(This used to be commit 9ec5ccfe85)
2007-10-10 11:19:12 -05:00
Jeremy Allison
ae30a44bc0 r16683: Fix bug #3900 reported by jason@ncac.gwu.edu.
Jeremy.
(This used to be commit 8c7e40f2a4)
2007-10-10 11:19:07 -05:00
Jeremy Allison
5e924c3962 r16681: Fix bug #3899 reported by jason@ncac.gwu.edu.
Jeremy.
(This used to be commit 1cd9a0ef83)
2007-10-10 11:19:07 -05:00
Jeremy Allison
b85c276e95 r16678: Fix bug #3898 reported by jason@ncac.gwu.edu.
Jeremy.
(This used to be commit 5c5ea3152f)
2007-10-10 11:19:07 -05:00
Jeremy Allison
124cd3c604 r16663: Fix coverity #301, memleak in error path.
Jeremy.
(This used to be commit dfdb4ce891)
2007-10-10 11:19:06 -05:00
Jeremy Allison
6c94466d7b r16628: Fix bug #3880, reported by jason@ncac.gwu.edu
by ensuring we return the correct enum for sid
type, not a uint32.
Jeremy.
(This used to be commit 98a5e20ff4)
2007-10-10 11:19:04 -05:00
Jeremy Allison
5887885da3 r16624: Fix bug #3877, reported by jason@ncac.gwu.edu
Jeremy.
(This used to be commit 1f52b8b406)
2007-10-10 11:19:04 -05:00
Jeremy Allison
8e274e8661 r16593: Make the invarient explicit to Klocwork. Bug #2023.
Jeremy.
(This used to be commit 720a917205)
2007-10-10 11:19:02 -05:00
Jeremy Allison
d1014c1cdf r16582: Fix Klocwork #1997 and all generic class of problems
where we don't correctly check the return from memdup.
Jeremy.
(This used to be commit ce14daf51c)
2007-10-10 11:19:01 -05:00
Volker Lendecke
ca8b86c51a r16427: Fix bug # 3848. Thanks to Wilco Baan Hofman for testing the release candidate!
Volker
(This used to be commit adf2dcce09)
2007-10-10 11:18:53 -05:00
Jeremy Allison
684dd7f2cf r16383: Klocwork #1086. No null deref.
Jeremy.
(This used to be commit 7b68a2acfc)
2007-10-10 11:18:50 -05:00
Jeremy Allison
795c99d6b8 r16381: Now samu can't be null don't check it on set. Klockwork
related fix.
Jeremy.
(This used to be commit 2e5a881478)
2007-10-10 11:18:50 -05:00
Volker Lendecke
e7fc37cf0f 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
(This used to be commit 3df0bf7d60)
2007-10-10 11:18:48 -05:00
Günther Deschner
17cbb65317 r16350: Fix the build.
GUenther
(This used to be commit 3203ce3b49)
2007-10-10 11:17:37 -05:00
Volker Lendecke
e279878b28 r16334: Fix Klocwork ID's 1087, 1095, 1096, 1098, 1099, 1101, 1102, 1105, 1107, 1109,
1111

Volker
(This used to be commit d3f5acb16e)
2007-10-10 11:17:34 -05:00
Jeremy Allison
f9147c4e40 r16241: Fix Klocwork #106 and others like it.
Make 2 important changes. pdb_get_methods()
returning NULL is a *fatal* error. Don't try
and cope with it just call smb_panic. This
removes a *lot* of pointless "if (!pdb)" handling
code. Secondly, ensure that if samu_init()
fails we *always* back out of a function. That
way we are never in a situation where the pdb_XXX()
functions need to start with a "if (sampass)"
test - this was just bad design, not defensive
programming.
Jeremy.
(This used to be commit a0d368197d)
2007-10-10 11:17:27 -05:00
Volker Lendecke
8fa2907efd r16197: Fix Klocwork id 1338
(This used to be commit 963ae5bd14)
2007-10-10 11:17:24 -05:00
Jeremy Allison
685aed3fb4 r16155: Janitor for jelmer.
Fix typo in DEBUG()
Jeremy.
(This used to be commit da768bf9c2)
2007-10-10 11:17:23 -05:00
Günther Deschner
d28456fe22 r16121: Fix a eDir related memory leak.
Guenther
(This used to be commit 322f1664df)
2007-10-10 11:17:21 -05:00
Jeremy Allison
f897e7094f r16076: Fix for machine password timeout overflow from Shlomi Yaakobovich
<Shlomi@exanet.com>.
Jeremy.
(This used to be commit 5cd234a1ff)
2007-10-10 11:17:19 -05:00
Volker Lendecke
40dc4e2d1a r16064: Bug fix for another one Tom Bork has reported:
'valid users = +unixgroup' failed with smbpasswd if 'unixgroup' has a
(non-algorithmic) group mapping.

Thanks a lot!

People out there listening, please test current code, this release is

	   **BIG**

:-)

Volker
(This used to be commit 8f9ba5f96c)
2007-10-10 11:17:19 -05:00
Jeremy Allison
3d4d799eee r16016: Add debug to be symetrical with reading from
cache.
Jeremy.
(This used to be commit da26565a2e)
2007-10-10 11:17:17 -05:00
Volker Lendecke
d7dbf37825 r16014: Correctly set the group RID in init_sam_from_buffer.
BIG THANKS to Tom Bork for reporting that Bug!

Volker
(This used to be commit 40339fdcce)
2007-10-10 11:17:17 -05:00
Jeremy Allison
865e13aea1 r15895: Ensure all new rid allocation goes through
the same function (deals with races).
Jeremy.
(This used to be commit 4962548dfe)
2007-10-10 11:17:12 -05:00
Jeremy Allison
a835b9500a r15888: Fix bug #3804 from jason@ncac.gwu.edu
Invalid comparisons.
Jeremy.
(This used to be commit 9890a31c5f)
2007-10-10 11:17:12 -05:00
Günther Deschner
f81e4521bf r15649: Allow to store 24 password history entries in ldapsam (same limit as on
Windows). Fixes bug #1914.

Guenther
(This used to be commit b5a5d0b24e)
2007-10-10 11:17:05 -05:00
Günther Deschner
22bed618b6 r15633: Minor smbldap/pdb_ldap cleanup
Guenther
(This used to be commit 1b5a712467)
2007-10-10 11:17:04 -05:00
Volker Lendecke
75d2304643 r15601: Fix segfaults with 'security=share' and 'guest only = yes'
Volker
(This used to be commit ea7cced6bc)
2007-10-10 11:17:03 -05:00
Volker Lendecke
91828b893d r15571: Fix Coverity bug #285
(This used to be commit 2cf503d7da)
2007-10-10 11:17:02 -05:00
Gerald Carter
745e2490ae r15547: say goodbye to --with-ldapsam (although the ldapsam_compat passdb backend still exists
(This used to be commit 7d99e05ee8)
2007-10-10 11:16:58 -05:00
Günther Deschner
fc5f948260 r15542: Close the LDAP connection and free the struct, regardless whether the
simple bind operation was successful or not.

Guenther
(This used to be commit e4734cb99c)
2007-10-10 11:16:57 -05:00
Jeremy Allison
d819760f8e r15444: Fix from Jim to ensure we do a wildcard search for SID's
starting with the global SAM sid, not an exact search.
Jeremy.
(This used to be commit 755c272ebf)
2007-10-10 11:16:45 -05:00
Volker Lendecke
be8e338ef7 r15360: Fix bug # 3741. One more place where the algorithmic mapping needs to stay.
Volker
(This used to be commit 898948d654)
2007-10-10 11:16:37 -05:00
Gerald Carter
6e807c763f r15310: only store lanman passwords on a change if 'lanman auth = yes'
(This used to be commit b6904e0950)
2007-10-10 11:16:34 -05:00
Paul Green
31693197be r15283: Oh yeah. The build farm doesn't do much with head. OK, here is the patch to SAMBA_3_0 to declare prototypes for the initialization functions. These are the same changes I just made to head. --paulg
(This used to be commit 17774387ad)
2007-10-10 11:16:31 -05:00
Volker Lendecke
e17302200c r15101: Little step towards getting Samba4 tdb into 3: tdb_lock_bystring does not
have the timeout argument in Samba4. Add a new routine
tdb_lock_bystring_with_timeout.

Volker
(This used to be commit b9c6e3f556)
2007-10-10 11:16:23 -05:00
Volker Lendecke
4cde26cfc9 r15009: Add a check for NULL
(This used to be commit 0a7d4f1ab1)
2007-10-10 11:15:56 -05:00
Gerald Carter
e4998337e7 r14868: I will not write code when changing to Daylight Savings Time.
I will not write code when changing to Daylight Savings Time.
I will not write code when changing to Daylight Savings Time.
I will not write code when changing to Daylight Savings Time.
I will not write code when changing to Daylight Savings Time.
I will not write code when changing to Daylight Savings Time.
I will not write code when changing to Daylight Savings Time.
I will not write code when changing to Daylight Savings Time.
I will not write code when changing to Daylight Savings Time.

...

Fix my brain dead inverted logic for turning winbindd on and off
when run on a DC or when calling pdb functions from within winbindd.
(This used to be commit 021b3dc2db)
2007-10-10 11:15:52 -05:00
Gerald Carter
6c9eaa6880 r14855: Various fixes:
* depreacte 'acl group control' after discussion with Jeremy
  and implement functionality as part of 'dos filemode'
* fix winbindd on a non-member server to expand local groups
* prevent code previously only used by smbd from blindly
  turning _NO_WINBINDD back on
(This used to be commit 4ab372f4ca)
2007-10-10 11:15:51 -05:00
Jeremy Allison
d0c0079ef8 r14780: Fix coverity bug #272, null deref.
Jeremy.
(This used to be commit 1588ce8efe)
2007-10-10 11:15:48 -05:00
Günther Deschner
57909a1540 r14758: Fix broken LDAP search filter.
Guenther
(This used to be commit 25970a5429)
2007-10-10 11:15:46 -05:00
Günther Deschner
2ab46a7a93 r14756: Make smbpasswd -a root work for eDirectory where there is no "account"
structural objectclass.

Guenther
(This used to be commit 7eefeaad35)
2007-10-10 11:15:46 -05:00
Jelmer Vernooij
ac2b7c0d93 r14696: make pdb_find_backend_entry public (for use by an external "multi" pdb backend)
(This used to be commit c149421ef7)
2007-10-10 11:15:44 -05:00
Gerald Carter
1839b4be14 r14634: Many bug fixes thanks to train rides and overnight stays in airports
* Finally fix parsing idmap uid/gid ranges not to break with spaces
  surrounding the '-'
* Allow local groups to renamed by adding info level 2 to
  _samr_set_aliasinfo()
* Fix parsing bug in _samr_del_dom_alias() reply
* Prevent root from being deleted via Samba
* Prevent builting groups from being renamed or deleted
* Fix bug in pdb_tdb that broke renaming user accounts
* Make sure winbindd is running when trying to create the Administrators
  and Users BUILTIN groups automatically from smbd (and not just check the
  winbind nexted groups parameter value).
* Have the top level rid allocator verify that the RID it is about to
  grant is not already assigned in our own SAM (retries up to 250 times).
  This fixes passdb with existing SIDs assigned to users from the RID algorithm
  but not monotonically allocating the RIDs from passdb.
(This used to be commit db1162241f)
2007-10-10 11:15:41 -05:00
Gerald Carter
5aa66fd039 r14577: BUG Fixes:
* Add back in the import/export support to pdbedit
* Fix segv in pam_smbpass
* Cleanup some error paths in pdb_tdb and pdb_interface
(This used to be commit df53d64910)
2007-10-10 11:15:37 -05:00
Gerald Carter
41a0da4cfc r14457: Add a few more special cases for RID 513 in the samr code.
Now that I know what all the requirements for this group are
I can generalize the code some more and make it cleaner.
But at least this is working with lusrmgr.msc on XP and 2k now.
(This used to be commit d2c1842978)
2007-10-10 11:15:31 -05:00
Gerald Carter
14b07dccc0 r14452: Sorry. Need more coffee....
* Fix sprintf() args when createing the group search filter.
(This used to be commit 0b7549997a)
2007-10-10 11:15:31 -05:00
Gerald Carter
5133ab016e r14451: In order to get pdb_ldap searching for SID_NAME_ALIAS
groups in the ${MACHINESID} and S_1-5-32 domains correctly,
I had to add a substr search on sambaSID.

* add substr matching rule to OpenLDAP schema
  (we need to update the other schema as will since this
  is a pretty important change).  Sites will need to
  - install the new schema
  - add 'indea sambaSID   sub' to slapd.conf
  - run slapindex

* remove uses of SID_NAME_WKN_GRP in pdb_ldap.c
(This used to be commit 2c0a46d731)
2007-10-10 11:15:30 -05:00
Gerald Carter
0ce53f8ba5 r14403: * modifies create_local_nt_token() to create a BUILTIN\Administrators
group IFF sid_to_gid(S-1-5-32-544) fails and 'winbind nested groups = yes'

* Add a SID domain to the group mapping enumeration passdb call
  to fix the checks for local and builtin groups.  The SID can be
  NULL if you want the old semantics for internal maintenance.
  I only updated the tdb group mapping code.

* remove any group mapping from the tdb that have a
  gid of -1 for better consistency with pdb_ldap.c.
  The fixes the problem with calling add_group_map() in
  the tdb code for unmapped groups which might have had
  a record present.

* Ensure that we distinguish between groups in the
  BUILTIN and local machine domains via getgrnam()
  Other wise BUILTIN\Administrators & SERVER\Administrators
  would resolve to the same gid.

* Doesn't strip the global_sam_name() from groups in the
  local machine's domain (this is required to work with
  'winbind default domain' code)

Still todo.

* Fix fallback Administrators membership for root and domain Admins
  if nested groups = no or winbindd is not running

* issues with "su - user -c 'groups'" command

* There are a few outstanding issues with BUILTIN\Users that
  Windows apparently tends to assume.  I worked around this
  presently with a manual group mapping but I do not think
  this is a good solution.  So I'll probably add some similar
  as I did for Administrators.
(This used to be commit 612979476a)
2007-10-10 11:15:28 -05:00
Volker Lendecke
b3d058a0ec r14103: Fix a memleak found by valgrind (!!)
(This used to be commit b880602c4c)
2007-10-10 11:11:12 -05:00
Volker Lendecke
56a99b1d1c r14102: Fix Coverity bug # 70
(This used to be commit 56dc19879c)
2007-10-10 11:11:12 -05:00
Jeremy Allison
e096440b74 r14088: Fix Coverity bug #20. Don't deref possible null.
Jeremy.
(This used to be commit 7f3ace5481)
2007-10-10 11:11:11 -05:00
Volker Lendecke
4357ef3bd6 r13979: We've dereferenced my_methods already, so there's no point in checking for
!= NULL. Coverity #149.

Volker
(This used to be commit d38e05329a)
2007-10-10 11:11:02 -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
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
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
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
5837baa126 r13765: Fix bug reported by jra. Don't check for a group SID when storing
a user since we no longer pay any attention to the value.
(This used to be commit 085c6859ee)
2007-10-10 11:10:53 -05:00
Gerald Carter
a8325d28d2 r13756: use samu_new() rather than calling talloc() directly.
(This used to be commit c13af58f63)
2007-10-10 11:10:52 -05:00
Jeremy Allison
ddf14cc286 r13747: Fix the reference count for tdbsam_open() - on an
upgrade it calls tdbsam_convert() which calls tdbsam_open()
deep inside the init_sam_from_buffer_vX call.
If the ref count hasn't been set yet then we will close
the tdbsam reference in tdbsam_getsampwsid().
smbpasswd -a was core-dumping again :-).
Jeremy
(This used to be commit 993069eb87)
2007-10-10 11:10:51 -05:00
Volker Lendecke
2479b8305b r13729: Fix smbpasswd -x
(This used to be commit 2afcbbfb6f)
2007-10-10 11:10:51 -05:00
Volker Lendecke
06e720a66c r13728: No, we have not talked about this on irc less than 24h ago... ;-)
(This used to be commit 59f95ea752)
2007-10-10 11:10:51 -05:00
Volker Lendecke
ded57f29b3 r13727: Fix a segfault
(This used to be commit 76c100834d)
2007-10-10 11:10:51 -05:00
Günther Deschner
e54786b535 r13711: * Correctly handle acb_info/acct_flags as uint32 not as uint16.
* Fix a couple of related parsing issues.
* in the info3 reply in a samlogon, return the ACB-flags (instead of
  returning zero)

Guenther
(This used to be commit 5b89e8bc24)
2007-10-10 11:10:25 -05:00
Jeremy Allison
2ef2e01314 r13704: Janitor for tpot.
Jeremy
-------------
Slightly smaller version of pdb_get_methods() patch.  Turns out that
callers to initialize_password_db() use the reload parameter so this
has turned in to a smaller cleanup than I thought.
(This used to be commit 7e243104eb)
2007-10-10 11:10:24 -05:00
Volker Lendecke
9fffb6ab5b r13693: More Solaris/LDAP fixes from Bjoern <bjoern@j3e.de>
(This used to be commit 7c098ca0ae)
2007-10-10 11:10:24 -05:00
Volker Lendecke
2ced94c54d r13683: Fix the 'valid users = +users' problem I introduced.
Volker
(This used to be commit dbdb8bdb99)
2007-10-10 11:10:23 -05:00
Gerald Carter
d95e13e68f r13679: Commiting the rm_primary_group.patch posted on samba-technical
* ignore the primary group SID attribute from struct samu*
* generate the primary group SID strictlky from the Unix
  primary group when dealing with passdb users
* Fix memory leak in original patch caused by failing to free a
  talloc *
* add wrapper around samu_set_unix() to prevent exposing the create
  BOOL to callers.  Wrappers are samu_set_unix() and samu-allic_rid_unix()
(This used to be commit bcf269e2ec)
2007-10-10 11:10:23 -05:00
Volker Lendecke
2b0277a1d6 r13678: Remove unneeded braces
(This used to be commit faf1d832a1)
2007-10-10 11:10:23 -05:00
Günther Deschner
cab298856a r13622: Allow to rename machine accounts in a Samba Domain. This still uses the
"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 b2eac2e6eb)
2007-10-10 11:10:19 -05:00
Gerald Carter
6622ba566e r13601: * Remove unused code from pdb_ldap.c
* 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 92c251fdf0)
2007-10-10 11:10:18 -05:00
Gerald Carter
7b9736eb74 r13600: Move functions local to tdbsam to pdb_tdb.c
(This used to be commit e3489f7edd)
2007-10-10 11:10:18 -05:00
Gerald Carter
6a09da5d9e r13593: consolidate pdb_set_sam_sids() into samu_set_unix() which
was the only place it was called from.
(This used to be commit 6568c9cb03)
2007-10-10 11:10:18 -05:00
Gerald Carter
cd55919263 r13590: * replace all pdb_init_sam[_talloc]() calls with samu_new()
* replace all pdb_{init,fill}_sam_pw() calls with samu_set_unix()
(This used to be commit 6f1afa4acc)
2007-10-10 11:10:16 -05:00
Gerald Carter
87ef96e6be r13589: Make sure we only try to close the tdbsam file in endsampwent() when we
have a valid pwent list from a setsampwent().  Fixes a bug with the
reference count on the open tdb.
(This used to be commit 77332f0738)
2007-10-10 11:10:16 -05:00
Gerald Carter
2203bed32c 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......
(This used to be commit 19b7593972)
2007-10-10 11:10:15 -05:00
Gerald Carter
fb5362c069 r13571: Replace all calls to talloc_free() with thye TALLOC_FREE()
macro which sets the freed pointer to NULL.
(This used to be commit b65be8874a)
2007-10-10 11:10:14 -05:00
Gerald Carter
ac456c7440 r13550: remove pdb_guest
(This used to be commit db575c7641)
2007-10-10 11:10:13 -05:00
Jeremy Allison
952a631d5d r13548: Always use the get_remote_macinhe_name() as the key
for the creds store. This should fix the problems
Jerry reported (but I have still to run tests :-).
Jeremy.
(This used to be commit 43f095a38d)
2007-10-10 11:10:13 -05:00
Gerald Carter
671c0098f6 r13545: A patch which I think it's time has come. VOlker, we can talk about
this more but it gets around the primary group issue.

* don't map a SID to a name from the group mapping code if
  the map doesn't have a valid gid.  This is only an issue
  in a tdb setup
* Always allow S-1-$DOMAIN-513 to resolve (just like Windows)
* if we cannot resolve a users primary GID to a SID, then set
  it to S-1-$DOMAIN-513
* Ignore the primary group SID inside pdb_enum_group_memberships().
  Only look at the Unix group membersip.

Jeremy, this fixes a fresh install startup for smbd as far as my tests
are concerned.
(This used to be commit f79f4dc4c5)
2007-10-10 11:10:12 -05:00
Jeremy Allison
5f8a70d01e r13542: Don't reuse a pointer we just freed (Doh!).
Jeremy.
(This used to be commit e755155b0e)
2007-10-10 11:10:11 -05:00
Jeremy Allison
c7aad1deea r13538: Make sure we store all 16 bytes of credentials session
key and delete records that are old. We will need this
for the full 16 byte session key support.
Jeremy.
(This used to be commit cef240d571)
2007-10-10 11:10:11 -05:00
Jeremy Allison
3e4cf56fa3 r13519: Fix the credentials chaining across netlogon pipe disconnects.
I mean it this time :-).
Jeremy.
(This used to be commit 80f4868944)
2007-10-10 11:10:09 -05:00
Gerald Carter
ab4fa1958f r13512: Rewrite tdbsam code to use a reference count based open/close
on the tdb file.  This allow recusive calls to succeed
without complaining about failed opens since a tdb can
only be opened once per process.  We probably still need to backport
the transaction support from Samba 4 here though.
(This used to be commit 94c37e0652)
2007-10-10 11:10:08 -05:00
Volker Lendecke
301d51e13a r13494: Merge the stuff I've done in head the last days.
Volker
(This used to be commit bb40e544de)
2007-10-10 11:10:06 -05:00
Volker Lendecke
3b67210eec r13493: module_name and module_location are the same string. Fix a valgrind
error.

Volker
(This used to be commit 5a92df31d6)
2007-10-10 11:10:06 -05:00
Gerald Carter
75ef18fa75 r13460: by popular demand....
* 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 7a2da5f0cc)
2007-10-10 11:10:04 -05:00
Jeremy Allison
ad8b47a2ba r13407: Change the credentials code to be more like the Samba4 structure,
makes fixes much easier to port. Fix the size of dc->sess_key to
be 16 bytes, not 8 bytes - only store 8 bytes in the inter-smbd
store in secrets.tdb though. Should fix some uses of the dc->sess_key
where we where assuming we could read 16 bytes.
Jeremy.
(This used to be commit 5b3c2e63c7)
2007-10-10 11:09:59 -05:00
Volker Lendecke
7fc2c0befb r13389: get_ldap_filter is only used once, make it static
(This used to be commit d3b66fb871)
2007-10-10 11:09:58 -05:00
Volker Lendecke
74f32df289 r13338: Remove the experimental pdb modules
(This used to be commit a3bc4f5114)
2007-10-10 11:06:25 -05:00
Gerald Carter
0af1500fc0 r13316: Let the carnage begin....
Sync with trunk as off r13315
(This used to be commit 17e63ac4ed)
2007-10-10 11:06:23 -05:00
Gerald Carter
855e02f164 r13310: first round of server affinity patches for winbindd & net ads join
(This used to be commit 6c3480f9ae)
2007-10-10 11:06:23 -05:00
Volker Lendecke
b2e8358b3d r13209: Make smbpasswd -a work again if passdb did not exist.
Volker
(This used to be commit e747ea7250)
2007-10-10 11:06:17 -05:00
Jeremy Allison
139acd2470 r13190: Fix #3458 from Andriy Gapon <avg@icyb.net.ua>. Don't
access free'd memory.
Jerry please pick up for 3.0.21b !
Jeremy.
(This used to be commit c0ba64297a)
2007-10-10 11:06:16 -05:00
Jeremy Allison
114a24c19b r13175: Actually make adding a new user into an empty pdbtdb
file create the file.
Jeremy.
(This used to be commit 31b3201f53)
2007-10-10 11:06:16 -05:00
Jeremy Allison
3ea781f62a r13172: Fix incorrect error message when new tdb not created correctly.
Jeremy.
(This used to be commit e5f19ad5ac)
2007-10-10 11:06:16 -05:00
Gerald Carter
c5e7ddc63b r12913: missed merge to fix BUG 3391; ensure we can lookup account policies
(This used to be commit 77575c64e4)
2007-10-10 11:06:06 -05:00
Günther Deschner
c3a2101da0 r12714: Fix segfault in pdb_nds.c.
Guenther
(This used to be commit f78c7f8abe)
2007-10-10 11:06:01 -05:00
Volker Lendecke
3c50ec20fb r12663: Fix a memleak
(This used to be commit 3ee6b732f4)
2007-10-10 11:06:01 -05:00
Volker Lendecke
e0c989c949 r12645: Fix some memleaks. This will also be in the trunk checkin that comes next.
Volker
(This used to be commit dc167037b0)
2007-10-10 11:06:00 -05:00
Volker Lendecke
1de83ea53b r12603: NO, I'm not claiming maintainership of this.
Fix bug 3351.

Volker
(This used to be commit 082763988d)
2007-10-10 11:06:00 -05:00
Jeremy Allison
5a4881bf39 r12522: Try and fix bug #2926 by removing setlocale(LC_ALL, "C")
and replace calls to isupper/islower/toupper/tolower with
ASCII equivalents (mapping into _w variants).
Jeremy.
(This used to be commit c2752347eb)
2007-10-10 11:05:58 -05:00
Gerald Carter
830149e6d9 r12400: one line patch for Sun LDAP libs pointed out by Nicholas Brealey <nick@brealey.org>
(This used to be commit 5121d38069)
2007-10-10 11:05:55 -05:00
Gerald Carter
5ac6b21f09 r12398: adding Guenther's account policy migration fix
(This used to be commit be32f10609)
2007-10-10 11:05:54 -05:00
Volker Lendecke
28fb5b6f97 r12313: Introduce yet another copy of the string_sub function:
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 be6c9012da)
2007-10-10 11:05:53 -05:00
Jeremy Allison
3a405096c5 r12245: eDirectory returns LDAP_UNWILLING_TO_PERFORM if the
account is disabled. If we get this we can't check
the password so have to tell the client the account
was disabled.
Jeremy.
(This used to be commit 43c2d545ab)
2007-10-10 11:05:50 -05:00
Volker Lendecke
661c5c741a r12163: Change lookup_sid and lookup_name to return const char * instead of char *,
use a temporary talloc_ctx for clarity.

Volker
(This used to be commit b15815c804)
2007-10-10 11:05:46 -05:00
Volker Lendecke
ab51c18cc9 r12129: Fix uninitialized variables.
Volker
(This used to be commit 8a7d6eb2c0)
2007-10-10 11:05:46 -05:00
Volker Lendecke
05ac2de0df r12051: Merge across the lookup_name and lookup_sid work. Lets see how the build farm
reacts :-)

Volker
(This used to be commit 9f99d04a54)
2007-10-10 11:05:43 -05:00
Jeremy Allison
d1f91f7c72 r12043: It's amazing the warnings you find when compiling on a 64-bit
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 c65b752604)
2007-10-10 11:05:42 -05:00
Volker Lendecke
bd21ee68e5 r11999: Re-add "passdb expand explicit".
We came to the conclusion that changing the default is something that has to
wait one or two more releases, but it will happen one way or the other.

Volker
(This used to be commit 30fcdf84d8)
2007-10-10 11:05:41 -05:00
Volker Lendecke
6f04dc477e r11947: Back out passdb:expand_explicit until we find consensus. I'll file this as a
bugzilla entry.

Volker
(This used to be commit d228cb62a7)
2007-10-10 11:05:38 -05:00
Volker Lendecke
10bc204efb r11923: Add samr_lookup_rids for the builtin domain. Doing it this way feels a bit
wrong, but so far we don't have proper multi-domain support in passdb yet...

Volker
(This used to be commit c917cfc320)
2007-10-10 11:05:36 -05:00
Volker Lendecke
046a8873b9 r11922: Looks bigger than it is: There's no point in allocating arrays in
samr_lookup_rids twice. It was done in the srv_samr_nt.c code as well as in
the pdb module. Remove the latter, this might happen more often.

Volker
(This used to be commit 57f0cf8cdd)
2007-10-10 11:05:36 -05:00
Volker Lendecke
d36eb68cb5 r11920: Rename local_lookup_rid to lookup_global_sam_rid, add lookup_builtin_rid.
Volker
(This used to be commit bc8836d5d7)
2007-10-10 11:05:35 -05:00
Volker Lendecke
add1493a86 r11919: The generic mappings in srv_samr_nt.c are only used there -- make them
static.

One long overdue simplification: Change local_lookup_sid to local_lookup_rid
its responsible for "our" domain only, in fact it checked for it.

Volker
(This used to be commit 35ba5e083c)
2007-10-10 11:05:35 -05:00
Volker Lendecke
ace1212dec r11914: After talking to Jeremy, implement passdb:expand_explicit with a default of
no. This changes our default behaviour.

Sorry, Ingo, this *is* a bug that needs fixing.

Jerry, you might want to put a marker into the WHATSNEW.txt when this is due.

Volker
(This used to be commit 6622db97bb)
2007-10-10 11:05:34 -05:00
Günther Deschner
092e3e514b r11874: Merge LDAP connection setup in lib/smbldap.c and pdb_nds.c.
Also allow to use START_TLS in the pdb_nds_update_login_attempts
function when doing simple binds to eDir.

Guenther
(This used to be commit 04a3ac5e50)
2007-10-10 11:05:33 -05:00
Gerald Carter
ac331c48db r11863: BUG 3196: patch from Alex Deiter <tiamat@komi.mts.ru> to compile against the Sun LDAP client libs. But not for AD support; just ldap support
(This used to be commit a33e78aced)
2007-10-10 11:05:31 -05:00
Günther Deschner
0e8b90e45d r11847: Fix typo.
Guenther
(This used to be commit 6aefb3aebb)
2007-10-10 11:05:29 -05:00
Jeremy Allison
cef9443a87 r11256: Remove use of long long and strtoll in libsmbclient (we
can't assume long long is always there). Removed unused
var in new a/c rename code.
long long still used in eventlog code but Jerry has promised
to fix that.
Jeremy.
(This used to be commit f46d847065)
2007-10-10 11:05:09 -05:00
Jim McDonough
1113cad9c0 r11236: Implement user rename for smbpasswd and ldap backends. Some cleanup on
tdb as well to make naming consistent.
(This used to be commit ee91eb9a39)
2007-10-10 11:05:08 -05:00
Jeremy Allison
8d7c886671 r11137: Compile with only 2 warnings (I'm still working on that code) on a gcc4
x86_64 box.
Jeremy.
(This used to be commit d720867a78)
2007-10-10 11:05:02 -05:00
Jim McDonough
254938c636 r10911: part of #2861: add rename support for usrmgr.exe when using tdbsam
This gets it working before replacing tdb with the samba4 version.
(This used to be commit 8210b0503a)
2007-10-10 11:04:56 -05:00
Jeremy Allison
e127501d45 r10792: Fix the "schannel not stored across client disconnects" problem.
Based on the Samba4 solution - stores data in
$samba/private/schannel_store.tdb.
This tdb is not left open but open and closed on demand.
Jeremy.
(This used to be commit a6d8a4b1ff)
2007-10-10 11:04:54 -05:00
Volker Lendecke
ba51ce6053 r10658: It's so nice to have CVSIN to blame for this kind of bugs :-)
Volker
(This used to be commit cf06a090a3)
2007-10-10 11:04:49 -05:00
Gerald Carter
54abd2aa66 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)
(This used to be commit 939c3cb5d7)
2007-10-10 11:04:48 -05:00
Gerald Carter
dbbaccc2c0 r10606: pdb_*sql patches from
Uli Meis <a.sporto@gmail.com>
Peter Rindfuss <rindfuss@wz-berlin.de>
(This used to be commit 8bf124adaf)
2007-10-10 11:04:48 -05:00
Gerald Carter
f44e11c100 r9661: fallback to cn attribubte if displayName is not available
(This used to be commit b1524999e0)
2007-10-10 11:03:24 -05:00
Gerald Carter
be0f3f159f r9660: real fix for group enumeration bug in 3.0.20; only affected the ldapsam code
(This used to be commit 62f9fb5e3a)
2007-10-10 11:03:24 -05:00
Günther Deschner
1d1d2418f0 r9522: Give better error-message when "NDS Universal Password" change fails.
Guenther
(This used to be commit df90ea016a)
2007-10-10 11:01:11 -05:00
James Peach
2c42509673 r9303: Clobber compiler warnings. Patch from Jason Mader <jason@ncac.gwu.edu> plus
some extra function declarations. Bugzilla bug #2523.
(This used to be commit 98d364459d)
2007-10-10 11:00:32 -05:00
Lars Müller
f5024ae257 r9051: Fix from Fernando Schapachnik <fernando@mecon.gov.ar> to add logon hours
support for the Postgres backend.

Also add these changes from svn rev 7787 to trunk.
(This used to be commit 7423895900)
2007-10-10 11:00:24 -05:00
Günther Deschner
faa4b4a9f2 r8797: avoid unset rids for builtin-aliases.
Guenther
(This used to be commit c2810bcf66)
2007-10-10 11:00:17 -05:00
Günther Deschner
ecc0d00a6d r8787: Make enumeration of builtin-aliases work again.
Guenther
(This used to be commit 0c8859474d)
2007-10-10 11:00:17 -05:00
Günther Deschner
235bece8ff r8542: - (re-)add better search-semantics: look for Interdomain trust accounts
below the machine-suffix (this is where we create them)) to avoid
  digging through thousands of user-accounts just to find a handful of
  trust-accounts in the enumdomusers-samr-call.

- don't access freed data in DEBUG-statement

Guenther
(This used to be commit 793c82c017)
2007-10-10 11:00:08 -05:00
Jeremy Allison
19ca97a70f 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
(This used to be commit 9506b8e145)
2007-10-10 10:58:00 -05:00