summaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)AuthorFilesLines
2012-04-10ldb: Detect failures in ldb.base againAndrew Bartlett3-4/+15
We need to wrap the ldb tests in the subunit blackbox helpers. We also needed to change to the right directory, or else the :< file:// syntax check does not work, as samba4.png is not found. Andrew Bartlett
2012-04-10Revert "ldb: Permit desactivation of autocomit for every ldb_xxx_ctrl function"Andrew Bartlett8-28/+23
This reverts commit 40a4aea8918c2637703af03383f440d068820e48. Autocommit is important, as otherwise an ldb module could error out during an operation, and leave an corrupt database. Andrew Bartlett
2012-04-10On advice from Jelmer and Andrew, move the blksize_t and blkcnt_t tests into ↵Jeremy Allison3-8/+14
libreplace to make it standalone. Autobuild-User: Jeremy Allison <jra@samba.org> Autobuild-Date: Tue Apr 10 04:07:11 CEST 2012 on sn-devel-104
2012-04-09Move blksize_t and blkcnt_t to replace.h from includes.h. Should help with ↵Jeremy Allison2-0/+10
platforms that don't have these. Autobuild-User: Jeremy Allison <jra@samba.org> Autobuild-Date: Mon Apr 9 21:40:42 CEST 2012 on sn-devel-104
2012-04-09libreplace: We have a poll replacement based on selectVolker Lendecke1-0/+1
Autobuild-User: Volker Lendecke <vl@samba.org> Autobuild-Date: Mon Apr 9 19:39:51 CEST 2012 on sn-devel-104
2012-04-09tevent: Fix a typoVolker Lendecke1-1/+1
2012-04-05build: Remove sys_open wrapperAndrew Bartlett1-1/+1
2012-04-05build: do not use HAVE_EXPLICIT_LARGEFILE_SUPPORT and *64() fucntions any moreAndrew Bartlett1-6/+1
2012-04-05build: Remove configure tests for *64 functions and typesAndrew Bartlett1-5/+0
We now use the standard types only. Andrew Bartlett
2012-04-05lib/replace: Add getconf LFS_CFLAGS support to autoconf buildAndrew Bartlett1-0/+8
2012-04-03lib/util: charset modules do not exist any moreAndrew Bartlett1-4/+0
Autobuild-User: Andrew Bartlett <abartlet@samba.org> Autobuild-Date: Tue Apr 3 08:07:42 CEST 2012 on sn-devel-104
2012-04-03lib/util: Add smb_load_module that returns DEBUG(0) errors on failureAndrew Bartlett2-38/+39
These errors are very important when trying to work out why a module does not load, and this rework allows them to be shown when loading vfs modules. Andrew Bartlett
2012-03-31Fix an IPv6 breakage I introduced by adding an strlcpy truncation check. ↵Jeremy Allison1-3/+10
Found by Matthieu Patou <mat@samba.org>. The truncate of the strlcpy() here was a *desired* side effect. strlcpy()/strlcat() should never be used like that. Be more explicit about the truncation and don't use strlcpy here. Autobuild-User: Jeremy Allison <jra@samba.org> Autobuild-Date: Sat Mar 31 07:59:16 CEST 2012 on sn-devel-104
2012-03-30ldb: Permit desactivation of autocomit for every ldb_xxx_ctrl functionMatthieu Patou8-23/+28
Autobuild-User: Matthieu Patou <mat@samba.org> Autobuild-Date: Fri Mar 30 11:59:09 CEST 2012 on sn-devel-104
2012-03-29Start to add truncate checks on all uses of strlcpy(). Reading lwnJeremy Allison3-24/+35
has it's uses :-). Autobuild-User: Jeremy Allison <jra@samba.org> Autobuild-Date: Thu Mar 29 20:48:15 CEST 2012 on sn-devel-104
2012-03-29lib/tdb: Update ABIAmitay Isaacs2-1/+67
Signed-off-by: Amitay Isaacs <amitay@gmail.com> Autobuild-User: Rusty Russell <rusty@rustcorp.com.au> Autobuild-Date: Thu Mar 29 13:12:46 CEST 2012 on sn-devel-104
2012-03-29lib/tdb: Add/expose lock functions to support CTDBAmitay Isaacs1-2/+16
This patch adds two lock functions used by CTDB to perform asynchronous locking. These functions do not actually perform any fcntl operations, but only increment internal counters. - tdb_transaction_write_lock_mark() - tdb_transaction_write_lock_unmark() It also exposes two internal functions - tdb_lock_nonblock() - tdb_unlock() These functions are NOT exposed in include/tdb.h to prevent any further uses of these functions. If you ever need to use these functions, consider using tdb2. Signed-off-by: Amitay Isaacs <amitay@gmail.com>
2012-03-29cast: make sure suncc sees a constant.Rusty Russell2-8/+22
cast_const() et. al. are supposed to be a constant expression, so you can do things like: static char *p = cast_const(char *, (const char *)"hello"); Unfortunately, a cast to intptr_t and arithmetic makes suncc reject it as a constant expression. We need the cast, because (1) the expression could be a void *, so we can't just add to it, and (2) gcc complains with -Wcast-qual without it. So instead of adding BUILD_BUG_OR_ZERO, we use a ? :, which keeps everyone happy. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> (Imported from CCAN commit 74859ab18b10aaf990848e49d7789ff5c6cf96c6) Autobuild-User: Rusty Russell <rusty@rustcorp.com.au> Autobuild-Date: Thu Mar 29 08:18:57 CEST 2012 on sn-devel-104
2012-03-29cast: test/compile_fail-cast_static.c should fail without COMPOUND_LITERALS.Rusty Russell1-3/+9
It still gave a warning on gcc, because casting a char to a char* gives a warning. Not so on sun CC. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> (Imported from CCAN commit 6569a707d169a629e25e10710c760c8dc84525c7)
2012-03-29tdb2: fix prototype in tdb1 code.Rusty Russell1-5/+5
We were handing an int-returning function where we should hand an enum TDB_ERROR returning function. Worse, it was returning 0/-1 instead of 0/TDB_ERR_*. Fortunately, it's only compared against success, but the Solaris compiler warns about it, and it's not correct anyway. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2012-03-27s4 dns: Check smb.conf if we should allow recursionKai Blin1-0/+21
2012-03-26LDB/s4 - deny the "(dn=...)" syntax on search filters when in AD modeMatthias Dieter Wallnöfer3-2/+19
Achieve this by introducing a "disallowDNFilter" flag. Reviewed-by: Andrew Bartlett <abartlet@samba.org> Signed-off-by: Andrew Bartlett <abartlet@samba.org>
2012-03-25replace: Avoid DEBUG(), which is not available in libreplace.Jelmer Vernooij1-1/+1
Autobuild-User: Jelmer Vernooij <jelmer@samba.org> Autobuild-Date: Sun Mar 25 00:13:59 CET 2012 on sn-devel-104
2012-03-24libreplace: Add usleep implementation.Jelmer Vernooij2-0/+20
2012-03-24lib/util: Remove obsolete sys_getpid() and sys_fork().Jelmer Vernooij4-43/+2
The performance of these is minimal (these days) and they can return invalid results when used as part of applications that do not use sys_fork(). Autobuild-User: Jelmer Vernooij <jelmer@samba.org> Autobuild-Date: Sat Mar 24 21:55:41 CET 2012 on sn-devel-104
2012-03-24lib/util: Allow calloc use in util.c, too.Jelmer Vernooij1-0/+1
Autobuild-User: Jelmer Vernooij <jelmer@samba.org> Autobuild-Date: Sat Mar 24 18:50:32 CET 2012 on sn-devel-104
2012-03-24replace: Work around socket wrapper.Jelmer Vernooij1-0/+1
It's fine to ignore socket wrapper here, as it doesn't deal with unix domain sockets.
2012-03-24replace: Add system/network.h for ucred struct.Jelmer Vernooij1-0/+1
2012-03-24libreplace: Add getpeereid implementation.Jelmer Vernooij6-31/+71
2012-03-24lib/util: Remove dummy wrapper for getgrgid().Jelmer Vernooij2-10/+0
2012-03-24lib/util: Remove dummy wrapper for getgrnam().Jelmer Vernooij2-7/+1
2012-03-24lib/util: Remove dummy wrapper for getpwuid().Jelmer Vernooij2-8/+2
2012-03-24lib/util: Remove dummy wrapper for getpwnam().Jelmer Vernooij2-8/+2
2012-03-24lib/util: Remove dummy wrappers for setpwent/getpwent/endpwent.Jelmer Vernooij2-22/+0
2012-03-24lib/util: Move calloc_array and memalign_array to top-level libutil.Jelmer Vernooij2-0/+32
2012-03-24lib/util: Remove prototype for removed sys_memalign.Jelmer Vernooij1-4/+0
2012-03-24lib/util: Remove trivial wrapper sys_connect() around connect().Jelmer Vernooij2-20/+0
2012-03-24replace: Move memalign() from lib/util/system.c to libreplace.Jelmer Vernooij5-38/+45
2012-03-23lib/async_req: Retry read_packet with read(2)Volker Lendecke1-0/+4
This way it will also work with pipes Autobuild-User: Volker Lendecke <vl@samba.org> Autobuild-Date: Fri Mar 23 17:31:24 CET 2012 on sn-devel-104
2012-03-23lib/tdb: fix transaction issue for HAVE_INCOHERENT_MMAP.Rusty Russell1-11/+10
We unmap the tdb on expand, the remap. But when we have INCOHERENT_MMAP (ie. OpenBSD) and we're inside a transaction, doing the expand can mean we need to read from the database to partially fill a transaction block. This fails, because if mmap is incoherent we never allow accessing the database via read/write. The solution is not to unmap and remap until we've actually written the padding at the end of the file. Reported-by: Amitay Isaacs <amitay@gmail.com> Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> Autobuild-User: Rusty Russell <rusty@rustcorp.com.au> Autobuild-Date: Fri Mar 23 02:53:15 CET 2012 on sn-devel-104
2012-03-23lib/tdb: fix test/run-die-during-transaction when HAVE_INCOHERENT_MMAP.Rusty Russell1-0/+5
Since we force mmap on, we don't intercept writes to the db, so we never see it in an inconsistent state. #ifdef over the check that we should have recovered it at least once. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2012-03-23lib/tdb: fix missing return 0 code.Rusty Russell1-1/+1
fde694274e1e5a11d1473695e7ec7a97f95d39e4 made tdb_mmap return an int, but didn't put the return 0 on the "internal db" case. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2012-03-22lib/tdb2: fix -Wcast-qual warnings.Rusty Russell15-59/+33
We use tdb_mkdata() to get rid of many of them from the tests, and explicit cast_const() in a few places. tlist_for_each() still causes a warning, but that needs to be fixed in CCAN. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> Autobuild-User: Rusty Russell <rusty@rustcorp.com.au> Autobuild-Date: Thu Mar 22 03:29:32 CET 2012 on sn-devel-104
2012-03-22lib/tdb2: fix -Wshadow warnings.Rusty Russell6-27/+27
These warnings clutter things up, even though they're of marginal utility. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2012-03-22lib/tdb2: fix OpenBSD incoherent mmap (tdb2 version)Rusty Russell3-8/+31
This handles incoherent mmaps for TDB2 native databases, by forcing mmap on for such systems, just like we did for tdb1. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2012-03-22lib/tdb2: fix OpenBSD incoherent mmap (tdb1 version)Rusty Russell3-24/+56
This is a direct port of the previous patch, to the TDB2 codebase. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2012-03-22lib/tdb: fix OpenBSD incoherent mmap.Rusty Russell4-24/+58
This comment appears in two places in the code (commit 4c6a8273c6dd3e2aeda5a63c4a62aa55bc133099 from 2001): /* * We must ensure the file is unmapped before doing this * to ensure consistency with systems like OpenBSD where * writes and mmaps are not consistent. */ But this doesn't help, because if one process is using mmap and another using pwrite, we get incoherent results. As demonstrated by OpenBSD's failure on the tdb unit tests. Rather than disable mmap on OpenBSD, we test for this issue and force mmap to be enabled. This means that we will fail on very large TDBs on 32-bit systems, but it's better than the horrendous performance penalty on every OpenBSD system. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2012-03-22lib/replace: test for incoherent mmap.Rusty Russell3-0/+97
We test for other mmap features here, and both tdb1 and tdb2 want this check. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2012-03-22lib/ccan/failtest: compile fix for OpenBSDRusty Russell3-0/+17
OpenBSD doesn't idempotent-wrap sys/mman.h, so when we #define mmap to an alternative, it fails to compile when sys/mman.h is included again. Workaround is not to #define mmap to add arguments on Open BSD. (Imported from CCAN commit e18e80fe175422d26efe689addc0f67bdba0e097) Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2012-03-22lib/ccan: namespacize ccan/list to avoid conflict with OpenIndiana's sys/list.hRusty Russell20-357/+392
CCAN includes a little utility called "namespacize" which prepends ccan_ to all public methods of a module, and fixes up any dependencies it finds. It's a little primitive, but it works here. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>