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

5074 Commits

Author SHA1 Message Date
Jelmer Vernooij
9e99838d5c r7861: Nicer output, remove some false warnings.
(This used to be commit f5587fe567)
2007-10-10 13:18:44 -05:00
Andrew Tridgell
bdee131f30 r7860: switch our ldb storage format to use a NDR encoded objectSid. This is
quite a large change as we had lots of code that assumed that
objectSid was a string in S- format.

metze and simo tried to convince me to use NDR format months ago, but
I didn't listen, so its fair that I have the pain of fixing all the
code now :-)

This builds on the ldb_register_samba_handlers() and ldif handlers
code I did earlier this week. There are still three parts of this
conversion I have not finished:

 - the ltdb index records need to use the string form of the objectSid
   (to keep the DNs sane). Until that it done I have disabled indexing on
   objectSid, which is a big performance hit, but allows us to pass
   all our tests while I rejig the indexing system to use a externally
   supplied conversion function

 - I haven't yet put in place the code that allows client to use the
   "S-xxx-yyy" form for objectSid in ldap search expressions. w2k3
   supports this, presumably by looking for the "S-" prefix to
   determine what type of objectSid form is being used by the client. I
   have been working on ways to handle this, but am not happy with
   them yet so they aren't part of this patch

 - I need to change pidl to generate push functions that take a
   "const void *" instead of a "void*" for the data pointer. That will
   fix the couple of new warnings this code generates.

Luckily it many places the conversion to NDR formatted records
actually simplified the code, as it means we no longer need as many
calls to dom_sid_parse_talloc(). In some places it got more complex,
but not many.
(This used to be commit d40bc2fa8d)
2007-10-10 13:18:44 -05:00
Jelmer Vernooij
3022bfef70 r7859: Merge a few scripts to one script that checks for the following unused
(used in configure.in, but their output is never used) autoconf macros:
- AC_DEFINE
- AC_CHECK_FUNC
- AC_CHECK_FUNCS
- AC_CHECK_HEADER
- AC_CHECK_HEADERS
(This used to be commit 897d7b7d39)
2007-10-10 13:18:43 -05:00
Andrew Tridgell
3e47620776 r7858: removed some unused variables
(This used to be commit 8d43eb5b97)
2007-10-10 13:18:43 -05:00
Andrew Tridgell
f39440e060 r7857: improved the handling of end-of-file on sockets in the smb server
(This used to be commit 6ee98c5f65)
2007-10-10 13:18:43 -05:00
Andrew Tridgell
21d6a163a3 r7856: fixed warning of 'methods' shadowed variable
(This used to be commit c435843c66)
2007-10-10 13:18:43 -05:00
Andrew Tridgell
acd04c9281 r7855: fixed a typo
(This used to be commit a1155651e7)
2007-10-10 13:18:43 -05:00
Andrew Tridgell
63811f0cb8 r7854: only enable wrapping in the ldap server if it was negotiated by gensec
(This used to be commit 355983493b)
2007-10-10 13:18:43 -05:00
Simo Sorce
ce2e35309e r7851: We are case preserving let the DN be returned the same the user put it into.
sss
(This used to be commit 5b41e32024)
2007-10-10 13:18:42 -05:00
Jelmer Vernooij
66a52992ff r7850: Support mkdir() with just one parameter. Patch from
Steven Edwards <steven_ed4153@yahoo.com>.

I've moved the Win32-specific tests to win32.m4 so it does not
make any of the POSIX configure stuff more complicated.
(This used to be commit bf85fdd015)
2007-10-10 13:18:42 -05:00
Stefan Metzmacher
f877a7fdf5 r7845: remove unused files
and remove all generated files with make distclean and make realdistclean

metze
(This used to be commit f964e228c9)
2007-10-10 13:18:42 -05:00
Derrell Lipman
f1a853664c r7844: eliminate superfluous attribute tables
(This used to be commit 863beef35b)
2007-10-10 13:18:42 -05:00
Andrew Bartlett
4432cc73ae r7843: Use the new Heimdal gsskrb_acquire_creds API. This has the right
lifetime constraints, and works with the in-memory keytab.

Move initialize_krb5_error_table() into our kerberos startup code,
rather than in the GSSAPI code explitly.  (Hmm, we probably don't need
this at all..)

Andrew Bartlett
(This used to be commit bedf92da5c)
2007-10-10 13:18:42 -05:00
Stefan Metzmacher
3cb74e995e r7837: use some more 'make' features
(I just commit this to see how portable it is)

I have a patch that remove the need of the recursiv make
and also fixes the HEIMDAL_EXTERNAL stuff cleanly

