1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-25 23:21:54 +03:00
Commit Graph

1081 Commits

Author SHA1 Message Date
Jeremy Allison
58a9621904 r25406: Make the Linux nss client code thread-safe.
Fix originally inspired from code from boyang <yyyeer.bo@gmail.com>.
Jeremy.
(This used to be commit cc19c0ace4)
2007-10-10 12:31:03 -05:00
Stefan Metzmacher
28aa4bff8d r25154: move winbindd code into winbindd/
metze
(This used to be commit 3ac7566ae1)
2007-10-10 12:30:46 -05:00
Jeremy Allison
132ee3990a r25009: Large patch discussed with Volker. Move unix_convert to a talloc-based
interface. More development will come on top of this. Remove the
"mangled map" parameter.
Jeremy.
(This used to be commit dee8beba7a)
2007-10-10 12:30:32 -05:00
Michael Adam
3edc4c6f66 r24955: Reformat some object lists in Makefile.in to minimize the diff.
(This used to be commit 5d94c3dab2)
2007-10-10 12:30:30 -05:00
Günther Deschner
56736616d8 r24841: The locator has no dependencies to ldap libs anymore. Also fix the build.
Guenther
(This used to be commit ce7c816083)
2007-10-10 12:30:27 -05:00
Günther Deschner
55b59eb80b r24833: Move locator to nsswitch (does not belong to libads anymore).
Guenther
(This used to be commit af90c6949c)
2007-10-10 12:30:26 -05:00
Volker Lendecke
929e1d9920 r24809: Consolidate the use of temporary talloc contexts.
This adds the two functions talloc_stackframe() and talloc_tos().

 * When a new talloc stackframe is allocated with talloc_stackframe(), then
 * the TALLOC_CTX returned with talloc_tos() is reset to that new
 * frame. Whenever that stack frame is TALLOC_FREE()'ed, then the reverse
 * happens: The previous talloc_tos() is restored.
 *
 * This API is designed to be robust in the sense that if someone forgets to
 * TALLOC_FREE() a stackframe, then the next outer one correctly cleans up and
 * resets the talloc_tos().

The original motivation for this patch was to get rid of the
sid_string_static & friends buffers. Explicitly passing talloc context
everywhere clutters code too much for my taste, so an implicit
talloc_tos() is introduced here. Many of these static buffers are
replaced by a single static pointer.

The intended use would thus be that low-level functions can rather
freely push stuff to talloc_tos, the upper layers clean up by freeing
the stackframe. The more of these stackframes are used and correctly
freed the more exact the memory cleanup happens.

This patch removes the main_loop_talloc_ctx, tmp_talloc_ctx and
lp_talloc_ctx (did I forget any?)

So, never do a

tmp_ctx = talloc_init("foo");

anymore, instead, use

tmp_ctx = talloc_stackframe()

:-)

Volker
(This used to be commit 6585ea2cb7)
2007-10-10 12:30:24 -05:00
Günther Deschner
b2a1a4a0fe r24806: Fix the build, sorry...
Guenther
(This used to be commit cd1fccaf8f)
2007-10-10 12:30:23 -05:00
Günther Deschner
3e4c094e61 r24805: When we can build the locator, build it.
Guenther
(This used to be commit 91d10fe159)
2007-10-10 12:30:23 -05:00
Gerald Carter
babab94fb9 r24788: Cleanup some linking msgs and remove references to libmsrpc
in SAMBA_3_2_0
(This used to be commit ba05dc013f)
2007-10-10 12:30:21 -05:00
Günther Deschner
49e92d0d56 r24748: Remove all dependencies to samba internals and convert the krb5 locator plugin
into a tiny winbindd DsGetDcName client. This still does not solve the case of
using the locator from within winbindd itself but at least gencache.tdb and
others are no longer corrupted.

Guenther
(This used to be commit 908e7963b8)
2007-10-10 12:30:17 -05:00
Gerald Carter
51514b5d63 r24745: Merge Simo's shared lib build fix from svn r22842 that was lost
somehow.  Don't include the PIE_FLAGS when building shared libs.
(This used to be commit 22f2f1e033)
2007-10-10 12:30:17 -05:00
Günther Deschner
84bce05e71 r24742: Add experimental DsGetDcName() call (will be used by krb5 locator for fine
grained KDC DNS queries).

