1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-26 10:04:02 +03:00

13966 Commits

Author SHA1 Message Date
Jeremy Allison
88135fbc49 Moved SAM_ACCOUNT marshall/unmarshall functions to make them externally
available. Removed extra auth_init (thanks metze).
Jeremy.
-
Gerald Carter
4acdfc5c94 standlone servers don't have any trusted domains -
Gerald Carter
43f21078ec fix bone head mistake when setting the uid in the server_info struct. -
Tim Potter
3a1f4f5ea5 Initialise the uid and gid values to a safe default in make_server_info() -
Gerald Carter
fca08b1c87 fix some formatting -
Gerald Carter
6a84297da5 fix temporary bug so people can test 3.0 again; make sure to initialize the uid for the server_info struct -
Tim Potter
a9a3339b2d Spelling. -
Jeremy Allison
cbde1c8dfc Fix spotted by Nadav Danieli <nadavd@exanet.com> - ensure dev and inode
to fix open mode race condition.
Jeremy.
-
Jeremy Allison
61e9c49cd6 Fix the build...
Jeremy.
-
Jeremy Allison
7a1ac7be42 Fix from MORIYAMA Masayuki <msyk@mtg.biglobe.ne.jp> for new MB statcache
code. Bug #185.
Jeremy.
-
Gerald Carter
8b52802e5d another compile fix -
Gerald Carter
6f0b5d474a fix some compile problems. Can't get IDMAP_OBJ our of proto.h
just yet.