metze
(This used to be commit 21d930cfc3)
2007-10-10 13:18:42 -05:00
Andrew Tridgell
9f51b5716d r7834: added comment about the "((" search test
(This used to be commit 42c42f6611)
2007-10-10 13:18:41 -05:00
Andrew Tridgell
0eb6bc1257 r7833: changed ldbsearch and ldbedit to have command line syntax closer to
ldapsearch. They look for an '=' in the first argument to see if it is
a search expression, and if not then it does an 'all records' search
(This used to be commit 91cc009fed)
2007-10-10 13:18:41 -05:00
Andrew Tridgell
3b9eabc2f3 r7832: missed one
(This used to be commit 20c84f5c52)
2007-10-10 13:18:41 -05:00
Andrew Tridgell
c97e6081e6 r7831: use cn=TEST as base of test DNs so we don't interfere with potentially real records
(This used to be commit 2a426f654d)
2007-10-10 13:18:41 -05:00
Derrell Lipman
fdc0450db2 r7828: Although there is still plenty to do, ldb_sqlite3 now passes the set of tests
in tests/test-sqlite3.sh (tests/test-generic.sh).

There are lots of optimizations still TBD, and some things are REALLY slow
right now (e.g. each add() operation takes 1/3 - 1/2 second) but it's ready for
interested parties to poke it and prod it and see how (un)reasonable it is.
Play away.

Still to be implemented or improved:
 - tdb specials (@MODULES, @SUBCLASSES, etc.)
 - all DNs are case-folded in their entirty right now (since doing otherwise
   would require @ATTRIBUTES to be implemented)
 - speed improvements and optimizations.  I am quite confident that the
   excessively slow add() operation can be much improved, and other areas
   can be somewhat improved.
(This used to be commit 1dd8650055)
2007-10-10 13:18:41 -05:00
Andrew Bartlett
8a68f96f8c r7827: Add in-memory keytab to Samba4, using the new MEMORY_WILDCARD keytab
support in Heimdal.

This removes the 'ext_keytab' step from my Samba4/WinXP client howto.

In doing this work, I realised that the replay cache in Heimdal is
currently a no-op, so I have removed the calls to it, and therefore
the mutex calls from passdb/secrets.c.

This patch also includes a replacement 'magic' mechanism detection,
that does not issue extra error messages from deep inside the GSSAPI
code.

Andrew Bartlett
(This used to be commit c19d5706f4)
2007-10-10 13:18:41 -05:00
Rafal Szczesniak
cc98a92bb0 r7816: Implementation of "shortcut" function for those (probably many) who
don't like to bother with netbios type names when looking for common
types: hosts (servers) and domain controllers. Also, apropriate tests

rafal
(This used to be commit 50cd94be0f)
2007-10-10 13:18:40 -05:00
Rafal Szczesniak
49417aaed7 r7814: Propagate the change in resolve_name_send function.
(This used to be commit 7abd634701)
2007-10-10 13:18:40 -05:00
Rafal Szczesniak
338bc0f58a r7813: Make async request independent from config file routines.
rafal
(This used to be commit 84315cdf0d)
2007-10-10 13:18:38 -05:00
Andrew Tridgell
bec0058124 r7810: don't give errors when the ldap server sends us reference replies
(This used to be commit f2b2d2626f)
2007-10-10 13:18:38 -05:00
Andrew Tridgell
062e0f8325 r7808: fixed the build of ldb after the binary file support in ldif was added
(This used to be commit 0a8c722c80)
2007-10-10 13:18:38 -05:00
Simo Sorce
7f46f89257 r7806: add test for binary files as attribute values
(This used to be commit 2b2675055e)
2007-10-10 13:18:38 -05:00
Simo Sorce
064d71c9d4 r7805: add support to read binary files into attributes data like ldap tools does
(This used to be commit 38a1439626)
2007-10-10 13:18:37 -05:00
Andrew Tridgell
5be159f304 r7804: added the samba specific ldif handlers into the tree, but don't enable
them just yet. I have tested them, and they work fine, but enabling
them will break code in rpc_server/ and samdb, so we need to fix that
first
(This used to be commit 07d459406b)
2007-10-10 13:18:37 -05:00
Andrew Tridgell
eb0a13025a r7803: added support in ldb for callers to setup ldif read/write functions,
so that ldbedit, ldbsearch etc can display nice human readable ldif,
while storing the data as binary blobs. This will be used for storing
NDR encoded objectSid and similar attributes, while making the command
line interface sane
(This used to be commit 37e283089a)
2007-10-10 13:18:37 -05:00
Tim Potter
f29aa44d57 r7802: Remove a junk file.
(This used to be commit a2d60dd878)
2007-10-10 13:18:37 -05:00
Andrew Tridgell
a7bbc024ed r7801: the ldap server needs this logic too
(This used to be commit 1dbb5bf2c1)
2007-10-10 13:18:37 -05:00
Andrew Tridgell
f0420c0292 r7800: added the same request serialisation logic to our socket based rpc
servers as I added to the smb server yesterday. This means rpc server
code can assume it runs serially unless it explicitly sets the async
flag on the request and returns
(This used to be commit 8546adb56a)
2007-10-10 13:18:37 -05:00
Andrew Tridgell
5e40d0187b r7795: use a share specific allocation rounding
(This used to be commit 9adacb0d16)
2007-10-10 13:18:37 -05:00
Andrew Tridgell
9cc64156c4 r7793: allow integers in smb.conf to be specified in octal or hex
(This used to be commit ce6257b316)
2007-10-10 13:18:36 -05:00
Andrew Tridgell
51b1451cba r7792: make the allocation size rounding in pvfs configurable
(This used to be commit 1f35642bed)
2007-10-10 13:18:36 -05:00
Jelmer Vernooij
331aaa5256 r7790: Allow remembering more configure-level data (and
remember --enable-develop for now).
(This used to be commit f385753a52)
2007-10-10 13:18:36 -05:00
Andrew Tridgell
b7be627e35 r7784: give an error in ldb_tdb for invalid modify flags. The "whenChanged"
bug was being silently ignored with the tdb backend because of this
bug. A case where the ldap backend was right, and the tdb backend was
wrong!
(This used to be commit ddb26db763)
2007-10-10 13:18:36 -05:00
Andrew Tridgell
f0c1c51334 r7783: the whenChanged attribute is now handled by the timestamps module, and
should not be handled here as well. I had to remove it from here as it
was buggy anyway (it wasn't setting the modify flags, this making an
invalid ldb_modify() request)
(This used to be commit f267e9d5b7)
2007-10-10 13:18:36 -05:00
Andrew Tridgell
3dd67b9746 r7782: fixed an ordering problem with smb requests. I found this when I had "sam database"
set to the internal ldap server over loopback. The following happened:

  - DCERPC_AUTH3 request
     - auth requests calls ldb
     - ldb calls ldap
     - ldap calls our internal ldap server, triggering events
  - samrConnect from client
     - connect refused
  - SMBclose from client
     - causes dcerpc_pipe to be destroyed
  - AUTH3 continues
     - dies on freed pipe

