1
0
mirror of https://github.com/samba-team/samba.git synced 2025-10-30 08:23:49 +03:00
Commit Graph

81 Commits

Author SHA1 Message Date
Jelmer Vernooij
7a1eec6358 r24667: Finally merge the registry improvements that Wilco Baan Hofman and I have
been working on for at least half a year now. Contains the following
improvements:

 * proper layering (finally!) for the registry library. Distinction is
   now made between 'real' backends (local, remote, wine, etc) and
   the low-level hive backends (regf, creg, ldb, ...) that are only used
   by the local registry backend
 * tests for all important hive and registry operations
 * re-enable RPC-WINREG tests (still needs more work though, as
							   some return values aren't checked yet)
 * write support for REGF files
 * dir backend now supports setting/reading values, creating keys
 * support for storing security descriptors
 * remove CREG backend as it was incomplete, didn't match the data model
   and wasn't used at all anyway
 * support for parsing ADM files as used by the policy editor (see lib/policy)
 * support for parsing PREG files (format used by .POL files)
 * new streaming interface for registry diffs (improves speed and memory usage
	for regdiff/regpatch significantly)

   ... and fixes a large number of bugs in the registry code
2007-10-10 15:02:34 -05:00
Andrew Tridgell
3767e755db r24283: added a dbwrap API for temporary databases, based on the one from the
s3 clustering code.

This commit just establishes the API. The ctdb backend for this will
come soon.
2007-10-10 15:01:35 -05:00
Jelmer Vernooij
a90202abca r22762: Some ldb_map changes:
* Change license to LGPL, so it can be used by non-Samba users of
LDB (cleared with Martin as well).

* Include ldb_map in standalone build.

* Move ldb_map to its own directory
2007-10-10 14:52:15 -05:00
Jelmer Vernooij
4d3f02e845 r22698: Support using system tdb, when available. 2007-10-10 14:52:03 -05:00
Jelmer Vernooij
3a2f9e0977 r22697: Support building with external talloc. 2007-10-10 14:52:02 -05:00
Jelmer Vernooij
8913d60c72 r19495: Stop linking binaries twice (once before installation, once during build).
Make TORTURE-TALLOC and TORTURE-REPLACE builtin again rather than
separate binaries.
2007-10-10 14:24:39 -05:00
Jelmer Vernooij
48d316e759 r19373: Merge changes from subunit branch: Convert libreplace testsuite to a
standalone program that speaks subunit.
2007-10-10 14:21:19 -05:00
Stefan Metzmacher
3cac61152e r18450: - autogenerate the OBJ_FILES for LIBREPLACE
- remove samba specific stuff from libreplace
- and include the readdir replacement stuff in the standalone builds

metze
2007-10-10 14:18:31 -05:00
Stefan Metzmacher
f20e251bfd r17586: merge lib/netif into lib/socket and use -lnsl -lsocket on the
configure check for the interfaces.

should fix the build on some old sun boxes

metze
2007-10-10 14:15:39 -05:00
Stefan Metzmacher
d48930a02f r17488: - add SHA1 and HMACSHA1 functions, based on rfc 2104,2202,3174
- and add torture tests also based on the rfc's

metze
2007-10-10 14:15:28 -05:00
Jelmer Vernooij
11df14219b r15892: Remove the COM management code - DCOM should be
based on Mono and its' COM support and utilize Samba's DCE/RPC + ORPC code
instead of having our own COM implementation in Samba, which is too much
work to implement and harder to code (C).

This only removes some of the code that I started working on to implement
the bits of COM I thought were needed to support DCOM from just Samba. This
code has never functioned properly, contains a couple of nasty hacks and
there should be no reason to pick it up again later, the processes are all
documented in the DCOM whitepaper.

This does NOT remove the marshalling code for the ORPC code or the torture
code that tested some of the ORPC code.
2007-10-10 14:08:37 -05:00
Jelmer Vernooij
49bac12767 r15376: Add detection of -lnsl, required for building on SUN boxes. 2007-10-10 14:05:29 -05:00
Jelmer Vernooij
e392c1e167 r15323: Fix internal popt build 2007-10-10 14:05:16 -05:00
Jelmer Vernooij
03224e1124 r15295: Fix some dependencies
Move unistr-specific code to lib/charset/. Remove _m from some places where it's not needed.
2007-10-10 14:05:03 -05:00
Jelmer Vernooij
adc8a019b6 r15207: Introduce PRIVATE_DEPENDENCIES and PUBLIC_DEPENDENCIES as replacement
for REQUIRED_SUBSYSTEMS.
2007-10-10 14:04:18 -05:00
Jelmer Vernooij
aa8979d55d r14729: Install db_wrap.h and db_wrap_proto.h 2007-10-10 13:59:15 -05:00
Jelmer Vernooij
9c37f847d3 r14477: Remove the NOPROTO property - it's no longer used as proto.h is gone. 2007-10-10 13:57:30 -05:00
Jelmer Vernooij
2c74698032 r13960: Generate makefile rules for installing/removing shared modules. 2007-10-10 13:52:32 -05:00
Jelmer Vernooij
f87debeb12 r13944: Yet another round of splitups. 2007-10-10 13:52:31 -05:00
Jelmer Vernooij
1228358767 r13924: Split more prototypes out of include/proto.h + initial work on header
file dependencies
2007-10-10 13:52:24 -05:00
Jelmer Vernooij
ba74f24e42 r13899: Get the shared library build building again. Just compiles for now,
but modules don't work yet..
(Run LIBRARY_OUTPUT_TYPE=SHARED_LIBRARY MODULE_OUTPUT_TYPE=SHARED_LIBRARY ./config.status)
2007-10-10 13:52:20 -05:00
Jelmer Vernooij
e6f7e3a594 r13852: Split up 2007-10-10 13:52:16 -05:00
Jelmer Vernooij
d98948716f r13662: Typo fix, add more public headers 2007-10-10 13:52:05 -05:00
Jelmer Vernooij
ba62880f5b r13658: More moving around of files:
- Collect the generic utility functions into a lib/util/ (a la GLib is
		for the GNOME folks)
 - Remove even more files from include/
2007-10-10 13:52:05 -05:00
Jelmer Vernooij
f9eede3d40 r12670: Make a couple of dependencies stricter
Re-introduce and use the OUTPUT_TYPE property for MODULEs to force
specific modules to always be included
2007-10-10 13:49:35 -05:00
Jelmer Vernooij
ca8db1a0cd r12592: Remove some useless dependencies 2007-10-10 13:49:00 -05:00
Jelmer Vernooij
0aca5fd513 r12542: Move some more prototypes out to seperate headers 2007-10-10 13:47:55 -05:00
Jelmer Vernooij
87f665a1d5 r12528: Add seperate proto headers for ntvfs, tdr, smb_server and nbt_server. 2007-10-10 13:47:51 -05:00
Jelmer Vernooij
b24f2583ed r12498: Eliminate INIT_OBJ_FILES and ADD_OBJ_FILES. We were not using
the difference between these at all, and in the future the
fact that INIT_OBJ_FILES include smb_build.h will be sufficient to
have recompiles at the right time.
2007-10-10 13:47:45 -05:00
Jelmer Vernooij
a86abe84e2 r12254: Add some (hopefully correct) descriptions for libraries that are installed.
Install pkg-config files.
2007-10-10 13:47:24 -05:00
Andrew Tridgell
f8d43f1f67 r11596: switched the libcli/raw/ code over to using the lib/stream/ generic
packet parsing code. This simplifies the logic in the raw client
library a fair bit
2007-10-10 13:45:56 -05:00
Jelmer Vernooij
2a868ab3b5 r11385: Fix issues in module.c. Calling function should pass in path
to directory rather then subsystem name now.
2007-10-10 13:45:29 -05:00
Jelmer Vernooij
875eb8f4cc r11382: Require number of required M4 macros
Make MODULE handling a bit more like BINARY, LIBRARY and SUBSYSTEM
Add some more PUBLIC_HEADERS
2007-10-10 13:45:29 -05:00
Jelmer Vernooij
0b54405685 r11377: Add support for building LIBRARY elements as shared libraries:
- Adds -rpath bin/ so you don't have to install Samba in order to use compiled binaries.
 - Writes out pkg-config files when building shared libs
 - Supports automatic fallback to MERGEDOBJ (which is the default) or
   OBJ_LIST (if ld -r is not supported)

Building with shared libs reduces the size of the Samba binaries from
197 Mb to 60 Mb (including libraries) on my system (GCC4, with debugging).

To build with shared libraries support enabled, run:

LIBRARY_OUTPUT_TYPE=SHARED_LIBRARY ./config.status

init functions don't get called correctly yet when using shared libs, so
you won't be able to actually run anything with success :-)

Once init functions are done, I'll look at support for loading shared
modules once again.

Based on a patch by Peter Novodvorsky (nidd on IRC).
2007-10-10 13:45:28 -05:00
Jelmer Vernooij
90f49b6f70 r11304: Add support back in for loading shared modules (not used yet) 2007-10-10 13:45:16 -05:00
Jelmer Vernooij
24e1030090 r11244: Relative path names in .mk files 2007-10-10 13:45:06 -05:00
Andrew Bartlett
2e76a4b8ef r10596: Move the credentials code into it's own subsystem, and push it under auth/
Andrew Bartlett
2007-10-10 13:39:09 -05:00
Jelmer Vernooij
4bffe44359 r10330: Add SConscript to more subsystems. Some of the tdb tools build now.
Start on custom Samba scons tools (for handling proto generation, pidl, etc)
2007-10-10 13:38:28 -05:00
Jelmer Vernooij
8aa9711a30 r10246: Remove unused function
Move auth-specific file to auth/
2007-10-10 13:38:11 -05:00
Jelmer Vernooij
9ea601c0a6 r9448: Work on reading the secrets tdb. Build tdbsam support by default. 2007-10-10 13:34:16 -05:00
Andrew Bartlett
ca6cf46270 r9421: Move arcfour code into it's own file, in lib/crypto.
Andrew Bartlett
2007-10-10 13:33:37 -05:00
Jelmer Vernooij
5ee7af26dd r8940: Add TDR (Trivial Data Representation). The aim is to use this later for
NBT/WINS/etc rather then having to depend on NDR.
2007-10-10 13:30:59 -05:00
Andrew Bartlett
c19d5706f4 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
2007-10-10 13:18:41 -05:00
Andrew Tridgell
d4648249b2 r7352: the internal heimdal build change. This changes quite a few things:
- if you want kerberos now, you need to unpack a lorikeet heimdal
   tree in source/heimdal/. If source/heimdal/ does not exist at
   configure time then all kerberos features are disabled. You cannot
   use an external kerberos library for now. That may change later.

 - moved lib/replace/ config stuff to lib/replace/ and create a
   lib/replace/replace.h. That allows the heimdal build to use our
   portability layer, and prevenets duplicate definitions of functions
   like strlcat()

 - if you do enable heimdal, then you will need to do 'make
   HEIMDAL_EXTERNAL' before you build Samba. That should be fixed once
   I explain the problem to jelmer (the problem is the inability to
   set a depend without also dragging in the object list of the
   dependency. We need this for building the heimdal asn1 compiler and
   et compiler.

 - disabled all of the m4 checks for external kerberos libraries. I
   left them in place in auth/kerberos/, but disabled it in
   configure.in

some of the heimdal_build/ code is still very rough, for example I
don't correctly detect the correct awk, flex, bison replacements for
heimdal_build/build_external.sh. I expect to fix that stuff up over
the next few days.
2007-10-10 13:17:45 -05:00
Jelmer Vernooij
fc7f519e4a r7166: Move replacement stuff to seperate directory
(easier to add win32-specific bits later)
Trim LIBBASIC a bit more
2007-10-10 13:17:22 -05:00
Jelmer Vernooij
cab81a51bf r6863: lib-friendlier names + fix some dependencies 2007-10-10 13:16:52 -05:00
Andrew Bartlett
550f17f992 r6573: Start on my project to implement an NT4 compatible BDC in Samba4.
This brings in a compatability layer for Samba3 in Samba4 - where we
will start to define file formats and similar details.

The 'net samdump' command uses 'password server = ' for now, and
performs a similar task to Samba3's 'net rpc samsync'.

Andrew Bartlett
2007-10-10 13:16:27 -05:00
Jelmer Vernooij
a2ef9225f1 r6139: Move socket_wrapper to a seperate directory 2007-10-10 13:11:21 -05:00
Stefan Metzmacher
5e8558c5b4 r6129: - add our own MSZIP decompression implementation
(taken from cabextract.c from KDE)
  this code maybe need to be rewritten and the
  compression side needs to be done,
  but for now it seems to works

- remove the dependency to zlib

metze
2007-10-10 13:11:20 -05:00
Jelmer Vernooij
f8a63a843c r6088: Add the socket_wrapper library. This is a very simple library that
redirects traffic (currently just IP traffic) over unix domain sockets
if the SOCKET_WRAPPER_DIR environment variable has been set.
Aim is to use this for the Samba4 torture suite on the buildfarm.

The socket_wrapper library can only be used if Samba was compiled with
--enable-developer.

test_rpc.sh passes against a local smbd with SOCKET_WRAPPER_DIR set.
(and ethereal showed no traffic whatsoever)

Stuff that still needs to be fixed in socketwrapper:
 - Give ENETUNREACH if target is not localhost
 - A given port number can only be used for UDP /or/ TCP, not both.
 - Perhaps allow some calls to circumvent socketwrapper (do we need DNS?)
2007-10-10 13:11:18 -05:00