`
-
Gerald Carter
688369c23c Cleaning up linking issues. sam/idmap*.c only links in
winbindd now.  Also removing an unused file.
-
Jeremy Allison
e9fb6e4508 Fixed a couple of const issues with the new code.
Jeremy.
-
Gerald Carter
c4762aa3bc temporarily disable a sanity check to prevent winbindd from deadlocking
on a Samba PDC.  Will be re-enabled after winbind_passdb is done.
-
Gerald Carter
8266dffab4 and so it begins....
* remove idmap_XX_to_XX calls from smbd.  Move back to the
  the winbind_XXX and local_XXX calls used in 2.2

* all uid/gid allocation must involve winbindd now

* move flags field around in winbindd_request struct

* add WBFLAG_QUERY_ONLY option to winbindd_sid_to_[ug]id()
  to prevent automatic allocation for unknown SIDs

* add 'winbind trusted domains only' parameter to force a domain member
  server to use matching users names from /etc/passwd for its domain
  (needed for domain member of a Samba domain)

* rename 'idmap only' to 'enable rid algorithm' for better clarity
  (defaults to "yes")

code has been tested on

  * domain member of native mode 2k domain
  * ads domain member of native mode 2k domain
  * domain member of NT4 domain
  * domain member of Samba domain
  * Samba PDC running winbindd with trusts

Logons tested using 2k clients and smbclient as domain users
and trusted users. Tested both 'winbind trusted domains only = [yes|no]'

This will be a long week of changes.  The next item on the list is
winbindd_passdb.c & machine trust accounts not in /etc/passwd (done
via winbindd_passdb)
-
Tim Potter
42fdcef324 Call the synchronous version of the ldap delete function otherwise we end up
treating the returned message id as an error code.
-
John Terpstra
80709d4304 Adding profile acls man entry for smb.conf.5 -
Andrew Bartlett
d9a6859e2b Fix ldapsam_getsampwsid to correctly only say 'no such user' when indeed there
is no such user...

Thanks to jerry for spotting this.

Also clean up the function a bit, to avoid this happening again...

Andrew Bartlett
-
Andrew Bartlett
32e455a714 This changes our Unix primary GID behaviour back to what most people expect:
Samba will now use the user's UNIX primary group, as the primary group when
dealing with the filesystem.  The NT primary group is ignored in unix.

For the NT_TOKEN, the primary group is the NT priamry group, and the unix
primary group is added to the NT_TOKEN as a supplementary group.

This should fix bug #109, but will need to be revisited when we get a full
NT group database.

Also in this commit:
 - Fix debug statements in service.c
 - Make idmap_ldap show if it's adding, or modifying an existing DN
 - Make idmap_ldap show both the error message and error string
-
Andrew Bartlett
3dd7678416 This parameter is unused.
Andrew Bartlett
-
Andrew Bartlett
f7bf48114c Fix comment -
Andrew Bartlett
6c48309cda Add some debug statments to our vampire code - try to make it easier to track
down failures.

Add a 'auto-add on modify' feature to guestsam

Fix some segfault bugs on no-op idmap modifications, and on new idmappings that
do not have a DN to tack onto.

Make the 'private data' a bit more robust.

Andrew Bartlett
-
Andrew Bartlett
c7118cb31d Fixes to our LDAP/vampire codepaths:
- Try better to add the appropriate mapping between UID and SIDs, based
   on Get_Pwnam()
 - Look for previous users (lookup by SID) and correctly modify the existing
   entry in that case
 - Map the root user to the Admin SID as a 'well known user'
 - Save the LDAPMessage result on the SAM_ACCOUNT for use in the next 'update'
   call on that user.  This means that VL's very nice work on atomic LDAP
   updates now really gets used properly!
 - This also means that we know the right DN to update, without the extra
   round-trips to the server.

Andrew Bartlett
-
Andrew Bartlett
7cfa1e7c4a PAM should operate on the Unix username, not the NT username (which might not
have the domain\ qualification).

Andrew Bartlett
-
Andrew Bartlett
b9ef4e1388 Allow modification of an existing entry.
We still have a lot of work to do to allow this in quite the same way as we
have in the TDB, but it certainly is getting closer.

Andrew Bartlett
-
Jelmer Vernooij
1a6cdbddbd Fix typos -
Jelmer Vernooij
60f0934a6d Update from Andrew Bartlett with documentation for
'client lanman auth' and 'client ntlmv2 auth'
-
Andrew Bartlett
b67479076d Clear up the difference between 'smb signing' and 'sign&seal' - which has to
this point referred to schannel.

Andrew Bartlett
-
Jelmer Vernooij
95c4c801fe Add smb_event_id to list of return types (patch from metze) -
Jeremy Allison
4f78d747e6 More conversions I missed. Thanks metze.
Jeremy.
-
Jeremy Allison
da5ee2b765 Fixed strlower changes I missed. Pointed out by metze.
Jeremy
-
Andrew Bartlett
68245e9cfa Don't allow RIDs (in our domain) below 1000 (or algorithmic rid base) to be
mapped with the rid algorithm.

Instead, a uid/gid from the UID/GID range will be allocated for this RID.

Andrew Bartlett
-
Andrew Bartlett
81f84cc57f Update WHATSNEW with the further LDAP schema changes in previous commit.
Andrew Bartlett
-
Andrew Bartlett
9c595c8c23 This patch cleans up some of our ldap code, for better behaviour:
We now always read the Domain SID out of LDAP.  If the local secrets.tdb
is ever different to LDAP, it is overwritten out of LDAP.   We also
store the 'algorithmic rid base' into LDAP, and assert if it changes.
(This ensures cross-host synchronisation, and allows for possible
integration with idmap).  If we fail to read/add the domain entry, we just
fallback to the old behaviour.

We always use an existing DN when adding IDMAP entries to LDAP, unless
no suitable entry is available.  This means that a user's posixAccount
will have a SID added to it, or a user's sambaSamAccount will have a UID
added.  Where we cannot us an existing DN, we use
'sambaSid=S-x-y-z,....' as the DN.

The code now allows modifications to the ID mapping in many cases.

Likewise, we now check more carefully when adding new user entires to LDAP,
to not duplicate SIDs (for users, at this stage), and to add the sambaSamAccount
onto the idmap entry for that user, if it is already established (ensuring
we do not duplicate sambaSid entries in the directory).

The allocated UID code has been expanded to take into account the space
between '1000 - algorithmic rid base'.  This much better fits into what
an NT4 does - allocating in the bottom part of the RID range.

On the code cleanup side of things, we now share as much code as
possible between idmap_ldap and pdb_ldap.

We also no longer use the race-prone 'enumerate all users' method for
finding the next RID to allocate.  Instead, we just start at the bottom
of the range, and increment again if the user already exists.  The first
time this is run, it may well take a long time, but next time will just
be able to use the next Rid.

Thanks to metze and AB for double-checking parts of this.

Andrew Bartlett
-
Alexander Bokovoy
5280c69531 Fix memleak in groupdb. Spotted by Metze -
Tim Potter
7b2c6181b1 Display libraries detected by configure but before configure
summary as suggested by abartlet.
-
Eloy Paris
c14fca49e9 Debian updates. -
Jeremy Allison
ff222716a0 Removed strupper/strlower macros that automatically map to strupper_m/strlower_m.
I really want people to think about when they're using multibyte strings.
Jeremy.
-
Gerald Carter
02bc7be1ac Fix for bug #199 (xp driver uploads). Needed to support
the "OSVersion" print server data value.
-
Gerald Carter
6a1ad1ded1 fix for bug #200. flush connections if the machine trsut account
changed underneath us.
-
Andrew Bartlett
df1aa2a669 Missed this in the previous patch - we now have a seperate idea of the
'unix username' from the NT username, in the auth subsystem at least.

Andrew Bartlett
-
Andrew Bartlett
85f88191b9 This patch takes the work the jerry did for beta2, and generalises it:
- The 'not implmented' checks are now done by all auth modules
 - the ntdomain/trustdomain/winbind modules are more presise as to
   what domain names they can and cannot handle
 - The become_root() calls are now around the winbind pipe opening only,
   not the entire auth call
 - The unix username is kept seperate from the NT username, removing the
   need for 'clean off the domain\' in parse_net.c
 - All sid->uid translations are now validated with getpwuid() to put a very
   basic stop to logins with 'half deleted' accounts.

Andrew Bartlett
-
Tim Potter
94fe3b2cdf Some fixes for ads printer publish:
- check error return for cli_full_connection() when trying to obtain
    printer data

  - check error return on ads_find_machine_acct()

  - Minor reformatting to separate fetching printer data from publishing it
-
Tim Potter
814519c5de Implemented 'net ads printer search' which searches the directory for
published printers.

At the moment we don't search using any parameters but this can be
fixed by changing the LDAP search string.  Also we should contact
the global catalog at SRV _gc._tcp instead of the ldap server we
get back from ads_startup().
-
Gerald Carter
fa354f3cee fix bug #190; WINS server was getting marked as dead when it was not. -
Tim Potter
ae6c05ea72 Fix bug in doxygen comments for ads search functions. -
Eloy Paris
1f7de8c42e More Debian updates. -
Gerald Carter
62e36e6ede well this was easy...
When winbindd is running on a PDC the SAM_ACCOUNT for a trusted user
has a username of DOMAIN\user.  Make sure to trim the domain part
from the username when filling in the net_sam_logon reply.
This fixes the browsing issues i was seen across domain trusts.
-
Eloy Paris
6179024276 Debian updates. -