1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-24 21:34:56 +03:00
Commit Graph

73792 Commits

Author SHA1 Message Date
Rusty Russell
61bf43f5d1 lib/tdb_compat: header for tdb1 vs tdb2.
TDB2's API is slightly different from TDB1.  In particular, all functions
return 0 (TDB_SUCCESS) or a negative error number, rather than -1 or tdb_null
and storing the error in tdb_error() (though TDB2 does that as well).

The simplest fix is to replace all the different functions with a wrapper,
and that is done here.

Compatibility functions:

tdb_null: not used as an error return, so not defined by tdb2.
tdb_fetch_compat: TDB1-style data-returning tdb_fetch.
tdb_firstkey_compat: TDB1-style data-returning tdb_firstkey
tdb_nextkey_compat: TDB1-style data-returning tdb_nextkey, with
	TDB2-style free of old key.
tdb_errorstr_compat: TDB1-style tdb_errorstr() which takes TDB instead of ecode.
TDB_CONTEXT: TDB1-style typedef for struct tdb_context.
tdb_open_compat: Simplified open routine which takes log function, sets
	TDB_ALLOW_NESTING as Samba expects, and adds TDB_CLEAR_IF_FIRST support.

Things defined away in TDB2 wrappers:

tdb_traverse_read: TDB2's tdb_traverse only uses read-locks anyway.
tdb_reopen/tdb_reopen_all: TDB2 detects this error itself.
TDB_INCOMPATIBLE_HASH: TDB2 uses the Jenkins hash already.
TDB_VOLATILE: TDB2 shouldn't have freelist scaling issues.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2011-06-20 11:18:34 +02:00
Rusty Russell
eb8cb4f548 source3/smdb/files.c: file_name_hash to use Jenkins hash from CCAN.
Rather than tdb's internal one.
2011-06-20 11:18:34 +02:00
Rusty Russell
f72dd0cf0f source3/lib/util.c: str_checksum to use Jenkins hash from CCAN.
Rather than tdb's internal one.
2011-06-20 11:18:34 +02:00
Rusty Russell
20687dcd7b smb_share_modes: don't use tdb_jenkins_hash.
It's a nice hash, but this usage has nothing to do with TDB.  So use the
Jenkins hash directly from CCAN instead (it's the same one).

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2011-06-20 11:18:34 +02:00
Rusty Russell
754c677b0b lib: import ccan modules for tdb2
Imported from git://git.ozlabs.org/~ccan/ccan init-1161-g661d41f

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2011-06-20 11:18:34 +02:00
Volker Lendecke
a8c3d38bc8 s3: Replace shadow_copy2 with a new implementation
Autobuild-User: Volker Lendecke <vlendec@samba.org>
Autobuild-Date: Mon Jun 20 11:17:47 CEST 2011 on sn-devel-104
2011-06-20 11:17:47 +02:00
Matthieu Patou
29e043a208 pyldb: add unit test for get(myattribute, defVal)
Autobuild-User: Matthieu Patou <mat@samba.org>
Autobuild-Date: Mon Jun 20 09:23:15 CEST 2011 on sn-devel-104
2011-06-20 09:23:15 +02:00
Andrew Bartlett
a1f04e8abc libcli/util Rename common map_nt_error_from_unix to avoid duplicate symbol
The two error tables need to be combined, but for now seperate the names.

(As the common parts of the tree now use the _common function,
errmap_unix.c must be included in the s3 autoconf build).

Andrew Bartlett

Autobuild-User: Andrew Bartlett <abartlet@samba.org>
Autobuild-Date: Mon Jun 20 08:12:03 CEST 2011 on sn-devel-104
2011-06-20 08:12:03 +02:00
Andrew Bartlett
018f4a5889 libcli/util Bring samba4 unix -> nt_status code in common.
Due to library link orders, this is already the function that is being
used.  However we still need to sort out the duplicate symbol issues,
probably by renaming things.

Andrew Bartlett
2011-06-20 14:36:06 +10:00
Andrew Bartlett
a63189e9f0 s3-libcli Remove unused error mapping tables
The functions which uesed these tables have since moved in common.

Andrew Bartlett
2011-06-20 14:05:32 +10:00
Andrew Bartlett
ee90e01030 s3-winbind Move winbind privileged socket dir into state_path()
On default installs, this will be the same as the old lock_path(), but
lock_path() is now a directory that can safely be mapped to /var/locks
and removed by the OS on reboot.  It is important that the directory
permissions of this directory be preserved, as they may be customised.

Andrew Bartlett
2011-06-20 14:05:32 +10:00
Andrew Bartlett
6c9a78074a build: Put lockdir and cachedir in FHS-like locations by default
This does not move statedir, leaving it in PREFIX/var/locks because
state files such as idmap are dangerous to move, as they might
re-create, causing chaos.

This isn't ideal, but I don't have a better solution right now.

Andrew Bartlett
2011-06-20 14:05:32 +10:00
Andrew Bartlett
edd3e8b03a s4-build Change default paths and --with flags for a 4.0 release
The following changes are made since Samba 3.6:

* --with-ncalrpcdir and --with-nmbdsocketdir are replaced with --with-socket-dir
  (with ntp_signd, winbindd, nmbd subdirs)

* This moves the winbind socket out of /tmp.  Distributions have moved
  this out of /tmp for quite some time now, and /var/run in the FHS
  blessed location these days.  --with-socketdir should point to
  /var/run in a distribution package.

* Configuration files are expected in PREFIX/etc instead of PREFIX/lib
  (they need to be moved manually)

* SWAT data files have moved to PREFIX/share/swat (alongside
  PREFIX/share/setup containing samba4 provision templates).

* The --with-fhs option is no longer available (it was never very
  useful, and major distributions (Debian, OpenSuSE, Fedora) either
  specified every option (overriding the effect) or didn't specify it
  at all.

* PID files are now in PREFIX/var/run, moved from PREFIX/var/locks

* The ncalrpc and nmbd sockets are now in PREFIX/var/run by default

The following changes are made for users of Samba3 binaries built with the top level build in master

* 'state' files are now expected to be in their Samba 3.6 location
  PREFIX/var/locks (and will need to be moved manually)

Andrew Bartlett

Signed-off-by: Andrew Tridgell <tridge@samba.org>
2011-06-20 14:05:32 +10:00
Matthieu Patou
01ce078ed1 s4-upgradeprovision: propose the use of findprovisionranges if no ranges are present
Autobuild-User: Matthieu Patou <mat@samba.org>
Autobuild-Date: Mon Jun 20 00:30:59 CEST 2011 on sn-devel-104
2011-06-20 00:30:59 +02:00
Matthieu Patou
957b1ff183 s4: create script to find provision ranges for old provision without this information 2011-06-19 23:21:09 +02:00
Matthieu Patou
9c94943d26 s4-sambatool: extract the confirm function in a separte module for reuse 2011-06-19 23:21:09 +02:00
Matthieu Patou
bc549575dd s4-samba-tool: remove unused imports 2011-06-19 23:21:08 +02:00
Matthieu Patou
db03091607 s4-samba-tool: use correct object notation ie. obj.method rather than method(obj, ...) 2011-06-19 23:21:08 +02:00
Matthieu Patou
8a04863f0d s4-sambatool: use correct way to call class methods 2011-06-19 23:21:08 +02:00
Matthieu Patou
89684895ee s4-upgradeprovision: improve message output 2011-06-19 23:21:08 +02:00
Matthieu Patou
8a19e1ecfb s4-upgradeprovision: skip versionNumber, it's used by GPO 2011-06-19 23:21:08 +02:00
Matthieu Patou
15637206b9 s4-provision: Remove hard coded SD for CN=Sites container
With the fix introduced by Nadya in changeset
622ef6aed8 we are now able to generate
correct SD (at least the same as W2k3R2 with a Forest Level of 2003), so
there is no need for this fix anymore as it makes SDs for Forest Level
2003 and lower incorrect.
2011-06-19 23:21:08 +02:00
Matthieu Patou
05b2d4147a s4-upgradeprovision: deltaattr can be empty or none too 2011-06-19 23:21:08 +02:00
Matthieu Patou
12b379e983 s4-upgradeprovision: handle the fact that oEMInformation might not be present 2011-06-19 23:21:08 +02:00
Matthieu Patou
5e81ee8b34 s4-upgradeprovision: Rework completly how SDs are recalculated 2011-06-19 23:21:08 +02:00
Matthieu Patou
7128345969 s4-python: make checks of sacl in get_diff_sddls optionnal 2011-06-19 23:21:08 +02:00
Matthieu Patou
c0eb403758 s4-upgradeprovision: remove useless comment 2011-06-19 23:21:08 +02:00
Matthieu Patou
bc7b8fa108 s4-upgradeprovision: ignore objectSid 2011-06-19 23:21:08 +02:00
Matthieu Patou
f7a903ee80 s4-upgradeprovision: add a list of attribute that are not DSDB attribute that we don't want to copy 2011-06-19 23:21:08 +02:00
Matthieu Patou
245b277749 s4: fix wrong index usage PRIMARY_USER_SID_INDEX when it should have been PRIMARY_GROUP_SID_INDEX
The system account was instanciated with wrong user an group SIDs, group
sid resulted being just the domain SID.
Bug seems to date from fbe6d155bf.

Andrew (B.) please check.
2011-06-19 23:21:08 +02:00
Matthieu Patou
930d2f28c9 s4-upgradeprovision: if there is nothing to really modify then skip it 2011-06-19 23:21:08 +02:00
Matthieu Patou
0e72914925 s4-upgradeprovision: dn must be skipped as delta.remove("dn") do not remove this attribute 2011-06-19 23:21:08 +02:00
Matthieu Patou
f76c206e2f s4-upgradeprovision: change hashAttrNotCopied to be an array 2011-06-19 23:21:08 +02:00
Matthieu Patou
4305f54b8e s4-upgradeprovision: fix inverted logic and wrong flags on sd_flags control 2011-06-19 23:21:08 +02:00
Matthieu Patou
01758595e3 s4-upgradeprovision: remove useless code 2011-06-19 23:21:08 +02:00
Matthieu Patou
44c5406252 s4-upgradeprovision: don't print dn in the list of modified attributes 2011-06-19 23:21:08 +02:00
Matthieu Patou
9a18e07b4f s4-upgradeprovision: clean up, reformating and update docs 2011-06-19 23:21:08 +02:00
Matthieu Patou
20233cdf53 s4-upgradeprovision: introduce invocation id in lastprovisionUSNs 2011-06-19 23:21:08 +02:00
Matthieu Patou
71ab462c81 s4-upgradeprovision: add function to know if attribute is replicated or not 2011-06-19 23:21:08 +02:00
Matthieu Patou
d9abcc9384 s4-upgradeprovision: split update_present in two functions depending on the method used
In order to make the function a bit more clearer and with less depth,
the selection of attribute that are not updated is split in two
functions depending on the fact that we are using mainly
replPropertyMetadata to make our choice or if we are using the list of
attributes that should, could or shouldn't be updated/created/deleted.
2011-06-19 23:21:08 +02:00
Matthieu Patou
0065742909 s4-upgradeprovision: handle_special_attributes don't really need ranges of USNs, just the information if we are using replPropertyMetadata for attribute selection 2011-06-19 23:21:08 +02:00
Matthieu Patou
45df4d81ed s4-python: fix wrong discovery of the site name in find_key_provision_parameters 2011-06-19 23:21:07 +02:00
Matthieu Patou
5db07d2f42 s4-upgradeprovisision: fix bug 8063, old SD can miss some componenent (group, owner, ...)
Don't make the assumption that SD are correct, they can be wrong and
misformed.

Fix this bug: https://bugzilla.samba.org/show_bug.cgi?id=8063
2011-06-19 23:21:07 +02:00
Matthieu Patou
b14bdf431b s4-upgradeprovision: Fix an error, so that cursddl and refsddl are not the same
Thanks to Dirk Paulli for pointing it with his bug report.
2011-06-19 23:21:07 +02:00
Matthieu Patou
02970f41a2 py-ldb: allow dictionnary like usage (ie. e.get("myattribute", defVal) 2011-06-19 23:21:07 +02:00
Volker Lendecke
5290faca7a s3: Fix Coverity ID 2582: FORWARD_NULL
Autobuild-User: Volker Lendecke <vlendec@samba.org>
Autobuild-Date: Sun Jun 19 20:46:43 CEST 2011 on sn-devel-104
2011-06-19 20:46:43 +02:00
Volker Lendecke
9cc68e49ee s3: Fix Coverity ID 2583: RESOURCE_LEAK 2011-06-19 19:36:27 +02:00
Volker Lendecke
59887edd1d s3: Remove unused name_queries
Autobuild-User: Volker Lendecke <vlendec@samba.org>
Autobuild-Date: Sun Jun 19 15:14:38 CEST 2011 on sn-devel-104
2011-06-19 15:14:38 +02:00
Volker Lendecke
809e5ea5ba s3: Fix some type-punned warnings 2011-06-19 14:03:52 +02:00
Volker Lendecke
f811e894c4 s3: Add name_resolve_bcast_send/recv 2011-06-19 14:03:51 +02:00