I chose this solution as it provides a guarantee that backends only have to think about
async issues when they mark a request async. When they don't, this code guarantees that
a second request won't happen on the same connection while processing the first one
(This used to be commit 45487e8a14)
2007-10-10 13:18:36 -05:00
Andrew Tridgell
a124028b66 r7781: finding the parent of a talloc ptr is trickier than it looks due to the two-way
tree nature of the data structure. I think I've finally got it right

also added talloc_show_parents() for debugging
(This used to be commit 5760ed20ee)
2007-10-10 13:18:36 -05:00
Andrew Tridgell
bb8d0c76b4 r7780: fixed a bug in talloc_find_parent_byname()
(This used to be commit ee3fe42fb1)
2007-10-10 13:18:35 -05:00
Andrew Tridgell
e3eec57b06 r7779: use the parent event context in ldb_wrap_connect(). See the comment in
the previous commit for the method.
(This used to be commit b0ad505510)
2007-10-10 13:18:35 -05:00
Andrew Tridgell
545203d915 r7778: added talloc_find_parent_bytype() and talloc_find_parent_byname()
These provide a way to find a parent of a ptr that is of a given
type. I will be using this to find the event context in smbd, relying
on the fact that everything is a child of the top level event
context. I did look at the alternatives, and found that passing the
event context to just about every call in smbd was getting way too
complex (we need to get it to anything that can do a ldb operation, as
that can invoke ldap).

So this method avoids a global, and seems to work nicely
(This used to be commit bdb55c7a10)
2007-10-10 13:18:35 -05:00
Andrew Tridgell
db6933323c r7777: allow for overriding the location of the sam databasein the ldap server, using
ldapsrv:samdb option. This allows the following:

          sam database=ldap://localhost
          ldapsrv:samdb=tdb:///home/tridge/samba/samba4/prefix/private/sam.ldb

which allows us to test putting the sam on an ldap server using our
own ldap server. This is a great stress test for the ldap code.
(This used to be commit 40948ba384)
2007-10-10 13:18:35 -05:00
Andrew Tridgell
bd7a474b19 r7776: add a method for getting arbitrary opaque data into a ldb context, for use by backends.
Currently only EventContext is used in this way.
(This used to be commit 9fa21b2458)
2007-10-10 13:18:35 -05:00
Andrew Tridgell
6b4f3e17f0 r7775: solaris uses 'lo0' for loopback network, so by using lo* we should cover both
(This used to be commit 1a80ac6aa8)
2007-10-10 13:18:35 -05:00
Andrew Tridgell
48e731000c r7774: put $CONFIGURATION in one more place
(This used to be commit 5e35c7a551)
2007-10-10 13:18:34 -05:00
Andrew Tridgell
30b68a0af2 r7773: fixed the tls code for the non-GNUTLS case
(This used to be commit bc6bc84ef4)
2007-10-10 13:18:34 -05:00
Andrew Tridgell
44e7892131 r7772: actually give the auth options to ldbsearch ....
(This used to be commit 29edfb9382)
2007-10-10 13:18:34 -05:00
Andrew Tridgell
720c8a8831 r7771: - added ldaps and NTLMSSP testing to ldap tests
- added testing of extended search operations
(This used to be commit 2dc511b09c)
2007-10-10 13:18:34 -05:00