Guenther
(This used to be commit 3263cd680f)
2007-10-10 12:30:16 -05:00
Günther Deschner
36a85969f9 r24416: Some more minor edits for libgpo, mostly reformatting and moving of functions.
Guenther
(This used to be commit 3e240672b4)
2007-10-10 12:29:43 -05:00
Stefan Metzmacher
d68145a509 r24302: add a module that overloads the file_id_create VFS function
and alters the device id depending on the configured algorithm.

The algorithm is configured via "fileid:algorithm":
- "fsname" (default) uses a uint64 hash over the mount point
- "fsid" uses the fsid returned from statfs()

This is needed for "clustering = yes" on some clusterfilesystems

metze
(This used to be commit 30f9171cca)
2007-10-10 12:29:25 -05:00
Volker Lendecke
1bbb6e5a0b r24007: Attempt to fix the build on host "gwen". The Makefile ended up with an
empty line.
(This used to be commit d05f7aefdf)
2007-10-10 12:28:55 -05:00
Günther Deschner
8ba1569eef r23976: Move authdata.o to LIBADS_SERVER_OBJ.
Guenther
(This used to be commit 3544d19d54)
2007-10-10 12:28:51 -05:00
Günther Deschner
db4099884a r23921: Remove GPO_SID_TOKEN struct and use nt_user_token instead, that already has
S-1-5-11 in the token.

Guenther
(This used to be commit 83c734690a)
2007-10-10 12:28:42 -05:00
Stefan Metzmacher
57dd25cccb r23893: add dummy callbacks for LDAP SASL wrapping,
they're not used yet...

metze
(This used to be commit a3b97cdce7)
2007-10-10 12:28:39 -05:00
Günther Deschner
bdb7c621e6 r23840: Fix the build.
Guenther
(This used to be commit 07bce67121)
2007-10-10 12:28:33 -05:00
Gerald Carter
866e39ad25 r23694: Make sure that when builddir != srcdir, we can still find the exports
files and library-versions file.

Also move the "-o $@" from the individual targets and into the SHLD_DSO
command.
(This used to be commit c85311b3a8)
2007-10-10 12:23:46 -05:00
Gerald Carter
3a246ac46b r23689: Squashed commit of the following:
commit 0d4bbd197198a94bf4e29e0ccd175a40a60097f3
Author: Gerald (Jerry) Carter <jerry@samba.org>
Date:   Mon Jul 2 20:08:19 2007 -0500

    Introduce GNU ld linker export-script for hiding non-public symbols
    in shared libraries.

    Based on initial patch from Julien Cristau <jcristau@debian.org>
    and suggestions from James Peach <jpeach@samba.org>.  Currently
    the libsmbsharemodes libraries still exports *.  Signed off on
    my Derrell as well.
(This used to be commit c42cf731b4)
2007-10-10 12:23:46 -05:00
Volker Lendecke
ef8706acd1 r23662: According to simo, check_dos_char is needed
(This used to be commit c195eccefe)
2007-10-10 12:23:43 -05:00
Volker Lendecke
971b640e0c r23660: Anybody know what check_dos_char() was used for? It wasn't called at
all, so it's gone. With it 8k bss went away.
(This used to be commit 7e9a4c39a5)
2007-10-10 12:23:43 -05:00
Günther Deschner
47bd42ab1c r23607: Add legacy support for Services for Unix (SFU) 2.0.
Guenther
(This used to be commit 11b390309b)
2007-10-10 12:23:35 -05:00
James Peach
c7749c8f93 r23541: Linking the LSA pipe module only once is probably enough.
(This used to be commit 1d941961e0)
2007-10-10 12:23:27 -05:00
Michael Adam
aa4110e6f2 r23509: This activates the global options from the registry in loadparm.
The global options are stored as values in the subkey "global"
of the SMBCONF registry key.

The activation is accomplished in smb.conf though a new special
semantic of the "include" parameter: "include = registry" triggers
the processing of the registry global options exactly at the
position of the include statement. Options read from the registry
take the same precedence as parameters loaded from a file via
include. Need to reload the registry globals is detected by
watching the tdb sequence number.

Registry shares are automatically activated when the registry
globals are processed.

So a "registry only" configuration can be realized by an
smb.conf that looks as follows:

================================
[global]
include = registry
================================

The global options and registry shares can be conveniently
edited with the "net conf" utility.

Caveat:

A possible pitfall consists in using "include = registry"
together with the "lock directory" directive in the registry.
This problem will be addressed in the next time.

Note on the code:

Processing of the registry options is accomplished by a function
process_registry_globals() in loadparm.c The current version is
only an interim solution: It is handcoded instead of using the
infrastructure of reg_api.c. The reason for this is that using
reg_api still has too large linker dependencies, bloating virtually
all targets by PASSDB_OBJ, SMBLDAP_OBJ, GROUPDB_OBJ and LDB stuff.
A version of process_registry_globals that uses reg_api is
included but commented out. The goal is to eventually refactor
and restructure the registry code so that one can use the reg_api
to access only the registry tdb and not link all the dynamic
backends with all their linking implications.
(This used to be commit 24b0cbcb37)
2007-10-10 12:23:23 -05:00
Michael Adam
fd3dbb4a48 r23495: Replace literal occurrences of libsmb/errormap.o by $(ERRORMAP_OBJ).
(This used to be commit 2041c35a30)
2007-10-10 12:23:21 -05:00
Michael Adam
6c674deb97 r23494: Synchronize some occurrences of BINARY_PREREQS and bin/.dummy.
Further reduce the diff between 3_0 and 3_0_26 by some reformatting
and rearrangements.

Michael
(This used to be commit 02685358d1)
2007-10-10 12:23:21 -05:00
Michael Adam
6090601c8b r23485: This checkin consists mostly of refactorings in preparation of the
activation of global registry options in loadparm.c, mainly to
extract functionality from net_conf.c to be made availabel elsewhere
and to minimize linker dependencies.

In detail:

* move functions registry_push/pull_value from lib/util_reg.c to new file
  lib/util_reg_api.c

* create a fake user token consisting of builtin administrators sid and
  se_disk_operators privilege by hand instead of using get_root_nt_token()
  to minimize linker deps for bin/net.

  + new function registry_create_admin_token() in new lib/util_reg_smbconf.c
  + move dup_nt_token from auth/token_util.c to new file lib/util_nttoken.c
  + adapt net_conf.c and Makefile.in accordingly.

* split lib/profiles.c into two parts: new file lib/profiles_basic.c
  takes all the low level mask manipulation and format conversion functions
  (se_priv, privset, luid). the privs array is completely hidden from
  profiles.c by adding some access-functions. some mask-functions are not
  static anymore.

  Generally, SID- and LUID-related stuff that has more dependencies
  is kept in lib/profiles.c

* Move initialization of regdb from net_conf.c into a function
  registry_init_regdb() in lib/util_reg_smbconf.c.

Michael
(This used to be commit efd3e2bfb7)
2007-10-10 12:23:21 -05:00
James Peach
6e631e5fb5 r23478: Change the handling of the developer CFLAGS so that they are always
emited to the Makefile in the DEVELOPER_CFLAGS variable. This makes
it easy to turn developer mode on and off without waiting for
configure to run. The developer flags are only added to CFLAGS for
the --enable-developer and --enable-krb5developer cases.
(This used to be commit 4b392a76eb)
2007-10-10 12:23:20 -05:00
Volker Lendecke
de565785f5 r23410: Merge the core of the cluster code.
I'm 100% certain I've forgotten to merge something, but the main code
should be in. It's mainly in dbwrap_ctdb.c, ctdbd_conn.c and
messages_ctdbd.c.

There should be no changes to the non-cluster case, it does survive make
test on my laptop.

It survives some very basic tests with ctdbd enables, I did not do the
full test suite for clusters yet.

Phew...

Volker
(This used to be commit 15553d6327)
2007-10-10 12:23:14 -05:00
James Peach
a3d1d85a19 r23352: Don't generate stamp-h. AFAICT it is never used.
(This used to be commit d47d1a44e7)
2007-10-10 12:23:09 -05:00
Andrew Tridgell
248a82c0f2 r23323: merged ldb changes from 3.0.26
(This used to be commit 7c9a5c2a3f)
2007-10-10 12:23:06 -05:00
Gerald Carter
c48b95d497 r23321: remove unused variable (due to mad merge from Centeris patches)
(This used to be commit 1b68302e34)
2007-10-10 12:23:06 -05:00
Michael Adam
706dfe6dca r23317: Fix the build: r23315 was a little overeager in removing the
INIPARSER_OBJ from the bin/net target altogether. I re-add it
in the guise of @BUILD_INIPARSER@ (to NET_OBJ). This also
eliminates the need to have @BUILD_INIPARSER@ in the deps for
the bin/net target.
Same procedure for the pam_winbindd module.

