Hello community, here is the log from the commit of package tdb for openSUSE:Factory checked in at 2017-02-10 09:44:20 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/tdb (Old) and /work/SRC/openSUSE:Factory/.tdb.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "tdb" Changes: -------- --- /work/SRC/openSUSE:Factory/tdb/tdb.changes 2016-11-03 11:10:27.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.tdb.new/tdb.changes 2017-02-10 09:44:22.101403060 +0100 @@ -1,0 +2,8 @@ +Tue Jan 24 16:58:23 UTC 2017 - [email protected] + +- Update to version 1.3.12. + + Fix mutexes on FreeBSD + + Only mmap the mutex area if not already mmap'ed + + NULL out tdb->mutexes in tdb_mutex_munmap + +------------------------------------------------------------------- Old: ---- tdb-1.3.11.tar.asc tdb-1.3.11.tar.gz New: ---- tdb-1.3.12.tar.asc tdb-1.3.12.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ tdb.spec ++++++ --- /var/tmp/diff_new_pack.dAm4ZM/_old 2017-02-10 09:44:23.661182105 +0100 +++ /var/tmp/diff_new_pack.dAm4ZM/_new 2017-02-10 09:44:23.665181539 +0100 @@ -1,7 +1,7 @@ # # spec file for package tdb # -# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -43,14 +43,14 @@ %if %{with_python3} BuildRequires: python3-devel %endif -Url: http://tdb.samba.org/ -Version: 1.3.11 +Url: https://tdb.samba.org/ +Version: 1.3.12 Release: 0 Summary: Samba Trivial Database License: GPL-3.0+ Group: System/Libraries -Source: http://download.samba.org/pub/tdb/tdb-%{version}.tar.gz -Source1: http://download.samba.org/pub/tdb/tdb-%{version}.tar.asc +Source: https://download.samba.org/pub/tdb/tdb-%{version}.tar.gz +Source1: https://download.samba.org/pub/tdb/tdb-%{version}.tar.asc Source2: tdb.keyring Source4: baselibs.conf Patch0: ignore-tdb1-run-transaction-expand.diff ++++++ tdb-1.3.11.tar.gz -> tdb-1.3.12.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tdb-1.3.11/ABI/tdb-1.3.12.sigs new/tdb-1.3.12/ABI/tdb-1.3.12.sigs --- old/tdb-1.3.11/ABI/tdb-1.3.12.sigs 1970-01-01 01:00:00.000000000 +0100 +++ new/tdb-1.3.12/ABI/tdb-1.3.12.sigs 2016-11-30 16:04:25.000000000 +0100 @@ -0,0 +1,70 @@ +tdb_add_flags: void (struct tdb_context *, unsigned int) +tdb_append: int (struct tdb_context *, TDB_DATA, TDB_DATA) +tdb_chainlock: int (struct tdb_context *, TDB_DATA) +tdb_chainlock_mark: int (struct tdb_context *, TDB_DATA) +tdb_chainlock_nonblock: int (struct tdb_context *, TDB_DATA) +tdb_chainlock_read: int (struct tdb_context *, TDB_DATA) +tdb_chainlock_read_nonblock: int (struct tdb_context *, TDB_DATA) +tdb_chainlock_unmark: int (struct tdb_context *, TDB_DATA) +tdb_chainunlock: int (struct tdb_context *, TDB_DATA) +tdb_chainunlock_read: int (struct tdb_context *, TDB_DATA) +tdb_check: int (struct tdb_context *, int (*)(TDB_DATA, TDB_DATA, void *), void *) +tdb_close: int (struct tdb_context *) +tdb_delete: int (struct tdb_context *, TDB_DATA) +tdb_dump_all: void (struct tdb_context *) +tdb_enable_seqnum: void (struct tdb_context *) +tdb_error: enum TDB_ERROR (struct tdb_context *) +tdb_errorstr: const char *(struct tdb_context *) +tdb_exists: int (struct tdb_context *, TDB_DATA) +tdb_fd: int (struct tdb_context *) +tdb_fetch: TDB_DATA (struct tdb_context *, TDB_DATA) +tdb_firstkey: TDB_DATA (struct tdb_context *) +tdb_freelist_size: int (struct tdb_context *) +tdb_get_flags: int (struct tdb_context *) +tdb_get_logging_private: void *(struct tdb_context *) +tdb_get_seqnum: int (struct tdb_context *) +tdb_hash_size: int (struct tdb_context *) +tdb_increment_seqnum_nonblock: void (struct tdb_context *) +tdb_jenkins_hash: unsigned int (TDB_DATA *) +tdb_lock_nonblock: int (struct tdb_context *, int, int) +tdb_lockall: int (struct tdb_context *) +tdb_lockall_mark: int (struct tdb_context *) +tdb_lockall_nonblock: int (struct tdb_context *) +tdb_lockall_read: int (struct tdb_context *) +tdb_lockall_read_nonblock: int (struct tdb_context *) +tdb_lockall_unmark: int (struct tdb_context *) +tdb_log_fn: tdb_log_func (struct tdb_context *) +tdb_map_size: size_t (struct tdb_context *) +tdb_name: const char *(struct tdb_context *) +tdb_nextkey: TDB_DATA (struct tdb_context *, TDB_DATA) +tdb_null: dptr = 0xXXXX, dsize = 0 +tdb_open: struct tdb_context *(const char *, int, int, int, mode_t) +tdb_open_ex: struct tdb_context *(const char *, int, int, int, mode_t, const struct tdb_logging_context *, tdb_hash_func) +tdb_parse_record: int (struct tdb_context *, TDB_DATA, int (*)(TDB_DATA, TDB_DATA, void *), void *) +tdb_printfreelist: int (struct tdb_context *) +tdb_remove_flags: void (struct tdb_context *, unsigned int) +tdb_reopen: int (struct tdb_context *) +tdb_reopen_all: int (int) +tdb_repack: int (struct tdb_context *) +tdb_rescue: int (struct tdb_context *, void (*)(TDB_DATA, TDB_DATA, void *), void *) +tdb_runtime_check_for_robust_mutexes: bool (void) +tdb_set_logging_function: void (struct tdb_context *, const struct tdb_logging_context *) +tdb_set_max_dead: void (struct tdb_context *, int) +tdb_setalarm_sigptr: void (struct tdb_context *, volatile sig_atomic_t *) +tdb_store: int (struct tdb_context *, TDB_DATA, TDB_DATA, int) +tdb_storev: int (struct tdb_context *, TDB_DATA, const TDB_DATA *, int, int) +tdb_summary: char *(struct tdb_context *) +tdb_transaction_cancel: int (struct tdb_context *) +tdb_transaction_commit: int (struct tdb_context *) +tdb_transaction_prepare_commit: int (struct tdb_context *) +tdb_transaction_start: int (struct tdb_context *) +tdb_transaction_start_nonblock: int (struct tdb_context *) +tdb_transaction_write_lock_mark: int (struct tdb_context *) +tdb_transaction_write_lock_unmark: int (struct tdb_context *) +tdb_traverse: int (struct tdb_context *, tdb_traverse_func, void *) +tdb_traverse_read: int (struct tdb_context *, tdb_traverse_func, void *) +tdb_unlock: int (struct tdb_context *, int, int) +tdb_unlockall: int (struct tdb_context *) +tdb_unlockall_read: int (struct tdb_context *) +tdb_validate_freelist: int (struct tdb_context *, int *) +tdb_wipe_all: int (struct tdb_context *) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tdb-1.3.11/buildtools/wafsamba/samba_autoconf.py new/tdb-1.3.12/buildtools/wafsamba/samba_autoconf.py --- old/tdb-1.3.11/buildtools/wafsamba/samba_autoconf.py 2016-07-28 09:17:50.000000000 +0200 +++ new/tdb-1.3.12/buildtools/wafsamba/samba_autoconf.py 2016-10-07 06:45:35.000000000 +0200 @@ -708,6 +708,7 @@ testflags=True) conf.ADD_CFLAGS('-Wformat=2 -Wno-format-y2k', testflags=True) + conf.ADD_CFLAGS('-Werror=format-security -Wformat-security', testflags=True) # This check is because for ldb_search(), a NULL format string # is not an error, but some compilers complain about that. if CHECK_CFLAGS(conf, ["-Werror=format", "-Wformat=2"], ''' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tdb-1.3.11/buildtools/wafsamba/samba_perl.py new/tdb-1.3.12/buildtools/wafsamba/samba_perl.py --- old/tdb-1.3.11/buildtools/wafsamba/samba_perl.py 2015-12-10 12:01:40.000000000 +0100 +++ new/tdb-1.3.12/buildtools/wafsamba/samba_perl.py 2016-11-24 08:26:19.000000000 +0100 @@ -49,7 +49,8 @@ conf.env.PERL_LIB_INSTALL_DIR = perl_lib_install_dir perl_inc = read_perl_config_var('print "@INC"') - perl_inc.remove('.') + if '.' in perl_inc: + perl_inc.remove('.') conf.start_msg("PERL_INC: ") conf.end_msg("%s" % (perl_inc), 'GREEN') conf.env.PERL_INC = perl_inc diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tdb-1.3.11/common/mutex.c new/tdb-1.3.12/common/mutex.c --- old/tdb-1.3.11/common/mutex.c 2016-07-28 09:17:50.000000000 +0200 +++ new/tdb-1.3.12/common/mutex.c 2016-11-30 15:55:05.000000000 +0100 @@ -603,12 +603,13 @@ fail: pthread_mutexattr_destroy(&ma); fail_munmap: - tdb_mutex_munmap(tdb); if (ret == 0) { return 0; } + tdb_mutex_munmap(tdb); + errno = ret; return -1; } @@ -623,6 +624,10 @@ return 0; } + if (tdb->mutexes != NULL) { + return 0; + } + ptr = mmap(NULL, len, PROT_READ|PROT_WRITE, MAP_SHARED|MAP_FILE, tdb->fd, 0); if (ptr == MAP_FAILED) { @@ -636,13 +641,20 @@ int tdb_mutex_munmap(struct tdb_context *tdb) { size_t len; + int ret; len = tdb_mutex_size(tdb); if (len == 0) { return 0; } - return munmap(tdb->mutexes, len); + ret = munmap(tdb->mutexes, len); + if (ret == -1) { + return -1; + } + tdb->mutexes = NULL; + + return 0; } static bool tdb_mutex_locking_cached; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tdb-1.3.11/wscript new/tdb-1.3.12/wscript --- old/tdb-1.3.11/wscript 2016-08-30 08:06:06.000000000 +0200 +++ new/tdb-1.3.12/wscript 2016-11-30 15:56:00.000000000 +0100 @@ -1,7 +1,7 @@ #!/usr/bin/env python APPNAME = 'tdb' -VERSION = '1.3.11' +VERSION = '1.3.12' blddir = 'bin'