Michael
(This used to be commit 114a80dd2e)
2007-10-10 12:23:06 -05:00
Stefan Metzmacher
5ddcf95651 r23315: - don't use the builtin and -liniparser together in bin/net
- unify handling on @BUILD_INIPARSER@

btw: nsswitch/pam_winbind.c doesn't compile anymore on SuSE 10.2!
     I think we should build pam modules by default to notice things
     like this in the build-farm...

metze
(This used to be commit 1f30ac2905)
2007-10-10 12:23:05 -05:00
Stefan Metzmacher
82e4680b2d r23314: For some systems it's needed to inject replace.h into
the iniparser source code, I do it in a way we can still have
a unmodified copy of iniparser in source/iniparser/
and have the wrapper stuff in source/iniparser_build/.

If the build-farm is happy with this I'll merge it to 3_0_26
tomorrow...

metze
(This used to be commit 43d390d186)
2007-10-10 12:23:05 -05:00
James Peach
aded048160 r23295: Apply proto_exists and bin/.dummy dependencies consistently for all
binaries.  Fix vfs_zfsacl build rule in SAMBA_3_0.
(This used to be commit 07fa76c6c7)
2007-10-10 12:23:03 -05:00
Gerald Carter
97a164ba96 r23274: merge CloseEventlog() pidl conversion from 3.0.26 && fix a few init call renames for svcctl in the previous commit
(This used to be commit ebcae48ec1)
2007-10-10 12:23:02 -05:00
Gerald Carter
d99f4f004c r23271: merge service control pidl change for CloseServiceHandle() from SAMBA_3_0_26
(This used to be commit 0b1bc3521f)
2007-10-10 12:23:01 -05:00
Gerald Carter
4eab22b893 r23242: BUG 4671: Fix Makefile syntax error when SMBMOUNT_PROGS is not defined
(This used to be commit 592e73dc31)
2007-10-10 12:22:58 -05:00
Volker Lendecke
6426d8b4a0 r23224: Move map_nt_error_from_unix to lib/errmap_unix.c. This function is
useful even in binaries that don't link in libsmb
(This used to be commit 52545d1192)
2007-10-10 12:22:56 -05:00
Volker Lendecke
e8156439f2 r23183: Check in a change made by Tridge:
This replaces the internal explicit dev/ino file id representation by a
"struct file_id". This is necessary as cluster file systems and NFS
don't necessarily assign the same device number to the shared file
system. With this structure in place we can now easily add different
schemes to map a file to a unique 64-bit device node.

Jeremy, you might note that I did not change the external interface of
smb_share_modes.c.

Volker
(This used to be commit 9b10dbbd5d)
2007-10-10 12:22:52 -05:00
Lars Müller
a32d8a3909 r23156: Install the smb_share_modes.h header file.
(This used to be commit e03a67ebc6)
2007-10-10 12:22:50 -05:00
Lars Müller
7ee1937dad r23155: Rename INSTALLPERMS to INSTALLPERMS_BIN to differenciate clearer from
INSTALLPERMS_DATA.
(This used to be commit 7a9ea106ff)
2007-10-10 12:22:50 -05:00
Lars Müller
15caaaa8c2 r23154: Add INSTALLPERMS_DATA set to 0644 to install the header files with this
permission set instead of 0755.
(This used to be commit 1db52993ed)
2007-10-10 12:22:49 -05:00
Günther Deschner
825c4ceffe r23121: Fix Bug #2727 and let pam_smbpass at least link and dlopen correctly again.
Thanks to Bartlomiej Solarz-Niesluchowski <Bartlomiej.Solarz-Niesluchowski@wit.edu.pl>.

Guenther
(This used to be commit ba956ab8e4)
2007-10-10 12:22:47 -05:00
Volker Lendecke
f260b45d64 r23117: Factor out local messaging.
This removes message_block / message_unblock. I've talked to Jeremy and
Günther, giving them my reasons why I believe they have no effect.
Neither could come up with a counter-argument, so they go :-)
(This used to be commit a925e0991f)
2007-10-10 12:22:47 -05:00
Volker Lendecke
ff0ac5b0e7 r23112: Trim down the message.c API slightly: The messages_pending_for_pid is now
replaced by MSG_FLAG_LOWPRIORITY or'ed into the msg_type. To enable this,
changed the msg_type definitions to hexadecimal.

This way we could theoretically add the MSG_FLAG_NODUPLICATES again, but I
would rather not do this, because that one is racy and can't be guaranteed at
all.
(This used to be commit 3f5eb8a960)
2007-10-10 12:22:47 -05:00